Structured Data Capture 2.5.0 - Edition 3(STU), For Comment 2018Sep Ballot

This page is part of the Structured Data Capture FHIR IG (v2.5.0: STU 3 Ballot 1) based on FHIR v3.5.0. The current version which supercedes this version is 3.0.0. For a full list of available versions, see the Directory of published versions

The official URL for this profile is:

http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-codesystem

This profile sets expectations for use of the CodeSystem resource within the Structured Data Capture implementation guide. This includes identifying which core elements and extensions must be supported.

For the purposes of this profile, Supported means that clients SHALL be capable of processing the element/extension and use the information to control the display and information capture associated with the CodeSystem. It means that servers SHALL be capable of persisting those elements and returning them in response to requests. For systems rendering Questionnaires, these Supported elements and extensions must be supported in the rendering of allowed choices associated with questions.

This profile relies on the use of the codesystem-extensions profile which defines a number of less common properties for value sets, several of which are mandated for this profile. It also makes use of the r rendering-extensions which defines rendering information for display names and labels of codes.

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I0..*Declares the existence of and describes a code system or code system supplement
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... rendering-styleSensitive SI0..1booleanExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-styleSensitive
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url SΣ0..1uriCanonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
... identifier Σ0..*IdentifierAdditional identifier for the code system
... version Σ0..1stringBusiness version of the code system (Coding.version)
... name SΣI1..1stringName for this code system (computer friendly)
... title Σ0..1stringName for this code system (human friendly)
... status ?!SΣ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required)
... experimental SΣ0..1booleanFor testing purposes, not real usage
... date SΣ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description S1..1markdownNatural language description of the code system
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for code system (if applicable)
Binding: Jurisdiction ValueSet (extensible)
... purpose 0..1markdownWhy this code system is defined
... copyright 0..1markdownUse and/or publishing restrictions
... caseSensitive SΣ1..1booleanIf code comparison is case sensitive
... valueSet Σ0..1canonical(ValueSet)Canonical URL for value set with entire code system
... hierarchyMeaning Σ0..1codegrouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required)
... content SΣ1..1codenot-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required)
... supplements Σ0..1canonical(CodeSystem)Code System this adds designations and properties to
... count Σ0..1unsignedIntTotal concepts in the code system
... filter ΣI0..*BackboneElementFilter that can be used in a value set
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1codeCode that identifies the filter
.... description Σ0..1stringHow or why the filter is used
.... operator Σ1..*codeOperators that can be used with filter
Binding: FilterOperator (required)
.... value Σ1..1stringWhat to use for the value
... property ΣI0..*BackboneElementAdditional information supplied about each concept
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1codeIdentifies the property on the concepts, and when referred to in operations
.... uri Σ0..1uriFormal identifier for the property
.... description Σ0..1stringWhy the property is defined, and/or what it conveys
.... type Σ1..1codecode | Coding | string | integer | boolean | dateTime | decimal
Binding: PropertyType (required)
... concept SI0..*BackboneElementConcepts in the code system
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... valueset-label SI0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/valueset-label
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..0
..... url 1..1uri"http://hl7.org/fhir/StructureDefinition/valueset-label"
..... valueString S0..1stringValue of extension
...... id 0..1stringxml:id (or equivalent in JSON)
...... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
...... rendering-style I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-style
...... rendering-xhtml I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-xhtml
...... value 0..1Primitive value for string
Max Length: 1048576
.... valueset-conceptOrder SI0..1integerExtension
URL: http://hl7.org/fhir/StructureDefinition/valueset-conceptOrder
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code S1..1codeCode that identifies concept
.... display S0..1stringText to display to the user
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
..... rendering-style I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-style
..... rendering-xhtml I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-xhtml
..... value 0..1Primitive value for string
Max Length: 1048576
.... definition S0..1stringFormal definition
.... designation I0..*BackboneElementAdditional representations for the concept
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
..... language 0..1codeHuman language of the designation
Binding: Common Languages (preferred)
..... use 0..1CodingDetails how this designation would be used
Binding: DesignationUse (extensible)
..... value 1..1stringThe text value for this designation
.... property I0..*BackboneElementProperty value for the concept
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1code, Coding, string, integer, boolean, dateTime, decimalValue of the property for this concept
.... concept S0..*Unknown reference to #CodeSystem.concept
Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I0..*Declares the existence of and describes a code system or code system supplement
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (preferred)
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... rendering-styleSensitive SI0..1booleanExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-styleSensitive
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url SΣ0..1uriCanonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
... identifier Σ0..*IdentifierAdditional identifier for the code system
... version Σ0..1stringBusiness version of the code system (Coding.version)
... name SΣI1..1stringName for this code system (computer friendly)
... title Σ0..1stringName for this code system (human friendly)
... status ?!SΣ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required)
... experimental SΣ0..1booleanFor testing purposes, not real usage
... date SΣ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description S1..1markdownNatural language description of the code system
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for code system (if applicable)
Binding: Jurisdiction ValueSet (extensible)
... purpose 0..1markdownWhy this code system is defined
... copyright 0..1markdownUse and/or publishing restrictions
... caseSensitive SΣ1..1booleanIf code comparison is case sensitive
... valueSet Σ0..1canonical(ValueSet)Canonical URL for value set with entire code system
... hierarchyMeaning Σ0..1codegrouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required)
... content SΣ1..1codenot-present | example | fragment | complete | supplement
Binding: CodeSystemContentMode (required)
... supplements Σ0..1canonical(CodeSystem)Code System this adds designations and properties to
... count Σ0..1unsignedIntTotal concepts in the code system
... filter ΣI0..*BackboneElementFilter that can be used in a value set
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1codeCode that identifies the filter
.... description Σ0..1stringHow or why the filter is used
.... operator Σ1..*codeOperators that can be used with filter
Binding: FilterOperator (required)
.... value Σ1..1stringWhat to use for the value
... property ΣI0..*BackboneElementAdditional information supplied about each concept
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code Σ1..1codeIdentifies the property on the concepts, and when referred to in operations
.... uri Σ0..1uriFormal identifier for the property
.... description Σ0..1stringWhy the property is defined, and/or what it conveys
.... type Σ1..1codecode | Coding | string | integer | boolean | dateTime | decimal
Binding: PropertyType (required)
... concept SI0..*BackboneElementConcepts in the code system
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... valueset-label SI0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/valueset-label
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..0
..... url 1..1uri"http://hl7.org/fhir/StructureDefinition/valueset-label"
..... valueString S0..1stringValue of extension
...... id 0..1stringxml:id (or equivalent in JSON)
...... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
...... rendering-style I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-style
...... rendering-xhtml I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-xhtml
...... value 0..1Primitive value for string
Max Length: 1048576
.... valueset-conceptOrder SI0..1integerExtension
URL: http://hl7.org/fhir/StructureDefinition/valueset-conceptOrder
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
.... code S1..1codeCode that identifies concept
.... display S0..1stringText to display to the user
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
..... rendering-style I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-style
..... rendering-xhtml I0..1stringExtension
URL: http://hl7.org/fhir/StructureDefinition/rendering-xhtml
..... value 0..1Primitive value for string
Max Length: 1048576
.... definition S0..1stringFormal definition
.... designation I0..*BackboneElementAdditional representations for the concept
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
..... language 0..1codeHuman language of the designation
Binding: Common Languages (preferred)
..... use 0..1CodingDetails how this designation would be used
Binding: DesignationUse (extensible)
..... value 1..1stringThe text value for this designation
.... property I0..*BackboneElementProperty value for the concept
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored if unrecognized
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1code, Coding, string, integer, boolean, dateTime, decimalValue of the property for this concept
.... concept S0..*Unknown reference to #CodeSystem.concept
Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

PathNameConformanceValueSet
CodeSystem.languageLanguagepreferredCommon Languages
CodeSystem.statusPublicationStatusrequiredPublicationStatus
CodeSystem.jurisdictionJurisdictionextensibleJurisdiction ValueSet
CodeSystem.hierarchyMeaningCodeSystemHierarchyMeaningrequiredCodeSystemHierarchyMeaning
CodeSystem.contentCodeSystemContentModerequiredCodeSystemContentMode
CodeSystem.filter.operatorFilterOperatorrequiredFilterOperator
CodeSystem.property.typePropertyTyperequiredPropertyType
CodeSystem.concept.designation.languageLanguagepreferredCommon Languages
CodeSystem.concept.designation.useDesignation UseextensibleDesignationUse

Constraints

IdPathDetailsRequirements
dom-2CodeSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-4CodeSystemIf 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-3CodeSystemIf 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-6CodeSystemA resource should have narrative for robust management
: text.div.exists()
dom-5CodeSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
csd-1CodeSystemWithin a code system definition, all the codes SHALL be unique
: concept.code.combine($this.descendants().concept.code).isDistinct()
csd-0CodeSystemName 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}')
ele-1CodeSystem.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.filterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1CodeSystem.propertyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1CodeSystem.conceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1CodeSystem.concept.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.extension.valueString.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extension.valueString.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.extension.valueString.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extension.valueString.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.extension.valueString.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extension.valueString.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.display.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.display.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.display.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.display.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.display.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1CodeSystem.concept.display.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1CodeSystem.concept.designationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1CodeSystem.concept.propertyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())