SMART Base
0.3.0 - ci-build

SMART Base, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.3.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-base/ and changes regularly. See the Directory of published versions

Resource Profile: SMART Guidelines CodeSystem

Official URL: http://smart.who.int/base/StructureDefinition/SGCodeSystem Version: 0.3.0
Draft as of 2026-10-20 Computable Name: SGCodeSystem

Defines the minimum expectations for CodeSystem resources used in SMART Guidelines

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem C 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
Constraints: csd-0, csd-1, scs-1, shr-1, scs-2
CodeSystem.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CodeSystem.Slices for extension Content/Rules for all slices
CodeSystem.Slices for extension.extension:knowledgeCapability This element must be supported. C 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
CodeSystem.Slices for extension.extension:versionAlgorithm This element must be supported. 0..1 Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
CodeSystem.Slices for extension.extension:versionPolicy 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: ValueSet Artifact Version Policy (extensible): The versioning policy of the artifact
CodeSystem.Slices for extension.extension:webSource This element must be supported. 0..1 url web-source
URL: http://hl7.org/fhir/StructureDefinition/web-source
CodeSystem.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CodeSystem.url This element must be supported. This element is included in summaries. 1..1 uri Canonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
CodeSystem.version This element must be supported. This element is included in summaries. 1..1 string Business version of the code system (Coding.version)
CodeSystem.name This element must be supported. This element is included in summaries. C 1..1 string Name for this code system (computer friendly)
CodeSystem.title This element must be supported. This element is included in summaries. 1..1 string Name for this code system (human friendly)
CodeSystem.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CodeSystem.experimental This element must be supported. This element is included in summaries. 1..1 boolean For testing purposes, not real usage
CodeSystem.publisher This element must be supported. This element is included in summaries. 1..1 string Name of the publisher (organization or individual)
CodeSystem.description This element must be supported. 1..1 markdown Natural language description of the code system
CodeSystem.caseSensitive This element must be supported. This element is included in summaries. 1..1 boolean If code comparison is case sensitive
CodeSystem.hierarchyMeaning This element must be supported. This element is included in summaries. C 0..1 code grouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.
CodeSystem.content This element must be supported. This element is included in summaries. C 1..1 code not-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required): The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.
CodeSystem.concept This element must be supported. C 0..* BackboneElement Concepts in the code system
CodeSystem.concept.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.code This element must be supported. 1..1 code Code that identifies concept
CodeSystem.concept.display This element must be supported. 0..1 string Text to display to the user
CodeSystem.concept.definition This element must be supported. 0..1 string Formal definition
CodeSystem.concept.concept This element must be supported. C 0..* See concept (CodeSystem) Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CodeSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
CodeSystem.hierarchyMeaning Base required CodeSystemHierarchyMeaning 📍4.0.1 FHIR Std.
CodeSystem.content Base required CodeSystemContentMode 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
csd-0 warning CodeSystem Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
csd-1 error CodeSystem Within a code system definition, all the codes SHALL be unique concept.code.combine($this.descendants().concept.code).isDistinct()
dom-2 error CodeSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CodeSystem If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CodeSystem A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
scs-1 error CodeSystem If a codesystem contains nested concepts, it must specify hierarchyMeaning concept.concept.exists() implies hierarchyMeaning.exists()
scs-2 error CodeSystem If a codesystem contains example, fragment, or complete content, it must have at least one concept content in ( 'example' | 'fragment' | 'complete' ) implies concept.exists()
shr-1 error CodeSystem If knowledge capabilities are stated, they SHALL include shareable extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').exists() implies extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').where(value = 'shareable').exists()

This structure is derived from CRMIShareableCodeSystem

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
CodeSystem.name 1..1 string Name for this code system (computer friendly)
CodeSystem.publisher 1..1 string Name of the publisher (organization or individual)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem C 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
Constraints: csd-0, csd-1, scs-1, shr-1, scs-2
CodeSystem.id This element is included in summaries. 0..1 id Logical id of this artifact
CodeSystem.meta This element is included in summaries. 0..1 Meta Metadata about the resource
CodeSystem.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CodeSystem.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CodeSystem.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
CodeSystem.contained 0..* Resource Contained, inline Resources
CodeSystem.Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
CodeSystem.Slices for extension.extension:knowledgeCapability This element must be supported. C 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
CodeSystem.Slices for extension.extension:versionAlgorithm This element must be supported. 0..1 Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
CodeSystem.Slices for extension.extension:versionPolicy 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: ValueSet Artifact Version Policy (extensible): The versioning policy of the artifact
CodeSystem.Slices for extension.extension:webSource This element must be supported. 0..1 url web-source
URL: http://hl7.org/fhir/StructureDefinition/web-source
CodeSystem.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CodeSystem.url This element must be supported. This element is included in summaries. 1..1 uri Canonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
CodeSystem.identifier This element is included in summaries. 0..* Identifier Additional identifier for the code system (business identifier)
CodeSystem.version This element must be supported. This element is included in summaries. 1..1 string Business version of the code system (Coding.version)
CodeSystem.name This element must be supported. This element is included in summaries. C 1..1 string Name for this code system (computer friendly)
CodeSystem.title This element must be supported. This element is included in summaries. 1..1 string Name for this code system (human friendly)
CodeSystem.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CodeSystem.experimental This element must be supported. This element is included in summaries. 1..1 boolean For testing purposes, not real usage
CodeSystem.date This element is included in summaries. 0..1 dateTime Date last changed
CodeSystem.publisher This element must be supported. This element is included in summaries. 1..1 string Name of the publisher (organization or individual)
CodeSystem.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
CodeSystem.description This element must be supported. 1..1 markdown Natural language description of the code system
CodeSystem.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
CodeSystem.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for code system (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
CodeSystem.purpose 0..1 markdown Why this code system is defined
CodeSystem.copyright 0..1 markdown Use and/or publishing restrictions
CodeSystem.caseSensitive This element must be supported. This element is included in summaries. 1..1 boolean If code comparison is case sensitive
CodeSystem.valueSet This element is included in summaries. 0..1 canonical(ValueSet) Canonical reference to the value set with entire code system
CodeSystem.hierarchyMeaning This element must be supported. This element is included in summaries. C 0..1 code grouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.
CodeSystem.compositional This element is included in summaries. 0..1 boolean If code system defines a compositional grammar
CodeSystem.versionNeeded This element is included in summaries. 0..1 boolean If definitions are not stable
CodeSystem.content This element must be supported. This element is included in summaries. C 1..1 code not-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required): The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.
CodeSystem.supplements This element is included in summaries. 0..1 canonical(CodeSystem) Canonical URL of Code System this adds designations and properties to
CodeSystem.count This element is included in summaries. 0..1 unsignedInt Total concepts in the code system
CodeSystem.filter This element is included in summaries. 0..* BackboneElement Filter that can be used in a value set
CodeSystem.filter.id 0..1 string Unique id for inter-element referencing
CodeSystem.filter.extension 0..* Extension Additional content defined by implementations
CodeSystem.filter.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.filter.code This element is included in summaries. 1..1 code Code that identifies the filter
CodeSystem.filter.description This element is included in summaries. 0..1 string How or why the filter is used
CodeSystem.filter.operator This element is included in summaries. 1..* code = | is-a | descendent-of | is-not-a | regex | in | not-in | generalizes | exists
Binding: FilterOperator (required): The kind of operation to perform as a part of a property based filter.
CodeSystem.filter.value This element is included in summaries. 1..1 string What to use for the value
CodeSystem.property This element is included in summaries. 0..* BackboneElement Additional information supplied about each concept
CodeSystem.property.id 0..1 string Unique id for inter-element referencing
CodeSystem.property.extension 0..* Extension Additional content defined by implementations
CodeSystem.property.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.property.code This element is included in summaries. 1..1 code Identifies the property on the concepts, and when referred to in operations
CodeSystem.property.uri This element is included in summaries. 0..1 uri Formal identifier for the property
CodeSystem.property.description This element is included in summaries. 0..1 string Why the property is defined, and/or what it conveys
CodeSystem.property.type This element is included in summaries. 1..1 code code | Coding | string | integer | boolean | dateTime | decimal
Binding: PropertyType (required): The type of a property value.
CodeSystem.concept This element must be supported. C 0..* BackboneElement Concepts in the code system
CodeSystem.concept.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.code This element must be supported. 1..1 code Code that identifies concept
CodeSystem.concept.display This element must be supported. 0..1 string Text to display to the user
CodeSystem.concept.definition This element must be supported. 0..1 string Formal definition
CodeSystem.concept.designation 0..* BackboneElement Additional representations for the concept
CodeSystem.concept.designation.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.designation.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.designation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.designation.language 0..1 code Human language of the designation
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CodeSystem.concept.designation.use 0..1 Coding Details how this designation would be used
Binding: DesignationUse (extensible): Details of how a designation would be used.
CodeSystem.concept.designation.value 1..1 string The text value for this designation
CodeSystem.concept.property 0..* BackboneElement Property value for the concept
CodeSystem.concept.property.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.property.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.property.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.property.code 1..1 code Reference to CodeSystem.property.code
CodeSystem.concept.property.value[x] 1..1 Value of the property for this concept
CodeSystem.concept.property.value[x].valueCode code
CodeSystem.concept.property.value[x].valueCoding Coding
CodeSystem.concept.property.value[x].valueString string
CodeSystem.concept.property.value[x].valueInteger integer
CodeSystem.concept.property.value[x].valueBoolean boolean
CodeSystem.concept.property.value[x].valueDateTime dateTime
CodeSystem.concept.property.value[x].valueDecimal decimal
CodeSystem.concept.concept This element must be supported. C 0..* See concept (CodeSystem) Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CodeSystem.language Base preferred Common Languages 📍4.0.1 FHIR Std.
CodeSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
CodeSystem.jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
CodeSystem.hierarchyMeaning Base required CodeSystemHierarchyMeaning 📍4.0.1 FHIR Std.
CodeSystem.content Base required CodeSystemContentMode 📍4.0.1 FHIR Std.
CodeSystem.filter.operator Base required FilterOperator 📍4.0.1 FHIR Std.
CodeSystem.property.​type Base required PropertyType 📍4.0.1 FHIR Std.
CodeSystem.concept.designation.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
CodeSystem.concept.designation.​use Base extensible Designation Use 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
csd-0 warning CodeSystem Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
csd-1 error CodeSystem Within a code system definition, all the codes SHALL be unique concept.code.combine($this.descendants().concept.code).isDistinct()
dom-2 error CodeSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CodeSystem If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CodeSystem A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
scs-1 error CodeSystem If a codesystem contains nested concepts, it must specify hierarchyMeaning concept.concept.exists() implies hierarchyMeaning.exists()
scs-2 error CodeSystem If a codesystem contains example, fragment, or complete content, it must have at least one concept content in ( 'example' | 'fragment' | 'complete' ) implies concept.exists()
shr-1 error CodeSystem If knowledge capabilities are stated, they SHALL include shareable extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').exists() implies extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').where(value = 'shareable').exists()

This structure is derived from CRMIShareableCodeSystem

Summary

Mandatory: 2 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem C 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
Constraints: csd-0, csd-1, scs-1, shr-1, scs-2
CodeSystem.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CodeSystem.Slices for extension Content/Rules for all slices
CodeSystem.Slices for extension.extension:knowledgeCapability This element must be supported. C 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
CodeSystem.Slices for extension.extension:versionAlgorithm This element must be supported. 0..1 Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
CodeSystem.Slices for extension.extension:versionPolicy 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: ValueSet Artifact Version Policy (extensible): The versioning policy of the artifact
CodeSystem.Slices for extension.extension:webSource This element must be supported. 0..1 url web-source
URL: http://hl7.org/fhir/StructureDefinition/web-source
CodeSystem.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CodeSystem.url This element must be supported. This element is included in summaries. 1..1 uri Canonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
CodeSystem.version This element must be supported. This element is included in summaries. 1..1 string Business version of the code system (Coding.version)
CodeSystem.name This element must be supported. This element is included in summaries. C 1..1 string Name for this code system (computer friendly)
CodeSystem.title This element must be supported. This element is included in summaries. 1..1 string Name for this code system (human friendly)
CodeSystem.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CodeSystem.experimental This element must be supported. This element is included in summaries. 1..1 boolean For testing purposes, not real usage
CodeSystem.publisher This element must be supported. This element is included in summaries. 1..1 string Name of the publisher (organization or individual)
CodeSystem.description This element must be supported. 1..1 markdown Natural language description of the code system
CodeSystem.caseSensitive This element must be supported. This element is included in summaries. 1..1 boolean If code comparison is case sensitive
CodeSystem.hierarchyMeaning This element must be supported. This element is included in summaries. C 0..1 code grouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.
CodeSystem.content This element must be supported. This element is included in summaries. C 1..1 code not-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required): The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.
CodeSystem.concept This element must be supported. C 0..* BackboneElement Concepts in the code system
CodeSystem.concept.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.code This element must be supported. 1..1 code Code that identifies concept
CodeSystem.concept.display This element must be supported. 0..1 string Text to display to the user
CodeSystem.concept.definition This element must be supported. 0..1 string Formal definition
CodeSystem.concept.concept This element must be supported. C 0..* See concept (CodeSystem) Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CodeSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
CodeSystem.hierarchyMeaning Base required CodeSystemHierarchyMeaning 📍4.0.1 FHIR Std.
CodeSystem.content Base required CodeSystemContentMode 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
csd-0 warning CodeSystem Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
csd-1 error CodeSystem Within a code system definition, all the codes SHALL be unique concept.code.combine($this.descendants().concept.code).isDistinct()
dom-2 error CodeSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CodeSystem If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CodeSystem A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
scs-1 error CodeSystem If a codesystem contains nested concepts, it must specify hierarchyMeaning concept.concept.exists() implies hierarchyMeaning.exists()
scs-2 error CodeSystem If a codesystem contains example, fragment, or complete content, it must have at least one concept content in ( 'example' | 'fragment' | 'complete' ) implies concept.exists()
shr-1 error CodeSystem If knowledge capabilities are stated, they SHALL include shareable extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').exists() implies extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').where(value = 'shareable').exists()

Differential View

This structure is derived from CRMIShareableCodeSystem

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
CodeSystem.name 1..1 string Name for this code system (computer friendly)
CodeSystem.publisher 1..1 string Name of the publisher (organization or individual)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
CodeSystem C 1..1 CRMIShareableCodeSystem Declares the existence of and describes a code system or code system supplement
Constraints: csd-0, csd-1, scs-1, shr-1, scs-2
CodeSystem.id This element is included in summaries. 0..1 id Logical id of this artifact
CodeSystem.meta This element is included in summaries. 0..1 Meta Metadata about the resource
CodeSystem.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
CodeSystem.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CodeSystem.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
CodeSystem.contained 0..* Resource Contained, inline Resources
CodeSystem.Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
CodeSystem.Slices for extension.extension:knowledgeCapability This element must be supported. C 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
CodeSystem.Slices for extension.extension:versionAlgorithm This element must be supported. 0..1 Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
CodeSystem.Slices for extension.extension:versionPolicy 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: ValueSet Artifact Version Policy (extensible): The versioning policy of the artifact
CodeSystem.Slices for extension.extension:webSource This element must be supported. 0..1 url web-source
URL: http://hl7.org/fhir/StructureDefinition/web-source
CodeSystem.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
CodeSystem.url This element must be supported. This element is included in summaries. 1..1 uri Canonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
CodeSystem.identifier This element is included in summaries. 0..* Identifier Additional identifier for the code system (business identifier)
CodeSystem.version This element must be supported. This element is included in summaries. 1..1 string Business version of the code system (Coding.version)
CodeSystem.name This element must be supported. This element is included in summaries. C 1..1 string Name for this code system (computer friendly)
CodeSystem.title This element must be supported. This element is included in summaries. 1..1 string Name for this code system (human friendly)
CodeSystem.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
CodeSystem.experimental This element must be supported. This element is included in summaries. 1..1 boolean For testing purposes, not real usage
CodeSystem.date This element is included in summaries. 0..1 dateTime Date last changed
CodeSystem.publisher This element must be supported. This element is included in summaries. 1..1 string Name of the publisher (organization or individual)
CodeSystem.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
CodeSystem.description This element must be supported. 1..1 markdown Natural language description of the code system
CodeSystem.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
CodeSystem.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for code system (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.
CodeSystem.purpose 0..1 markdown Why this code system is defined
CodeSystem.copyright 0..1 markdown Use and/or publishing restrictions
CodeSystem.caseSensitive This element must be supported. This element is included in summaries. 1..1 boolean If code comparison is case sensitive
CodeSystem.valueSet This element is included in summaries. 0..1 canonical(ValueSet) Canonical reference to the value set with entire code system
CodeSystem.hierarchyMeaning This element must be supported. This element is included in summaries. C 0..1 code grouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.
CodeSystem.compositional This element is included in summaries. 0..1 boolean If code system defines a compositional grammar
CodeSystem.versionNeeded This element is included in summaries. 0..1 boolean If definitions are not stable
CodeSystem.content This element must be supported. This element is included in summaries. C 1..1 code not-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required): The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.
CodeSystem.supplements This element is included in summaries. 0..1 canonical(CodeSystem) Canonical URL of Code System this adds designations and properties to
CodeSystem.count This element is included in summaries. 0..1 unsignedInt Total concepts in the code system
CodeSystem.filter This element is included in summaries. 0..* BackboneElement Filter that can be used in a value set
CodeSystem.filter.id 0..1 string Unique id for inter-element referencing
CodeSystem.filter.extension 0..* Extension Additional content defined by implementations
CodeSystem.filter.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.filter.code This element is included in summaries. 1..1 code Code that identifies the filter
CodeSystem.filter.description This element is included in summaries. 0..1 string How or why the filter is used
CodeSystem.filter.operator This element is included in summaries. 1..* code = | is-a | descendent-of | is-not-a | regex | in | not-in | generalizes | exists
Binding: FilterOperator (required): The kind of operation to perform as a part of a property based filter.
CodeSystem.filter.value This element is included in summaries. 1..1 string What to use for the value
CodeSystem.property This element is included in summaries. 0..* BackboneElement Additional information supplied about each concept
CodeSystem.property.id 0..1 string Unique id for inter-element referencing
CodeSystem.property.extension 0..* Extension Additional content defined by implementations
CodeSystem.property.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.property.code This element is included in summaries. 1..1 code Identifies the property on the concepts, and when referred to in operations
CodeSystem.property.uri This element is included in summaries. 0..1 uri Formal identifier for the property
CodeSystem.property.description This element is included in summaries. 0..1 string Why the property is defined, and/or what it conveys
CodeSystem.property.type This element is included in summaries. 1..1 code code | Coding | string | integer | boolean | dateTime | decimal
Binding: PropertyType (required): The type of a property value.
CodeSystem.concept This element must be supported. C 0..* BackboneElement Concepts in the code system
CodeSystem.concept.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.code This element must be supported. 1..1 code Code that identifies concept
CodeSystem.concept.display This element must be supported. 0..1 string Text to display to the user
CodeSystem.concept.definition This element must be supported. 0..1 string Formal definition
CodeSystem.concept.designation 0..* BackboneElement Additional representations for the concept
CodeSystem.concept.designation.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.designation.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.designation.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.designation.language 0..1 code Human language of the designation
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
CodeSystem.concept.designation.use 0..1 Coding Details how this designation would be used
Binding: DesignationUse (extensible): Details of how a designation would be used.
CodeSystem.concept.designation.value 1..1 string The text value for this designation
CodeSystem.concept.property 0..* BackboneElement Property value for the concept
CodeSystem.concept.property.id 0..1 string Unique id for inter-element referencing
CodeSystem.concept.property.extension 0..* Extension Additional content defined by implementations
CodeSystem.concept.property.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
CodeSystem.concept.property.code 1..1 code Reference to CodeSystem.property.code
CodeSystem.concept.property.value[x] 1..1 Value of the property for this concept
CodeSystem.concept.property.value[x].valueCode code
CodeSystem.concept.property.value[x].valueCoding Coding
CodeSystem.concept.property.value[x].valueString string
CodeSystem.concept.property.value[x].valueInteger integer
CodeSystem.concept.property.value[x].valueBoolean boolean
CodeSystem.concept.property.value[x].valueDateTime dateTime
CodeSystem.concept.property.value[x].valueDecimal decimal
CodeSystem.concept.concept This element must be supported. C 0..* See concept (CodeSystem) Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
CodeSystem.language Base preferred Common Languages 📍4.0.1 FHIR Std.
CodeSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
CodeSystem.jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
CodeSystem.hierarchyMeaning Base required CodeSystemHierarchyMeaning 📍4.0.1 FHIR Std.
CodeSystem.content Base required CodeSystemContentMode 📍4.0.1 FHIR Std.
CodeSystem.filter.operator Base required FilterOperator 📍4.0.1 FHIR Std.
CodeSystem.property.​type Base required PropertyType 📍4.0.1 FHIR Std.
CodeSystem.concept.designation.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
CodeSystem.concept.designation.​use Base extensible Designation Use 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
csd-0 warning CodeSystem Name should be usable as an identifier for the module by machine processing applications such as code generation name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
csd-1 error CodeSystem Within a code system definition, all the codes SHALL be unique concept.code.combine($this.descendants().concept.code).isDistinct()
dom-2 error CodeSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error CodeSystem If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error CodeSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice CodeSystem A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
scs-1 error CodeSystem If a codesystem contains nested concepts, it must specify hierarchyMeaning concept.concept.exists() implies hierarchyMeaning.exists()
scs-2 error CodeSystem If a codesystem contains example, fragment, or complete content, it must have at least one concept content in ( 'example' | 'fragment' | 'complete' ) implies concept.exists()
shr-1 error CodeSystem If knowledge capabilities are stated, they SHALL include shareable extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').exists() implies extension('http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability').where(value = 'shareable').exists()

This structure is derived from CRMIShareableCodeSystem

Summary

Mandatory: 2 elements

 

Other representations of profile: CSV, Excel, Schematron