--- source_files: - Common/DTS.CommonCore/Enums/Channels/ChannelCodeType.cs generated_at: "2026-04-17T16:38:59.797080+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "d62e91265181d499" --- # Documentation: ChannelCodeType.cs ## 1. Purpose This module defines the enumeration and constants for channel code types within the DTS system. It establishes a standardized distinction between ISO 13499-compliant channel codes and user-defined channel codes, providing both type identification (via the `ChannelCodeType` enum) and validation constraints (via length constants) for each code type. --- ## 2. Public Interface ### Class: `ChannelEnumsAndConstants` **Namespace:** `DTS.Common.Enums.Channels` #### Constants | Name | Type | Value | Description | |------|------|-------|-------------| | `IsoCodeTypeString` | `string` | `"ISO 13499"` | String identifier for ISO-type channel codes | | `UserCodeTypeString` | `string` | `"User"` | String identifier for user-defined channel codes | | `ISO_CODE_LENGTH` | `int` | `16` | Fixed length for ISO channel codes | | `USER_CODE_LENGTH` | `int` | `50` | Maximum length for user-defined channel codes | #### Enum: `ChannelCodeType` | Value | Description | |-------|-------------| | `ISO` | Represents ISO 13499-compliant channel codes | | `User` | Represents user-defined channel codes | --- ## 3. Invariants - ISO channel codes must have a fixed length of exactly **16 characters** (`ISO_CODE_LENGTH`). - User-defined channel codes must not exceed **50 characters** (`USER_CODE_LENGTH`). - A channel code type must be either `ISO` or `User`—no other values are defined in the enumeration. - The string representation of ISO type is always `"ISO 13499"`; the string representation of User type is always `"User"`. --- ## 4. Dependencies **This module depends on:** - None (no imports or external references in source) **What depends on this module:** - Cannot be determined from source alone. The namespace `DTS.Common.Enums.Channels` suggests this is part of a core utilities library likely consumed by channel-related components throughout the system. --- ## 5. Gotchas 1. **Inconsistent naming convention:** Constants use mixed naming styles—`IsoCodeTypeString` uses PascalCase with "Iso" capitalized, while `ISO_CODE_LENGTH` uses SCREAMING_SNAKE_CASE. This may