STU 3 Ballot

This page is part of the FHIR Specification (v1.6.0: STU 3 Ballot 4). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

4.11.13.2 StructureDefinition: ShareableCodeSystem

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/shareablecodesystem

Enforces the minimum information set for the value set metadata required by HL7 and other organisations that share and publish value sets

This profile was published on [no date] as a draft by HL7.

4.11.13.2.1 Formal Views of Profile Content

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

This structure is derived from CodeSystem.

Summary

Mandatory: 12 elements

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I1..1A set of codes drawn from one or more code systems
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
csd-1: Within a code system definition, all the codes SHALL be unique
... 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 (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url 1..1uriGlobally unique logical identifier for code system (Coding.system)
... identifier 0..1IdentifierAdditional identifier for the code system (e.g. HL7 v2 / CDA)
... version 1..1stringLogical identifier for this version (Coding.version)
... name 1..1stringInformal name for this code system
... status ?!1..1codedraft | active | retired
Binding: ConformanceResourceStatus (required)
... experimental 1..1booleanIf for testing purposes, not real usage
... publisher 1..1stringName of the publisher (organization or individual)
... contact 0..*BackboneElementContact details of the publisher
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name 0..1stringName of an individual to contact
.... telecom 0..*ContactPointContact details for individual or publisher
... date 0..1dateTimeDate for given status
... description 1..1markdownHuman language description of the code system
... useContext 0..*CodeableConceptContent intends to support these contexts
Binding: Context of Use ValueSet (extensible)
... requirements 0..1markdownWhy needed
... copyright 0..1stringUse and/or publishing restrictions
... caseSensitive 1..1booleanIf code comparison is case sensitive
... valueSet 0..1uriCanonical URL for value set with entire code system
... hierarchyMeaning 0..1codegrouped-by | subsumes | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required)
... compositional 0..1booleanIf code system defines a post-composition grammar
... versionNeeded 0..1booleanIf definitions are not stable
... content 1..1codenot-present | examplar | fragment | complete
Binding: CodeSystemContentMode (required)
... count 0..1unsignedIntTotal concepts in the code system
... filter 0..*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
.... 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 0..*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
.... 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
Binding: PropertyType (required)
... concept 1..*BackboneElementConcepts in the code system
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... code 1..1codeCode that identifies concept
.... display 1..1stringText to display to the user
.... definition 1..1stringFormal definition
.... designation 0..*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
..... language 0..1codeHuman language of the designation
Binding: Common Languages (extensible)
..... use 0..1CodingDetails how this designation would be used
Binding: Designation Use (extensible)
..... value 1..1stringThe text value for this designation
.... property 0..*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
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1code, Coding, string, integer, boolean, dateTimeValue of the property for this concept
.... concept 0..*Unknown reference to #CodeSystem:shareablecodesystem.concept
Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

todo

This structure is derived from CodeSystem.

Summary

Mandatory: 12 elements

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I1..1A set of codes drawn from one or more code systems
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-1: If the resource is contained in another resource, it SHALL NOT contain any narrative
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
csd-1: Within a code system definition, all the codes SHALL be unique
... 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 (extensible)
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url 1..1uriGlobally unique logical identifier for code system (Coding.system)
... identifier 0..1IdentifierAdditional identifier for the code system (e.g. HL7 v2 / CDA)
... version 1..1stringLogical identifier for this version (Coding.version)
... name 1..1stringInformal name for this code system
... status ?!1..1codedraft | active | retired
Binding: ConformanceResourceStatus (required)
... experimental 1..1booleanIf for testing purposes, not real usage
... publisher 1..1stringName of the publisher (organization or individual)
... contact 0..*BackboneElementContact details of the publisher
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... name 0..1stringName of an individual to contact
.... telecom 0..*ContactPointContact details for individual or publisher
... date 0..1dateTimeDate for given status
... description 1..1markdownHuman language description of the code system
... useContext 0..*CodeableConceptContent intends to support these contexts
Binding: Context of Use ValueSet (extensible)
... requirements 0..1markdownWhy needed
... copyright 0..1stringUse and/or publishing restrictions
... caseSensitive 1..1booleanIf code comparison is case sensitive
... valueSet 0..1uriCanonical URL for value set with entire code system
... hierarchyMeaning 0..1codegrouped-by | subsumes | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required)
... compositional 0..1booleanIf code system defines a post-composition grammar
... versionNeeded 0..1booleanIf definitions are not stable
... content 1..1codenot-present | examplar | fragment | complete
Binding: CodeSystemContentMode (required)
... count 0..1unsignedIntTotal concepts in the code system
... filter 0..*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
.... 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 0..*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
.... 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
Binding: PropertyType (required)
... concept 1..*BackboneElementConcepts in the code system
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
.... code 1..1codeCode that identifies concept
.... display 1..1stringText to display to the user
.... definition 1..1stringFormal definition
.... designation 0..*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
..... language 0..1codeHuman language of the designation
Binding: Common Languages (extensible)
..... use 0..1CodingDetails how this designation would be used
Binding: Designation Use (extensible)
..... value 1..1stringThe text value for this designation
.... property 0..*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
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1code, Coding, string, integer, boolean, dateTimeValue of the property for this concept
.... concept 0..*Unknown reference to #CodeSystem:shareablecodesystem.concept
Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

XML Template

JSON Template

todo

 

Other representations of profile: Schematron

4.11.13.2.2 Terminology Bindings

PathNameConformanceValueSet
CodeSystem.languageCommon LanguagesextensibleCommon Languages
CodeSystem.statusConformanceResourceStatusrequiredConformanceResourceStatus
CodeSystem.useContextContext of Use ValueSetextensibleContext of Use ValueSet
CodeSystem.hierarchyMeaningCodeSystemHierarchyMeaningrequiredCodeSystemHierarchyMeaning
CodeSystem.contentCodeSystemContentModerequiredCodeSystemContentMode
CodeSystem.filter.operatorFilterOperatorrequiredFilterOperator
CodeSystem.property.typePropertyTyperequiredPropertyType
CodeSystem.concept.designation.languageCommon LanguagesextensibleCommon Languages
CodeSystem.concept.designation.useDesignation UseextensibleDesignation Use

4.11.13.2.3 Constraints

IdPathDetailsRequirements
dom-2CodeSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
XPath: not(parent::f:contained and f:contained)
dom-1CodeSystemIf the resource is contained in another resource, it SHALL NOT contain any narrative
XPath: not(parent::f:contained and f:text)
dom-4CodeSystemIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
XPath: not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))
dom-3CodeSystemIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
XPath: not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))
csd-1CodeSystemWithin a code system definition, all the codes SHALL be unique
XPath: count(distinct-values(descendant::f:concept/f:code/@value))=count(descendant::f:concept)
.