8 Encoding of Coded Entry Data

The primary method of incorporating coded entry data in DICOM IODs is the Code Sequence Attribute. Code Sequence Attributes are encoded as a Sequence of Items using a macro which is described in this section. These Attributes typically include the string "Code Sequence" in the Attribute Name. Their purpose is to encode terms by using codes from coding schemes.

Note: In this Standard, Code Sequence Attributes are defined for a variety of concepts, for example: Primary Anatomic Structure Sequence (0008,2228) and other Attributes to describe anatomy; and Intervention Drug Code Sequence (0018,0029), to document administration of drugs that have special significance in Imaging Procedures.

Each Item of a Code Sequence Attribute contains the triplet of Coding Scheme Designator, the Code Value, and Code Meaning. Other optional and conditional attributes may also be present.

For any particular Code Sequence Attributes, the range of codes that may be used for that attribute (the Value Set) may be suggested or constrained by specification of a Context Group. The Module or Template in which the attribute is used will specify whether or not the context group is baseline or defined. A Baseline Context Group lists codes for terms which are suggested and may be used, but are not required to be used. A Defined Context Group lists codes for terms which shall be used if the term is used.

Context Groups are defined in a Mapping Resource, such as the DICOM Content Mapping Resource (DCMR) specified in PS 3.16. Context Groups consist of lists of contextually related coded concepts, including the Code Value (0008,0100) and Coding Scheme Designator (0008,0102). Each concept is unique within the Context Group and identified by its Code Value (0008,0100) and Coding Scheme Designator (0008,0102). The Context Group specification identifies whether it is extensible, i.e., whether it may be modified in an Application to use additional terms (see PS 3.16). Whether a Context Group is used as a Baseline or Defined Context Group is defined not in the mapping resource, but rather in the Template or Module in which the Code Sequence Attribute is used.

Context Groups are identified by labels referred to as Context Identifiers (CID). Formally, the Context Identifier specifies the context of use, not the specific list of coded values selected for that context of use in the Context Group. The set of values specified in the Standard for a particular context may change over time, and set of values used by an Application Entity for a particular context may include a local or private extension beyond the Standard value set.

Notes: 1. A specific set of coded values used by an Application Entity is therefore identified by the Mapping Resource Identifier, plus the Context Identifier, plus the Context Group Version, plus the identifiers for any private extension.

2. The use by an Application Entity of coded terms not in the Standard specified Context Group does not require the explicit identification of a private extension. The Application Entity is then the implicit source of the extension.

3. For the purpose of harmonization with HL7 vocabulary concepts, Context Groups are equivalent to HL7 Value Sets.

8.1 Code Value

The Code Value (0008,0100) is an identifier that is unambiguous within the Coding Scheme denoted by Coding Scheme Designator (0008,0102) and Coding Scheme Version (0008,0103).

Note: The Code Value is typically not a natural language string, e.g. “T-04000”.

8.2 Coding Scheme Designator and Coding Scheme Version

The attribute Coding Scheme Designator (0008,0102) identifies the coding scheme in which the code for a term is defined. Standard coding scheme designators used in DICOM information interchange are listed in PS 3.16. Other coding scheme designators, for both private and public coding schemes, may be used. Further identification of the coding scheme designators used in a SOP Instance may be provided in the Coding Scheme Identification Sequence (0008,0110) (see Section C.12).

Notes: 1. Typical coding schemes used in DICOM include “DCM” for DICOM defined codes, “SRT” for SNOMED, and “LN” for LOINC. See PS3.16 “Coding Schemes”.

2. Coding scheme designators beginning with “99” and the coding scheme designator “L” are defined in HL7 V2 to be private or local coding schemes.

3. Most IODs that define the use of coded terms provide for the use of private codes and coding schemes through replacement of Baseline Context Groups or extension of Defined Context Groups. Systems supporting such private code use must provide a mechanism for the configuration of sets of Coding Scheme Designator, Code Value, and Code Meaning to support interoperation of the private codes with other systems.

4. It is highly recommended that local or non-standard coding schemes be identified in the Coding Scheme Identification Sequence.

The attribute Coding Scheme Version (0008,0103) may be used to identify the version of a coding scheme if necessary to resolve ambiguity in the Code Value (0008,0100) or Code Meaning (0008,0104). Coding Scheme Version (0008,0103) is not required for backward-compatible revisions of a coding scheme, as the Coding Scheme Designator (0008,0102) identifies the coding scheme as a whole as currently published by the responsible organization.

Notes: 1. See PS3.16 for a discussion of SNOMED Coding Scheme Designators 99SDM, SNM3, and SRT.

2. ICD-10, for example, is not a backward-compatible revision of ICD-9, and hence it has a different Coding Scheme Designator, not simply a different Coding Scheme Version.

8.3 Code Meaning

The Code Meaning (0008,0104) is text which has meaning to a human and which conveys the meaning of the term defined by the combination of Code Value and Coding Scheme Designator. Though such a meaning can be “looked up” in the dictionary for the coding scheme, it is encoded for the convenience of applications that do not have access to such a dictionary.

It should be noted that for a particular Coding Scheme Designator (0008,0102) and Code Value (0008,0100), several alternative values for Code Meaning (0008,0104) may be defined. These may be synonyms in the same language or translations of the Coding Scheme into other languages. Hence the value of Code Meaning (0008,0104) shall never be used as a key, index or decision value, rather the combination of Coding Scheme Designator (0008,0102) and Code Value (0008,0100) may be used. Code Meaning (0008,0104) is a purely annotative, descriptive Attribute.

This does not imply that Code Meaning (0008,0104) can be filled with arbitrary free text. Available values from the Coding Scheme or translation in the chosen language shall be used.

8.4 Mapping Resource

The value of Mapping Resource (0008,0105) denotes the message/terminology Mapping Resource that specifies the Context Group that specifies the Value Set. The Defined Terms for the value of Mapping Resource (0008,0105) shall be:

“DCMR”= “DICOM Content Mapping Resource”,

"SDM"= "SNOMED DICOM Microglossary" (Retired).

PS 3.16 specifies the DICOM Content Mapping Resource (DCMR).

Note: Unless otherwise specified, the DCMR is the source of all Context Groups and Templates specified in this Standard.

8.5 Context Group Version

Context Group Version (0008,0106) conveys the version of the Context Group identified by Context Identifier (0008,010F). This Attribute uses VR DT, but for Context Groups defined in PS3.16 the precision of Context Group Version is limited to the day, and the time zone offset is not used.

8.6 Context Identifier and Context UID

The value of Context Identifier (0008,010F) identifies the Context Group defined by Mapping Resource (0008,0105) from which the values of Code Value (0008,0100) and Code Meaning (0008,0104) were selected , or to which the Code Value (0008,0100) and Code Meaning (0008,0104) have been added as a private Context Group extension (see Section 8.7). The Context Identifier Attribute uses VR CS, and for Context Groups defined in PS3.16 the value shall be the Context Group Identifier as a string of digits without leading zeros, and does not include the string “CID”.

The value of Context UID (0008,0117) uniquely identifies the Context Group. See PS 3.6.

Note: Privately defined Context Groups are not identified by Context Identifier and Mapping Resource.

8.7 Context Group Extensions

Context Group Extension Flag (0008,010B) may be used to designate a Code Value/Code Meaning pair as a selection from a private extension of a Context Group. If the Context Group Extension Flag is present, and has a value of “Y”, Context Group Extension Creator UID (0008,010D) shall be used to identify the person or organization who created the extension to the Context Group. Context Group Local Version (0008,0107) conveys an implementation-specific private version DateTime of a Context Group that contains private extensions

Notes: 1. These Attributes provide the means for implementations to extend code sets conveniently, while preserving referential integrity with respect to the original Context Group Version.

2. The locally-defined (private) value of Context Group Local Version (0008,0107) typically would be a more recent date than the standard value of Context Group Version (0008,0106) specified in the standard message/terminology Mapping Resource that defines the Context Group.

8.8 Standard Attribute Sets for Code Sequence Attributes

Table 8.8-1 specifies the default set of Attributes encapsulated in the Items of Code Sequence Attributes. These Attributes comprise the Code Sequence Macro.

Note: The instruction “ Include ‘Code Sequence Macro’ Table 8.8-1” may be used in an Information Object Definition as a concise way to indicate that the attributes of Table 8.8-1 are included in the specification of the Attribute Set of a Sequence of items. Additional constraints on the Code Sequence Data Element (such as a Context Group that defines the value set) may be appended to the “ Include ‘Code Sequence Macro’ Table 8.8-1” instruction.

The default specifications of this Section are overridden within the scope of a Sequence Item or Code Sequence Attribute or IOD by corresponding specifications defined within the scope of that Sequence Item or Code Sequence Attribute or IOD. Additional Attributes may also be specified by the instantiation of the macro.

The Basic Coded Entry Attributes fully define a Coded Entry. If it is desired to convey the list from which a code has been chosen, then the optional Enhanced Encoding Mode Attributes may also be sent.

Table 8.8-1 Common Attribute Set for Code Sequence Attributes(Invoked as “Code Sequence Macro”)

Attribute Name Tag Type Attribute Description
BASIC CODED ENTRY ATTRIBUTES
Code Value (0008,0100) 1 See Section 8.1.
Coding Scheme Designator (0008,0102) 1 See Section 8.2.
Coding Scheme Version (0008,0103) 1C See Section 8.2. Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously. May be present otherwise.
Code Meaning (0008,0104) 1 See Section 8.3.
ENHANCED ENCODING MODE
Context Identifier (0008,010F) 3 See Section 8.6.
Context UID (0008,0117) 3 See Section 8.6.
Mapping Resource (0008,0105) 1C See Section 8.4. Required if Context Identifier (0008,010F) is present.
Context Group Version (0008,0106) 1C See Section 8.5. Required if Context Identifier (0008,010F) is present.
Context Group Extension Flag (0008,010B) 3 Indicates whether the Code Value/Coding Scheme/Code Meaning is selected from a private extension of the Context Group identified in Context Identifier (0008,010F). See Section 8.7 of this Part. Enumerated Values: “Y”, ”N”
Context Group Local Version (0008,0107) 1C See Section 8.7. Required if the value of Context Group Extension Flag (0008,010B) is "Y". .
Context Group Extension Creator UID (0008,010D) 1C Identifies the person or organization who created an extension to the Context Group. See Section 8.7. Required if the value of Context Group Extension Flag (0008,010B) is "Y".