Canonical Resource Management Infrastructure Implementation Guide
1.0.0 - STU1 International flag

This page is part of the Canonical Resource Management Infrastructure Implementation Guide (v1.0.0: STU1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: CRMI Shareable NamingSystem

Official URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-shareablenamingsystem Version: 1.0.0
Standards status: Trial-use Maturity Level: 1 Computable Name: CRMIShareableNamingSystem
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.42.53

Enforces the minimum information set for the naming system metadata required by HL7 and other organizations that share and publish naming systems

Usage:

Formal Views of Profile Content

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

This structure is derived from NamingSystem

NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem 1..1 NamingSystem System of unique identification
... Slices for extension Content/Rules for all slices
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact

.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... name S 1..1 string Name for this naming system (computer friendly)
... status S 1..1 code draft | active | retired | unknown
... description S 1..1 markdown Natural language description of the naming system

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem C 1..1 NamingSystem System of unique identification
nsd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
nsd-1: Root systems cannot have uuid identifiers
nsd-2: Can't have more than one preferred identifier for a type
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 3..* Extension Extension
Slice: Unordered, Open by value:url
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact


.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... kind Σ 1..1 code codesystem | identifier | root
Binding: NamingSystemType (required): Identifies the purpose of the naming system.

... date Σ 1..1 dateTime Date last changed
... publisher SΣ 0..1 string Name of the publisher (organization or individual)
... description S 1..1 markdown Natural language description of the naming system
... uniqueId Σ 1..* BackboneElement Unique identifiers used for system
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 code oid | uuid | uri | other
Binding: NamingSystemIdentifierType (required): Identifies the style of unique identifier used to identify a namespace.

.... value Σ 1..1 string The unique identifier

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
NamingSystem.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
NamingSystem.kindrequiredNamingSystemType
http://hl7.org/fhir/ValueSet/namingsystem-type|4.0.1
from the FHIR Standard
NamingSystem.uniqueId.typerequiredNamingSystemIdentifierType
http://hl7.org/fhir/ValueSet/namingsystem-identifier-type|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorNamingSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorNamingSystemIf 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-4errorNamingSystemIf 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-5errorNamingSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceNamingSystemA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
nsd-0warningNamingSystemName 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}')
nsd-1errorNamingSystemRoot systems cannot have uuid identifiers
: kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2errorNamingSystemCan't have more than one preferred identifier for a type
: uniqueId.where(preferred = true).select(type).isDistinct()
NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem C 1..1 NamingSystem System of unique identification
nsd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
nsd-1: Root systems cannot have uuid identifiers
nsd-2: Can't have more than one preferred identifier for a type
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 3..* Extension Extension
Slice: Unordered, Open by value:url
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact


.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... name SΣC 1..1 string Name for this naming system (computer friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... kind Σ 1..1 code codesystem | identifier | root
Binding: NamingSystemType (required): Identifies the purpose of the naming system.

... date Σ 1..1 dateTime Date last changed
... publisher SΣ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... responsible 0..1 string Who maintains system namespace?
... type 0..1 CodeableConcept e.g. driver, provider, patient, bank etc.
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

... description S 1..1 markdown Natural language description of the naming system
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for naming system (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... usage 0..1 string How/where is it used
... uniqueId Σ 1..* BackboneElement Unique identifiers used for system
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 code oid | uuid | uri | other
Binding: NamingSystemIdentifierType (required): Identifies the style of unique identifier used to identify a namespace.

.... value Σ 1..1 string The unique identifier
.... preferred 0..1 boolean Is this the id that should be used for this type
.... comment 0..1 string Notes about identifier usage
.... period 0..1 Period When is identifier valid?

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
NamingSystem.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
NamingSystem.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
NamingSystem.kindrequiredNamingSystemType
http://hl7.org/fhir/ValueSet/namingsystem-type|4.0.1
from the FHIR Standard
NamingSystem.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
NamingSystem.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
NamingSystem.uniqueId.typerequiredNamingSystemIdentifierType
http://hl7.org/fhir/ValueSet/namingsystem-identifier-type|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorNamingSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorNamingSystemIf 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-4errorNamingSystemIf 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-5errorNamingSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceNamingSystemA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
nsd-0warningNamingSystemName 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}')
nsd-1errorNamingSystemRoot systems cannot have uuid identifiers
: kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2errorNamingSystemCan't have more than one preferred identifier for a type
: uniqueId.where(preferred = true).select(type).isDistinct()

Differential View

This structure is derived from NamingSystem

NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem 1..1 NamingSystem System of unique identification
... Slices for extension Content/Rules for all slices
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact

.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... name S 1..1 string Name for this naming system (computer friendly)
... status S 1..1 code draft | active | retired | unknown
... description S 1..1 markdown Natural language description of the naming system

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem C 1..1 NamingSystem System of unique identification
nsd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
nsd-1: Root systems cannot have uuid identifiers
nsd-2: Can't have more than one preferred identifier for a type
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 3..* Extension Extension
Slice: Unordered, Open by value:url
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact


.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... kind Σ 1..1 code codesystem | identifier | root
Binding: NamingSystemType (required): Identifies the purpose of the naming system.

... date Σ 1..1 dateTime Date last changed
... publisher SΣ 0..1 string Name of the publisher (organization or individual)
... description S 1..1 markdown Natural language description of the naming system
... uniqueId Σ 1..* BackboneElement Unique identifiers used for system
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 code oid | uuid | uri | other
Binding: NamingSystemIdentifierType (required): Identifies the style of unique identifier used to identify a namespace.

.... value Σ 1..1 string The unique identifier

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
NamingSystem.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
NamingSystem.kindrequiredNamingSystemType
http://hl7.org/fhir/ValueSet/namingsystem-type|4.0.1
from the FHIR Standard
NamingSystem.uniqueId.typerequiredNamingSystemIdentifierType
http://hl7.org/fhir/ValueSet/namingsystem-identifier-type|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorNamingSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorNamingSystemIf 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-4errorNamingSystemIf 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-5errorNamingSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceNamingSystemA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
nsd-0warningNamingSystemName 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}')
nsd-1errorNamingSystemRoot systems cannot have uuid identifiers
: kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2errorNamingSystemCan't have more than one preferred identifier for a type
: uniqueId.where(preferred = true).select(type).isDistinct()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. NamingSystem C 1..1 NamingSystem System of unique identification
nsd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
nsd-1: Root systems cannot have uuid identifiers
nsd-2: Can't have more than one preferred identifier for a type
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 3..* Extension Extension
Slice: Unordered, Open by value:url
.... knowledgeCapability S 0..* code shareable | computable | publishable | executable
URL: http://hl7.org/fhir/StructureDefinition/cqf-knowledgeCapability
Binding: KnowledgeCapability (required)
.... url S 1..1 uri Canonical identifier for this artifact, represented as a URI (globally unique)
URL: http://hl7.org/fhir/StructureDefinition/artifact-url
.... version S 1..1 string Business version of the artifact
URL: http://hl7.org/fhir/StructureDefinition/artifact-version
.... versionAlgorithm S 0..1 string, Coding How to compare versions
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionAlgorithm
Binding: VersionAlgorithm (extensible)
.... versionPolicy S 0..1 CodeableConcept metadata | strict
URL: http://hl7.org/fhir/StructureDefinition/artifact-versionPolicy
Binding: Artifact Version Policy (extensible): The versioning policy of the artifact


.... title S 1..1 string Name for this artifact (human friendly)
URL: http://hl7.org/fhir/StructureDefinition/artifact-title
.... experimental S 0..1 boolean For testing purposes, not real usage
URL: http://hl7.org/fhir/StructureDefinition/artifact-experimental
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... name SΣC 1..1 string Name for this naming system (computer friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... kind Σ 1..1 code codesystem | identifier | root
Binding: NamingSystemType (required): Identifies the purpose of the naming system.

... date Σ 1..1 dateTime Date last changed
... publisher SΣ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... responsible 0..1 string Who maintains system namespace?
... type 0..1 CodeableConcept e.g. driver, provider, patient, bank etc.
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

... description S 1..1 markdown Natural language description of the naming system
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for naming system (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... usage 0..1 string How/where is it used
... uniqueId Σ 1..* BackboneElement Unique identifiers used for system
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type Σ 1..1 code oid | uuid | uri | other
Binding: NamingSystemIdentifierType (required): Identifies the style of unique identifier used to identify a namespace.

.... value Σ 1..1 string The unique identifier
.... preferred 0..1 boolean Is this the id that should be used for this type
.... comment 0..1 string Notes about identifier usage
.... period 0..1 Period When is identifier valid?

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
NamingSystem.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
NamingSystem.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
NamingSystem.kindrequiredNamingSystemType
http://hl7.org/fhir/ValueSet/namingsystem-type|4.0.1
from the FHIR Standard
NamingSystem.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
NamingSystem.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
NamingSystem.uniqueId.typerequiredNamingSystemIdentifierType
http://hl7.org/fhir/ValueSet/namingsystem-identifier-type|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorNamingSystemIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorNamingSystemIf 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-4errorNamingSystemIf 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-5errorNamingSystemIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceNamingSystemA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
nsd-0warningNamingSystemName 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}')
nsd-1errorNamingSystemRoot systems cannot have uuid identifiers
: kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2errorNamingSystemCan't have more than one preferred identifier for a type
: uniqueId.where(preferred = true).select(type).isDistinct()

 

Other representations of profile: CSV, Excel, Schematron