DSTU2

This page is part of the FHIR Specification (v0.0.82: (v1.0.2: DSTU 1). 2). 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 R2

6.22 Resource NamingSystem - Content

This resource maintained by the
FHIR Management Group Infrastructure Work Group Maturity Level : 1 Compartments : Not linked to any defined compartments

A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a "System" used within the Identifier and Coding data types.

6.22.1 Scope and Usage

Defines a specific code system or identifier system

6.22.2 Background and Context

For discussion of policy for creating well maintained OIDs and URIs for resources, see The HL7 WIKI .

6.22.3 Resource Content

Structure

Human-readable label 1..1 Publication Date(/time) 1..1 draft | active | retired ConformanceResourceStatus ISO 3-char country code Country Who maintains string What does namingsystem identify? string Name of the publisher (Organization or individual) contact Σ 0..* Element Contact details of the publisher name Name of a individual to contact telecom Σ 0..* Use this instead
Name Flags Card. Type Description & Constraints doco
. . NamingSystem I DomainResource System of unique identification
Can't have more than one preferred identifier for a type
Can only have replacedBy if namingsystem naming system is retired
Root systems cannot have uuid or sid identifiers
. . type . name 1..1 string Human-readable label
... status ?! 1..1 code draft | active | retired
ConformanceResourceStatus ( Required )
... kind 1..1 code codesystem | identifier | root
NamingSystemType ( Required )
. . name . publisher Σ 1..1 0..1 string Name of the publisher (Organization or individual)
. . date . contact Σ 0..* dateTime BackboneElement Contact details of the publisher
. . status . . name ?! Σ 0..1 code string Name of a individual to contact
. . . . telecom ( Required ) Σ 0..* ContactPoint Contact details for individual or publisher
. . country . responsible 0..1 code string Who maintains system namespace?
. . . date ( Required ) Σ 1..1 dateTime Publication Date(/time)
. . category . type 0..1 CodeableConcept e.g. driver, provider, patient, bank etc etc.
Identifier Type Codes ( Extensible )
. . responsible . description 0..1 string What does naming system namespace? identify?
. . description . useContext Σ 0..1 0..* CodeableConcept Content intends to support these contexts
Context of Use ValueSet ( Extensible )
. . . usage 0..1 string How/where is it used
. . . uniqueId 1..* Element BackboneElement Unique identifiers used for system
. . . . type 1..1 code oid | uuid | uri | other
NamingSystemIdentifierType ( Required )
. . . . value 1..1 string The unique identifier
. . . . preferred 0..1 boolean Is this the id that should be used for this type
. . . . period 0..1 Period When is identifier valid?
. . publisher . replacedBy Σ I 0..1 Reference Σ 0..1 string ( NamingSystem ) Use this instead
ContactPoint
Contact details doco Documentation for individual or publisher replacedBy I 0..1 NamingSystem this format

UML Diagram

NamingSystem ( DomainResource ) Indicates the purpose for the namingsystem - what kinds of things does it make unique? type : code 1..1 « Identifies the purpose of the namingsystem NamingSystemType » The descriptive name of this particular identifier type or code system name : string 1..1 The date (and optionally time) when the system was registered or published date : dateTime 1..1 [1..1] Indicates whether the namingsystem naming system is "ready for use" or not (this element modifies the meaning of other elements) status : code 1..1 [1..1] « The lifecycle status of a Value Set or Concept Map Map. (Strength=Required) ConformanceResourceStatus ! » If present, indicates that Indicates the identifier or code system is principally intended purpose for use or applies to entities within the specified country. For example, the country associated with a national code naming system - what kinds of things does it make unique? country kind : code 0..1 [1..1] « Codes for identifying countries Identifies the purpose of the naming system. (Strength=Required) Country NamingSystemType ! » Categorizes a namingsystem for easier search by grouping related namingsystems The name of the individual or organization that published the naming system category publisher : CodeableConcept string 0..1 [0..1] The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision responsible : string 0..1 [0..1] The date (and optionally time) when the system was registered or published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the registration changes date : dateTime [1..1] Categorizes a naming system for easier search by grouping related naming systems type : CodeableConcept [0..1] « A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. (Strength=Extensible) Identifier Type + » Details about what the namespace identifies including scope, granularity, version labeling, etc description : string 0..1 [0..1] The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of naming systems useContext : CodeableConcept [0..*] « Indicates the countries, regions, disciplines and other aspects of use within which this artifact is targeted for use. (Strength=Extensible) Context of Use ValueSet + » Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc usage : string 0..1 The name of the individual or organization that published the naming system publisher : string 0..1 [0..1] For namingsystems naming systems that are retired, indicates the namingsystem naming system that should be used in their place (if any) replacedBy : Reference ( [0..1] « NamingSystem ) 0..1 » Contact The name of an individual to contact regarding the naming system name : string [0..1] Contact details for individual (if a name was provided) or the publisher telecom : ContactPoint [0..*] UniqueId Identifies the unique identifier scheme used for this particular identifier type : code 1..1 [1..1] « Identifies the style of unique identifier used to identify a namepace namespace. (Strength=Required) NamingSystemIdentifierType ! » The string that should be sent over the wire to identify the code system or identifier system value : string 1..1 [1..1] Indicates whether this identifier is the "preferred" identifier of this type preferred : boolean 0..1 [0..1] Identifies the period of time over which this identifier is considered appropriate to refer to the namingsystem. naming system. Outside of this window, the identifier might be non-deterministic period : Period 0..1 [0..1] Contact The name of an individual to contact regarding the naming system name : string 0..1 Contact details for individual (if Contacts to assist a name was provided) or user in finding and communicating with the publisher telecom : ContactPoint contact 0..* [0..*] Indicates how the system may be identified when referenced in electronic exchange uniqueId 1..* Contacts to assist a user in finding and communicating with the publisher contact 0..* [1..*]

XML Template

<NamingSystem xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <
 <
 <
 <
 <
 <</category>
 <
 <
 <
 <
  <
  <
  <
  <</period>
 </uniqueId>
 <

 <name value="[string]"/><!-- 1..1 Human-readable label -->
 <status value="[code]"/><!-- 1..1 draft | active | retired -->
 <kind value="[code]"/><!-- 1..1 codesystem | identifier | root -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher (Organization or individual) -->

 <contact>  <!-- 0..* Contact details of the publisher -->
  <
  <</telecom>

  <name value="[string]"/><!-- 0..1 Name of a individual to contact -->
  <telecom><!-- 0..* ContactPoint Contact details for individual or publisher --></telecom>

 </contact>
 <</replacedBy>

 <responsible value="[string]"/><!-- 0..1 Who maintains system namespace? -->
 <date value="[dateTime]"/><!-- 1..1 Publication Date(/time) -->
 <type><!-- 0..1 CodeableConcept e.g. driver,  provider,  patient, bank etc. --></type>
 <description value="[string]"/><!-- 0..1 What does naming system identify? -->
 <useContext><!-- 0..* CodeableConcept Content intends to support these contexts --></useContext>
 <usage value="[string]"/><!-- 0..1 How/where is it used -->
 <uniqueId>  <!-- 1..* Unique identifiers used for system -->
  <type value="[code]"/><!-- 1..1 oid | uuid | uri | other -->
  <value value="[string]"/><!-- 1..1 The unique identifier -->
  <preferred value="[boolean]"/><!-- 0..1 Is this the id that should be used for this type -->
  <period><!-- 0..1 Period When is identifier valid? --></period>
 </uniqueId>
 <replacedBy><!-- ?? 0..1 Reference(NamingSystem) Use this instead --></replacedBy>

</NamingSystem>

Structure

Human-readable label 1..1 Publication Date(/time) 1..1 draft | active | retired ConformanceResourceStatus ISO 3-char country code Country Who maintains string What does namingsystem identify? string Name of the publisher (Organization or individual) contact Σ 0..* Element Contact details of the publisher name Name of a individual to contact telecom Σ 0..* Use this instead
Name Flags Card. Type Description & Constraints doco
. . NamingSystem I DomainResource System of unique identification
Can't have more than one preferred identifier for a type
Can only have replacedBy if namingsystem naming system is retired
Root systems cannot have uuid or sid identifiers
. . type . name 1..1 string Human-readable label
... status ?! 1..1 code draft | active | retired
ConformanceResourceStatus ( Required )
... kind 1..1 code codesystem | identifier | root
NamingSystemType ( Required )
. . name . publisher Σ 1..1 0..1 string Name of the publisher (Organization or individual)
. . date . contact Σ 0..* dateTime BackboneElement Contact details of the publisher
. . status . . name ?! Σ 0..1 code string Name of a individual to contact
. . . . telecom ( Required ) Σ 0..* ContactPoint Contact details for individual or publisher
. . country . responsible 0..1 code string Who maintains system namespace?
. . . date ( Required ) Σ 1..1 dateTime Publication Date(/time)
. . category . type 0..1 CodeableConcept e.g. driver, provider, patient, bank etc etc.
Identifier Type Codes ( Extensible )
. . responsible . description 0..1 string What does naming system namespace? identify?
. . description . useContext Σ 0..1 0..* CodeableConcept Content intends to support these contexts
Context of Use ValueSet ( Extensible )
. . . usage 0..1 string How/where is it used
. . . uniqueId 1..* Element BackboneElement Unique identifiers used for system
. . . . type 1..1 code oid | uuid | uri | other
NamingSystemIdentifierType ( Required )
. . . . value 1..1 string The unique identifier
. . . . preferred 0..1 boolean Is this the id that should be used for this type
. . . . period 0..1 Period When is identifier valid?
. . publisher . replacedBy Σ I 0..1 Reference Σ 0..1 string ( NamingSystem ) Use this instead
ContactPoint
Contact details doco Documentation for individual or publisher replacedBy I 0..1 NamingSystem this format

UML Diagram

NamingSystem ( DomainResource ) Indicates the purpose for the namingsystem - what kinds of things does it make unique? type : code 1..1 « Identifies the purpose of the namingsystem NamingSystemType » The descriptive name of this particular identifier type or code system name : string 1..1 The date (and optionally time) when the system was registered or published date : dateTime 1..1 [1..1] Indicates whether the namingsystem naming system is "ready for use" or not (this element modifies the meaning of other elements) status : code 1..1 [1..1] « The lifecycle status of a Value Set or Concept Map Map. (Strength=Required) ConformanceResourceStatus ! » If present, indicates that Indicates the identifier or code system is principally intended purpose for use or applies to entities within the specified country. For example, the country associated with a national code naming system - what kinds of things does it make unique? country kind : code 0..1 [1..1] « Codes for identifying countries Identifies the purpose of the naming system. (Strength=Required) Country NamingSystemType ! » Categorizes a namingsystem for easier search by grouping related namingsystems The name of the individual or organization that published the naming system category publisher : CodeableConcept string 0..1 [0..1] The name of the organization that is responsible for issuing identifiers or codes for this namespace and ensuring their non-collision responsible : string 0..1 [0..1] The date (and optionally time) when the system was registered or published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the registration changes date : dateTime [1..1] Categorizes a naming system for easier search by grouping related naming systems type : CodeableConcept [0..1] « A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. (Strength=Extensible) Identifier Type + » Details about what the namespace identifies including scope, granularity, version labeling, etc description : string 0..1 [0..1] The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of naming systems useContext : CodeableConcept [0..*] « Indicates the countries, regions, disciplines and other aspects of use within which this artifact is targeted for use. (Strength=Extensible) Context of Use ValueSet + » Provides guidance on the use of the namespace, including the handling of formatting characters, use of upper vs. lower case, etc usage : string 0..1 The name of the individual or organization that published the naming system publisher : string 0..1 [0..1] For namingsystems naming systems that are retired, indicates the namingsystem naming system that should be used in their place (if any) replacedBy : Reference ( [0..1] « NamingSystem ) 0..1 » Contact The name of an individual to contact regarding the naming system name : string [0..1] Contact details for individual (if a name was provided) or the publisher telecom : ContactPoint [0..*] UniqueId Identifies the unique identifier scheme used for this particular identifier type : code 1..1 [1..1] « Identifies the style of unique identifier used to identify a namepace namespace. (Strength=Required) NamingSystemIdentifierType ! » The string that should be sent over the wire to identify the code system or identifier system value : string 1..1 [1..1] Indicates whether this identifier is the "preferred" identifier of this type preferred : boolean 0..1 [0..1] Identifies the period of time over which this identifier is considered appropriate to refer to the namingsystem. naming system. Outside of this window, the identifier might be non-deterministic period : Period 0..1 [0..1] Contact The name of an individual to contact regarding the naming system name : string 0..1 Contact details for individual (if Contacts to assist a name was provided) or user in finding and communicating with the publisher telecom : ContactPoint contact 0..* [0..*] Indicates how the system may be identified when referenced in electronic exchange uniqueId 1..* Contacts to assist a user in finding and communicating with the publisher contact 0..* [1..*]

XML Template

<NamingSystem xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <
 <
 <
 <
 <
 <</category>
 <
 <
 <
 <
  <
  <
  <
  <</period>
 </uniqueId>
 <

 <name value="[string]"/><!-- 1..1 Human-readable label -->
 <status value="[code]"/><!-- 1..1 draft | active | retired -->
 <kind value="[code]"/><!-- 1..1 codesystem | identifier | root -->
 <publisher value="[string]"/><!-- 0..1 Name of the publisher (Organization or individual) -->

 <contact>  <!-- 0..* Contact details of the publisher -->
  <
  <</telecom>

  <name value="[string]"/><!-- 0..1 Name of a individual to contact -->
  <telecom><!-- 0..* ContactPoint Contact details for individual or publisher --></telecom>

 </contact>
 <</replacedBy>

 <responsible value="[string]"/><!-- 0..1 Who maintains system namespace? -->
 <date value="[dateTime]"/><!-- 1..1 Publication Date(/time) -->
 <type><!-- 0..1 CodeableConcept e.g. driver,  provider,  patient, bank etc. --></type>
 <description value="[string]"/><!-- 0..1 What does naming system identify? -->
 <useContext><!-- 0..* CodeableConcept Content intends to support these contexts --></useContext>
 <usage value="[string]"/><!-- 0..1 How/where is it used -->
 <uniqueId>  <!-- 1..* Unique identifiers used for system -->
  <type value="[code]"/><!-- 1..1 oid | uuid | uri | other -->
  <value value="[string]"/><!-- 1..1 The unique identifier -->
  <preferred value="[boolean]"/><!-- 0..1 Is this the id that should be used for this type -->
  <period><!-- 0..1 Period When is identifier valid? --></period>
 </uniqueId>
 <replacedBy><!-- ?? 0..1 Reference(NamingSystem) Use this instead --></replacedBy>

</NamingSystem>

 

Alternate definitions: Schema / Schematron , Resource Profile ( XML , JSON ), Questionnaire

6.22.2.1 6.22.3.1 Terminology Bindings

NamingSystem.type NamingSystem.status NamingSystem.country NamingSystem.category
Path Definition Type Reference
NamingSystem.status Identifies the purpose The lifecycle status of the namingsystem a Value Set or Concept Map. Required http://hl7.org/fhir/namingsystem-type ConformanceResourceStatus
NamingSystem.kind The lifecycle status Identifies the purpose of a Value Set or Concept Map the naming system. Required http://hl7.org/fhir/conformance-resource-status NamingSystemType
NamingSystem.type Codes A coded type for identifying countries an identifier that can be used to determine which identifier to use for a specific purpose. Required Extensible The complete set of ISO country codes, as maintained form time to time Identifier Type Codes
NamingSystem.useContext Identifies Indicates the general purpose countries, regions, disciplines and other aspects of the namingsystem identifiers provided. E.g. Driver, Provider, Patient, Bank, etc. use within which this artifact is targeted for use. Unknown Extensible No details provided yet Context of Use ValueSet
NamingSystem.uniqueId.type Identifies the style of unique identifier used to identify a namepace namespace. Required http://hl7.org/fhir/namingsystem-identifier-type NamingSystemIdentifierType

6.22.2.2 6.22.3.2 Constraints

  • nsd-1 : Root systems cannot have uuid or sid identifiers (xpath: not(f:type/@value='root' not(f:kind/@value='root' and f:uniqueId/f:type=('uuid', f:uniqueId/f:type/@value=('uuid', 'ruid')) )
  • nsd-2 : Can't have more than one preferred identifier for a type (xpath: not(exists(for $type in distinct-values(f:uniqueId/f:type) distinct-values(f:uniqueId/f:type/@value) return if (count(f:uniqueId[f:type/@value=$type and f:primary/@value='true'])>1) f:preferred/@value=true()])>1) then $type else ())) )
  • nsd-3 : Can only have replacedBy if namingsystem naming system is retired (xpath: not(f:replacedBy) or f:status/@value='retired' )

6.22.2.3 6.22.3.3 Dealing with duplicate entries

In some cases, the same code or identifier system might accidentally get created more than once in a registry (perhaps because someone failed to check for an existing entry before adding a new one or knows the same concept with a different name. If this occurs, one of the system entries should be deleted and the remaining entry should have its information updated to include any identifiers present on the original entry (and possibly have its descriptive information modified to include additional information gleaned from the duplicate entry).

6.22.3 6.22.4 Search Parameters

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Paths
category token e.g. driver, provider, patient, bank etc NamingSystem.category contact string Name of a individual to contact NamingSystem.contact.name
country context token ISO 3-char country code Content intends to support these contexts NamingSystem.country NamingSystem.useContext
date date Publication Date(/time) NamingSystem.date
idtype id-type token oid | uuid | uri | other NamingSystem.uniqueId.type
kind token codesystem | identifier | root NamingSystem.kind
name string Human-readable label NamingSystem.name
period date When is identifier valid? NamingSystem.uniqueId.period
publisher string Name of the publisher (Organization or individual) NamingSystem.publisher
replacedby replaced-by reference Use this instead NamingSystem.replacedBy
( NamingSystem )
responsible string Who maintains system namespace? NamingSystem.responsible
status token draft | active | retired NamingSystem.status
telecom token Contact details for individual or publisher NamingSystem.contact.telecom
type token codesystem | identifier | root e.g. driver, provider, patient, bank etc. NamingSystem.type
value string The unique identifier NamingSystem.uniqueId.value