class BaseType
An enumeration class that defines constants representing different base types for SharePoint lists.
/tf/active/vicechatdev/SPFCsync/venv/lib64/python3.11/site-packages/office365/sharepoint/lists/base_type.py
1 - 22
simple
Purpose
BaseType serves as a constant enumeration to specify the base type category for SharePoint lists. It provides named integer constants that identify whether a list is a generic list, document library, discussion board, survey, issue tracker, or other specialized list type. This class is used for type identification and categorization in SharePoint list operations.
Source Code
class BaseType:
"""Specifies the base type for a list."""
None_ = -1
GenericList = 0
"""Specifies a base type for lists that do not correspond to another base type in this enumeration."""
DocumentLibrary = 1
"""Specifies a base type for a document library."""
Unused = 2
"""Reserved. MUST NOT be used."""
DiscussionBoard = 3
"""Specifies a base type that SHOULD NOT be used, but MAY<2> be used for a discussion board."""
Survey = 4
"""Enumeration whose values specify a base type for a survey list."""
Issue = 5
"""Specifies a base type for an issue tracking list."""
Parameters
| Name | Type | Default | Kind |
|---|---|---|---|
bases |
- | - |
Parameter Details
bases: Implicit parameter from class definition. This class does not define an __init__ method and uses default object initialization, so no explicit parameters are required for instantiation.
Return Value
Instantiating BaseType() returns a BaseType object instance. However, this class is designed to be used as a namespace for constants rather than being instantiated. The class attributes (None_, GenericList, DocumentLibrary, etc.) return integer values representing different list base types.
Class Interface
Attributes
| Name | Type | Description | Scope |
|---|---|---|---|
None_ |
int | Represents an undefined or null base type with value -1. Uses underscore suffix because 'None' is a Python keyword. | class |
GenericList |
int | Specifies a base type (value 0) for lists that do not correspond to another specific base type in this enumeration. | class |
DocumentLibrary |
int | Specifies a base type (value 1) for a document library list. | class |
Unused |
int | Reserved value (2) that must not be used according to specification. | class |
DiscussionBoard |
int | Specifies a base type (value 3) for a discussion board. Should not be used but may be used in certain contexts. | class |
Survey |
int | Specifies a base type (value 4) for a survey list. | class |
Issue |
int | Specifies a base type (value 5) for an issue tracking list. | class |
Usage Example
# Access base type constants directly from the class
from base_type import BaseType
# Check if a list type is a document library
list_type = BaseType.DocumentLibrary
if list_type == BaseType.DocumentLibrary:
print("This is a document library")
# Use in conditional logic
def process_list(base_type):
if base_type == BaseType.GenericList:
return "Processing generic list"
elif base_type == BaseType.Survey:
return "Processing survey"
elif base_type == BaseType.Issue:
return "Processing issue tracker"
else:
return "Unknown type"
result = process_list(BaseType.Survey)
print(result) # Output: Processing survey
# Get all available base types
base_types = {
'None': BaseType.None_,
'GenericList': BaseType.GenericList,
'DocumentLibrary': BaseType.DocumentLibrary,
'Survey': BaseType.Survey,
'Issue': BaseType.Issue
}
Best Practices
- Do not instantiate this class; use it as a namespace for accessing constant values directly via class attributes (e.g., BaseType.DocumentLibrary).
- Avoid using BaseType.Unused (value 2) as it is explicitly reserved and must not be used according to the specification.
- Be cautious with BaseType.DiscussionBoard (value 3) as the documentation indicates it should not be used but may be used in certain contexts.
- Use BaseType.None_ (with underscore) to represent the 'None' value (-1) since 'None' is a Python keyword.
- This class follows an enumeration pattern but is not using Python's enum.Enum; consider using enum.IntEnum for better type safety in modern Python code.
- The integer values are part of a specification (likely SharePoint API) and should not be modified.
- When comparing list types, use identity comparison with the class attributes rather than hardcoding integer values for better code maintainability.
Similar Components
AI-powered semantic similarity - components with related functionality:
-
class PageType 70.0% similar
-
class SiteType 69.4% similar
-
class FileSystemObjectType 65.4% similar
-
class RoleType 64.8% similar
-
class CalendarType 64.5% similar