HL7 FHIR® Implementation Guide: Electronic Case Reporting (eCR) - US Realm
2.0.0 - STU 2

This page is part of the electronic Case Reporting (eCR) (v2.0.0: STU 2 on FHIR R4) based on FHIR R4. The current version which supercedes this version is 2.1.0. For a full list of available versions, see the Directory of published versions

Resource Profile: US Public Health CodeSystem

Defining URL:http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-codesystem
Version:2.0.0
Name:USPublicHealthCodeSystem
Title:US Public Health CodeSystem
Status:Active as of 1/18/22 12:57 PM
Definition:

This profile describes the US Public Health CodeSystem.

Publisher:HL7 Public Health Work Group (http://www.hl7.org/Special/committees/pher/index.cfm)
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-codesystem

Formal Views of Profile Content

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

This structure is derived from CodeSystem

Summary

Must-Support: 2 elements

Extensions

This structure refers to these extensions:

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I0..*CodeSystemUS Public Health CodeSystem
... id Σ0..1stringLogical 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: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

... text 0..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 Σ0..1uriCanonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
... identifier Σ0..*IdentifierAdditional identifier for the code system (business identifier)
... version Σ0..1stringBusiness version of the code system (Coding.version)
... name ΣI0..1stringName for this code system (computer friendly)
... title Σ0..1stringName for this code system (human friendly)
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description 0..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): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this code system is defined
... copyright 0..1markdownUse and/or publishing restrictions
... caseSensitive Σ0..1booleanIf code comparison is case sensitive
... valueSet Σ0..1canonical(ValueSet)Canonical reference to the value set with entire code system
... hierarchyMeaning Σ0..1codegrouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.

... compositional Σ0..1booleanIf code system defines a compositional grammar
... versionNeeded Σ0..1booleanIf definitions are not stable
... content Σ1..1codenot-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.

... supplements Σ0..1canonical(CodeSystem)Canonical URL of Code System this adds designations and properties to
... count Σ0..1unsignedIntTotal concepts in the code system
... filter Σ0..*BackboneElementFilter that can be used in a value set
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codeCode that identifies the filter
.... description Σ0..1stringHow or why the filter is used
.... operator Σ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.


.... value Σ1..1stringWhat to use for the value
... property SΣ0..*BackboneElementAdditional information supplied about each concept
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... us-ph-codesystem-property-binding-extension S0..1canonical()What values are allowed
URL: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-codesystem-property-binding-extension
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even 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): The type of a property value.

... concept 0..*BackboneElementConcepts in the code system
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1codeCode that identifies concept
.... display 0..1stringText to display to the user
.... definition 0..1stringFormal definition
.... designation 0..*BackboneElementAdditional representations for the concept
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... language 0..1codeHuman language of the designation
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

..... use 0..1CodingDetails how this designation would be used
Binding: DesignationUse (extensible): Details of how a designation would be used.

..... value 1..1stringThe text value for this designation
.... property 0..*BackboneElementProperty value for the concept
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1Value of the property for this concept
...... valueCodecode
...... valueCodingCoding
...... valueStringstring
...... valueIntegerinteger
...... valueBooleanboolean
...... valueDateTimedateTime
...... valueDecimaldecimal
.... concept 0..*See concept (CodeSystem)Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

This structure is derived from CodeSystem

Summary

Must-Support: 2 elements

Extensions

This structure refers to these extensions:

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CodeSystem I0..*CodeSystemUS Public Health CodeSystem
... id Σ0..1stringLogical 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: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

... text 0..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 Σ0..1uriCanonical identifier for this code system, represented as a URI (globally unique) (Coding.system)
... identifier Σ0..*IdentifierAdditional identifier for the code system (business identifier)
... version Σ0..1stringBusiness version of the code system (Coding.version)
... name ΣI0..1stringName for this code system (computer friendly)
... title Σ0..1stringName for this code system (human friendly)
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ0..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description 0..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): Countries and regions within which this artifact is targeted for use.


... purpose 0..1markdownWhy this code system is defined
... copyright 0..1markdownUse and/or publishing restrictions
... caseSensitive Σ0..1booleanIf code comparison is case sensitive
... valueSet Σ0..1canonical(ValueSet)Canonical reference to the value set with entire code system
... hierarchyMeaning Σ0..1codegrouped-by | is-a | part-of | classified-with
Binding: CodeSystemHierarchyMeaning (required): The meaning of the hierarchy of concepts in a code system.

... compositional Σ0..1booleanIf code system defines a compositional grammar
... versionNeeded Σ0..1booleanIf definitions are not stable
... content Σ1..1codenot-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.

... supplements Σ0..1canonical(CodeSystem)Canonical URL of Code System this adds designations and properties to
... count Σ0..1unsignedIntTotal concepts in the code system
... filter Σ0..*BackboneElementFilter that can be used in a value set
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codeCode that identifies the filter
.... description Σ0..1stringHow or why the filter is used
.... operator Σ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.


.... value Σ1..1stringWhat to use for the value
... property SΣ0..*BackboneElementAdditional information supplied about each concept
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... us-ph-codesystem-property-binding-extension S0..1canonical()What values are allowed
URL: http://hl7.org/fhir/us/ecr/StructureDefinition/us-ph-codesystem-property-binding-extension
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even 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): The type of a property value.

... concept 0..*BackboneElementConcepts in the code system
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code 1..1codeCode that identifies concept
.... display 0..1stringText to display to the user
.... definition 0..1stringFormal definition
.... designation 0..*BackboneElementAdditional representations for the concept
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... language 0..1codeHuman language of the designation
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.

..... use 0..1CodingDetails how this designation would be used
Binding: DesignationUse (extensible): Details of how a designation would be used.

..... value 1..1stringThe text value for this designation
.... property 0..*BackboneElementProperty value for the concept
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code 1..1codeReference to CodeSystem.property.code
..... value[x] 1..1Value of the property for this concept
...... valueCodecode
...... valueCodingCoding
...... valueStringstring
...... valueIntegerinteger
...... valueBooleanboolean
...... valueDateTimedateTime
...... valueDecimaldecimal
.... concept 0..*See concept (CodeSystem)Child Concepts (is-a/contains/categorizes)

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
CodeSystem.languagepreferredCommonLanguages
Max Binding: AllLanguages
CodeSystem.statusrequiredPublicationStatus
CodeSystem.jurisdictionextensibleJurisdiction ValueSet
CodeSystem.hierarchyMeaningrequiredCodeSystemHierarchyMeaning
CodeSystem.contentrequiredCodeSystemContentMode
CodeSystem.filter.operatorrequiredFilterOperator
CodeSystem.property.typerequiredPropertyType
CodeSystem.concept.designation.languagepreferredCommonLanguages
Max Binding: AllLanguages
CodeSystem.concept.designation.useextensibleDesignationUse

Constraints

IdGradePathDetailsRequirements
csd-0warningCodeSystemName 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-1errorCodeSystemWithin a code system definition, all the codes SHALL be unique
: concept.code.combine($this.descendants().concept.code).isDistinct()
dom-2errorCodeSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCodeSystemIf 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-4errorCodeSystemIf 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-5errorCodeSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticeCodeSystemA resource should have narrative for robust management
: text.`div`.exists()
ele-1errorCodeSystem.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.urlAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.nameAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.experimentalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.publisherAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.contactAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.useContextAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.jurisdictionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.purposeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.copyrightAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.caseSensitiveAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.valueSetAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.hierarchyMeaningAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.compositionalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.versionNeededAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.contentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.supplementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.countAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.filterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.filter.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.filter.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.filter.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.filter.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.filter.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.filter.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.filter.operatorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.filter.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.propertyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.property.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.property.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.property.extension:bindingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.property.extension:bindingMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.property.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.property.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.property.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.property.uriAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.property.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.property.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.conceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.definitionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.designationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.designation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.designation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.designation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.designation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.designation.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.designation.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.designation.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.propertyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.property.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.property.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.property.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorCodeSystem.concept.property.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorCodeSystem.concept.property.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.property.value[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorCodeSystem.concept.conceptAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())