Data Sharing Framework (DSF) Implementation Guide
2.0.0 - ci-build

Data Sharing Framework (DSF) Implementation Guide - Local Development build (v2.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: NamingSystem

Official URL: http://dsf.dev/fhir/StructureDefinition/naming-system Version: 2.0.0
Active as of 2025-11-26 Computable Name: NamingSystem

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: Filtersdoco
.. NamingSystem C 0..* NamingSystem System of unique identification
Constraints: nsd-0, nsd-1, nsd-2
... meta Σ 0..1 Meta(2.0.0) Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 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
... 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

Path Status Usage ValueSet Version Source
NamingSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
NamingSystem.kind Base required NamingSystemType 📍4.0.1 FHIR Std.
NamingSystem.uniqueId.​type Base required NamingSystemIdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error NamingSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error NamingSystem 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 NamingSystem 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 NamingSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice NamingSystem 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()
nsd-0 warning NamingSystem 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}')
nsd-1 error NamingSystem Root systems cannot have uuid identifiers kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2 error NamingSystem Can't have more than one preferred identifier for a type uniqueId.where(preferred = true).select(type).isDistinct()

This structure is derived from NamingSystem

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. NamingSystem 0..* NamingSystem System of unique identification
... meta 0..1 Meta(2.0.0) Metadata about the resource
... name 1..1 string Name for this naming system (computer friendly)
... date 1..1 dateTime Date last changed

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. NamingSystem C 0..* NamingSystem System of unique identification
Constraints: nsd-0, nsd-1, nsd-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta(2.0.0) 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
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... name ΣC 1..1 string Name for this naming system (computer friendly)
... status ?!Σ 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 Σ 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 0..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

Path Status Usage ValueSet Version Source
NamingSystem.language Base preferred Common Languages 📍4.0.1 FHIR Std.
NamingSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
NamingSystem.kind Base required NamingSystemType 📍4.0.1 FHIR Std.
NamingSystem.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
NamingSystem.jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
NamingSystem.uniqueId.​type Base required NamingSystemIdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error NamingSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error NamingSystem 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 NamingSystem 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 NamingSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice NamingSystem 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()
nsd-0 warning NamingSystem 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}')
nsd-1 error NamingSystem Root systems cannot have uuid identifiers kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2 error NamingSystem Can't have more than one preferred identifier for a type uniqueId.where(preferred = true).select(type).isDistinct()

This structure is derived from NamingSystem

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. NamingSystem C 0..* NamingSystem System of unique identification
Constraints: nsd-0, nsd-1, nsd-2
... meta Σ 0..1 Meta(2.0.0) Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 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
... 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

Path Status Usage ValueSet Version Source
NamingSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
NamingSystem.kind Base required NamingSystemType 📍4.0.1 FHIR Std.
NamingSystem.uniqueId.​type Base required NamingSystemIdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error NamingSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error NamingSystem 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 NamingSystem 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 NamingSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice NamingSystem 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()
nsd-0 warning NamingSystem 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}')
nsd-1 error NamingSystem Root systems cannot have uuid identifiers kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2 error NamingSystem Can'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 & Constraints    Filter: Filtersdoco
.. NamingSystem 0..* NamingSystem System of unique identification
... meta 0..1 Meta(2.0.0) Metadata about the resource
... name 1..1 string Name for this naming system (computer friendly)
... date 1..1 dateTime Date last changed

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. NamingSystem C 0..* NamingSystem System of unique identification
Constraints: nsd-0, nsd-1, nsd-2
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta(2.0.0) 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
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... name ΣC 1..1 string Name for this naming system (computer friendly)
... status ?!Σ 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 Σ 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 0..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

Path Status Usage ValueSet Version Source
NamingSystem.language Base preferred Common Languages 📍4.0.1 FHIR Std.
NamingSystem.status Base required PublicationStatus 📍4.0.1 FHIR Std.
NamingSystem.kind Base required NamingSystemType 📍4.0.1 FHIR Std.
NamingSystem.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
NamingSystem.jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
NamingSystem.uniqueId.​type Base required NamingSystemIdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error NamingSystem If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error NamingSystem 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 NamingSystem 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 NamingSystem If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice NamingSystem 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()
nsd-0 warning NamingSystem 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}')
nsd-1 error NamingSystem Root systems cannot have uuid identifiers kind != 'root' or uniqueId.all(type != 'uuid')
nsd-2 error NamingSystem Can't have more than one preferred identifier for a type uniqueId.where(preferred = true).select(type).isDistinct()

This structure is derived from NamingSystem

Summary

Mandatory: 2 elements

Structures

This structure refers to these other structures:

 

Other representations of profile: CSV, Excel, Schematron