FHIR Release 3 (STU) R4 Ballot #1 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.0.2: STU 3). (v3.3.0: R4 Ballot 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: R4B R4 R3 R2

Vocabulary Work Group Maturity Level : 5 Ballot Status : Trial Use
Source SNOMED CT is owned, maintained and distributed by IHTSDO SNOMED International . IHTSDO SNOMED International is an international the organization with countries as members. IHTSDO which publishes the international release International Edition of SNOMED CT (which is used in FHIR international standards and resources). Each of the IHTSDO member countries CT. SNOMED International Members may also distribute their own SNOMED CT edition, National Edition, which contains the international release plus local extension content and derivatives.
System The URI http://snomed.info/sct identifies the SNOMED CT code system.
Version Where a code system version is used, it should be specified as a full URI that represents the a specific distribution (International Release, SNOMED CT Edition published on a particular date (e.g. the International Edition or a National Release and version), Edition, with a version date), following the SNOMED CT URI Specification (see note below) below).
Code The following SNOMED CT artifacts are valid in the code element for the http://snomed.info/sct namespace: Concept IDs , and SNOMED CT Expressions ( grammar (using SNOMED CT Compositional Grammar ) and ). SNOMED Legacy codes CT Terms . and Description Identifiers SNOMED CT Terms (Description Ids) are not valid as codes in FHIR, nor are other alternate alternative identifiers associated with SNOMED CT Concepts using the RF2 identifier infrastructure. Expressions SHOULD NOT contain terms, only concept IDs (note that when Concepts.

Note: When SNOMED CT terms Terms must be exchanged, use the Description Id Extension) Extension.
Display The correct display for a SNOMED CT concept is one of the synonyms for the terms associated with that concept. The best display is the preferred term in the relevant language or dialect, as specified in the associated language reference set (if applicable). Preferred terms are set. SNOMED CT synonyms may be case sensitive. The Fully Specified Name is not an appropriate choice. The source of preferred name comes from a Language Reference Set.

SNOMED CT International does not define displays terms for expressions; expressions. If a SNOMED terminology producer publishes human-readable terms for expressions in an expression repository, this term may be used as the display. Similarly, if a SNOMED terminology producer publishes an official template for generating terms from an expression, a term generated using the template may be used as the display. If no display term or description template has been associated with the expression through a value set or other mechanism, published, the full expression syntax with preferred terms embedded may be used used.

Note that Display is not intended to contain terms entered by the user that have not been officially published by a SNOMED CT Terminology Producer.
Inactive Inactive codes are identified using the 'inactive' property (see below)
Subsumption SNOMED CT Subsumption testing is based in the |is a| relationship defined by SNOMED CT
Filter Properties Several properties are defined as described below

This specification publishes a canonical SNOMED CT code system resource. See also the SNOMED CT Usage Summary .

Note: The IHTSDO SNOMED International glossary explains some of these SNOMED CT specific terms.

There is no single distribution that contains all defined SNOMED CT codes in all contexts of use. Instead the international release International Edition contains all concepts shared and agreed to be internationally relevant and each national release centre National Release Centre distributes this international release International Edition plus additional national content (to extend that the international set). In addition, other Other release authorities may also be designated. The SNOMED CT URI Specification describes how to unambiguously reference a particular version of a distribution: SNOMED CT edition:

  http://snomed.info/sct/[sctid]/version/[YYYYMMDD]

where [sctid] is the concept id of that identifies the given SNOMED CT distribution (e.g. 32506021000036107 for Australia), and edition (based on the tail identifier of the most dependent module), and "YYYYMMDD" is the date of release (by custom, this is usually the last day release. Examples of the month). sctids that identify a specific edition are listed here .

Note that many implementations are in the habit of simple simply using the date of release in the form YYYYMMDD (e.g. "20140531"), "20140531"), and assuming that the distribution is known. However this is not always safe, so implementations that populate the version element SHOULD use the full URI form. form (as shown above). Note also that in future SNOMED CT releases the date format may be extended to a timestamp as YYMMDDThhmmssZ (allowed per the SNOMED CT URI Specification).

Servers SHOULD regard provision of the date only for the version (without an sctid) as an error, and refuse to process the interaction or operation. At minimum the URI SHOULD contain the sctid of the SNOMED CT distribution:


http://snomed.info/sct/[sctid]

Implementers must note, if no version URI is provided when utilizing SNOMED CT, the Terminology Service may default to the most recent version of the SNOMED CT International Edition available on the service (or the latest available of another edition that may be preferred for the locale). Further, if the date of release is not provided, the Terminology Service may default to the most recent version of the named SNOMED CT distribution (e.g. 32506021000036107 for Australia).

The use of SNOMED CT codes, display names and value sets in this This specification includes content from SNOMED Clinical Terms® (SNOMED CT®) which is subject to an MOU signed between HL7 International and IHTSDO. This does not convey copyright of the right to use International Health Terminology Standards Development Organisation (IHTSDO) (trading as SNOMED CT to any users International). Implementers of this specification; implementers these specifications must acquire a license to use have the appropriate SNOMED CT in their own right. See HL7 Policies and Guidance documents – Licensing Affiliate license - for more information contact http://www.snomed.org/snomed-ct/get-snomed-ct or info@snomed.org .

A SNOMED CT Expression is a structured combination of one or more clinical concepts, stated using Compositional Grammar Syntax .

Note that expressions may optionally contain display terms.

The IHTSDO SNOMED International URI specifications specification uses the namespace http://snomed.info/sct for the code system, and the URI http://snomed.info/id for the individual concepts in the code system. This means that when a SNOMED CT concept is converted from the system::code pair, where the system is http://snomed.info/sct, to the RDF ontological form , the representation is http://snomed.info/id/[concept-id]. Expressions are represented the same way, except that for this use, expressions SHALL not NOT contain whitespace, terms, or comments.

In addition to the standard properties , the following properties are defined for SNOMED CT:

Property Name Data Type Comments
inactive boolean Whether the code is active or not (defaults to false). This is derived from the active column in the Concept file of the RF2 Distribution (by inverting the value) value).
sufficientlyDefined boolean True if the description logic definition of the concept includes sufficient conditions (i.e., if the concept conditions. This is not primitive - found in derived from the value of definitionStatusId value in the Concept file of the RF2 distribution (i.e. If 900000000000073002 |Sufficiently defined concept file). definition status| then true).
moduleId code The SNOMED CT concept id of the module that the concept belongs to.
normalForm string Generated Normal form expression for the provided code or expression, with terms normalFormTerse string Generated Normal form Form expression for the provided code or expression, conceptIds only expression.

In addition, any SNOMED CT relationships relationships, where the relationship type is subsumed by Attribute (246061005) 410662002 |Concept model attribute|, also automatically become properties. Properties that represent SNOMED CT concept model attributes are referred to using their concept id, rather than their human readable term.

For example, laterality: the laterality property is represented using the concept id '272741003', rather than the term 'laterality':

Property Name Data Type Comments
Laterality 272741003 code In this case, the

The equivalent URI (See for the Laterality property is http://snomed.info/id/272741003 (see the  code system definition ) is http://snomed.info/id/272741003 , which can be used to unambiguously map to the underlying concept ).

Note that when a $lookup operation is performed on a SNOMED CT concept, servers SHALL return the full URI for the edition and version being used (see above) in the version property. Other properties are at the discretion of the server and the client.

This section documents the property filters that can be used with the SNOMED CT code system in value set composition statements.

For implementer convenience, some of the property filters are documented in terms of the SNOMED CT Query Expression Constraint Language , but this does not imply that its use is required.

Description Select a set of concepts based on subsumption testing
Property Name concept
Operations Allowed is-a
Values Allowed [concept id]
Comments Includes all concept ids that have a transitive is-a relationship with the concept Id provided as the value (including the concept itself)
Example Administration Methods
SCT ECL
<<
[concept]
(or
the
long
form:

[concept] (Long
syntax:

descendantOrSelfOf
[concept])
Description Select a set of concepts based on their membership of a SNOMED CT reference set
Property Name concept
Operations Allowed in
Values Allowed [concept id]
Comments Includes all concept ids that are active members of the reference set identified by the concept Id provided as the value
SCT ECL
^
[concept]
(or
the
long
form:

[concept] (Long
syntax:

memberOf
[concept])
Description Select a set of concepts based on a formal expression statement constraint
Property Name constraint
Operations Allowed =
Values Allowed [expression] [expression constraint]
Comments The result of the filter is the result of executing the given SNOMED CT Expression (Expression Constraint Language) .
Example:
 "compose": {
  "include": [

 "compose": {
  "include": [

    {
      "system": "http://snomed.info/sct",
      "filter": [

      "system": "http://snomed.info/sct",
      "filter": [

        {
          "property": "constraint",
          "op": "=",
          "value": "<< 30506011000036107 |Australian product|: 700000101000036108 |hasTP| = 17311000168105 |Panadol|"

          "property": "constraint",
          "op": "=",
          "value": "<< 30506011000036107 |Australian product|: 700000101000036108 |hasTP| = 17311000168105 |Panadol|"

        }
      ]
    }
  ]
}

Description Specify whether post-coordination postcoordination is allowed or not
Property Name expressions
Operations Allowed =
Values Allowed true or false
Comments Expressions, if allowed, are subject to the same rules as pre-coordinated precoordinated concepts. Note: simple [Note: Simple reference sets do not include expressions, but Query specification reference sets might). expressions.]
Example Administration Methods
SCT ECL
n/a

Implicit value sets are those whose specification can be predicted based on the grammar of the underlying code system, and the known structure of the URL that identifies them. SNOMED CT has two common sets of implicit value sets defined: By Subsumption, and By Reference Set. These implicit value sets do not use complex queries. This Implicit value sets can also be defined using an expression constraint. The implicit value set capability allows a single URL to serve as a value set definition that defines a value set, definition, and can serve as the basis for the $expansion $expand operation. operation and for other value set references.

If any value set resources exist with an identifier that conforms to the URL patterns specified below, the content of the resource must conform to the template provided. Profiles and other value set references are allowed to reference these value sets directly (by reference as a URI, rather than by a literal value set reference, which is a literal reference).

A SNOMED CT implicit value set URL has two parts:

  • the The base URL is either "http://snomed.info/sct", http://snomed.info/sct , or the URI for the edition version, in the format specified by SNOMED International in the IHTSDO the SNOMED CT URI Specification
  • a A query portion that specifies the scope of the content

"http://snomed.info/sct" The URL http://snomed.info/sct should be understood to mean an unspecified edition/version. This defines an incomplete value set whose actual membership will depend on the particular edition used when it is expanded. If no version or edition is specified, the terminology service SHALL use the latest version available for its default edition (or the international edition, International Edition, if no other edition is the default).

For the second part of the URL (the query part), the 4 5 possible values are:

  • ?fhir_vs - all Concept IDs in the edition/version. If the base URI is http://snomed.info/sct, http://snomed.info/sct , this means all possible SNOMED CT concepts
  • ?fhir_vs=isa/[sctid] - all concept IDs that are subsumed by the specified Concept. concept.
  • ?fhir_vs=refset - all concept ids IDs that correspond to real references reference sets that are explicitly defined in the specified SNOMED CT edition
  • ?fhir_vs=refset/[sctid] - all concept IDs in the specified reference set
  • ?fhir_vs=ecl/[ecl] - all concept IDs that match the supplied (URI-encoded) expression constraint

A value set with a URL that follows the pattern "[edition/version]?fhir_vs=isa/[sctid]" "[edition/version]?fhir_vs=isa/[sctid]" follows this template:

<ValueSet xmlns="http://hl7.org/fhir">

<ValueSet xmlns="http://hl7.org/fhir">

  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
     [Some HTML that describes this value set as all concepts subsumed by conceptid]

    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
     [Some HTML that describes this value set as all concepts subsumed by sctid]

    </div>
  </text>
  <url value="[edition/version]?fhir_vs=isa/[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Concept [conceptid] and descendants"/>
  <description value="All SNOMED CT concepts for [concept id or preferred description]"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (IHTSDO), and distributed by agreement between IHTSDO and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <url value="[edition/version]?fhir_vs=isa/[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Concept [sctid] and descendants"/>
  <description value="All SNOMED CT concepts for [sctid or preferred description]"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (SNOMED International), and distributed by agreement between SNOMED International and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <compose>
    <include>
      <system value="http://snomed.info/sct"/>

      <system value="http://snomed.info/sct"/>

      <filter>
        <property value="concept"/>
        <op value="is-a"/>
        <value value="[sctid]"/>

        <property value="concept"/>
        <op value="is-a"/>
        <value value="[sctid]"/>

      </filter>
    </include>
  </compose>
</ValueSet>

The value set with a url that follows the pattern "[edition/version]?fhir_vs=refset" "[edition/version]?fhir_vs=refset" follows this template:

<ValueSet xmlns="http://hl7.org/fhir">

<ValueSet xmlns="http://hl7.org/fhir">

  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">

    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">

     [Some HTML that describes this value set as all concepts with associated reference sets]
    </div>
  </text>
  <url value="[edition/version]?fhir_vs=refset"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Reference Sets"/>
  <description value="All SNOMED CT concepts associated with a reference set"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (IHTSDO), and distributed by agreement between IHTSDO and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <url value="[edition/version]?fhir_vs=refset"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Reference Sets"/>
  <description value="All SNOMED CT concepts associated with a reference set"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (SNOMED International), and distributed by agreement between SNOMED International and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <compose>
    <include>
      <system value="http://snomed.info/sct"/>

      <system value="http://snomed.info/sct"/>

      <!-- repeat: one concept element with a code for each concept that has an associated reference set -->
      <concept>
        <code value="[sctid]"/>

        <code value="[sctid]"/>

      </concept>
      <!-- end repeat -->
    </include>
  </compose>
</ValueSet>

For each concept that is associated with a reference set, there will be one concept 'concept' element with a contained code 'code' element that contains the concept id. sctid.

A value set with a url that follows the pattern "[edition/version]?fhir_vs=refset/[conceptid]" "[edition/version]?fhir_vs=refset/[sctid]" follows this template:

<ValueSet xmlns="http://hl7.org/fhir">

<ValueSet xmlns="http://hl7.org/fhir">

  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
     [Some HTML that describes this value set as all concepts in the reference set identified by conceptid]

    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
     [Some HTML that describes this value set as all concepts in the reference set identified by sctid]

    </div>
  </text>
  <url value="[edition/version]?fhir_vs=refset/[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Reference Set [conceptid]"/>
  <description value="All SNOMED CT concepts in the reference set [concept id or preferred description]"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (IHTSDO), and distributed by agreement between IHTSDO and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <url value="[edition/version]?fhir_vs=refset/[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Reference Set [sctid]"/>
  <description value="All SNOMED CT concepts in the reference set [sctid or preferred description]"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (SNOMED International), and distributed by agreement between SNOMED International and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <compose>
    <include>
      <system value="http://snomed.info/sct"/>

      <system value="http://snomed.info/sct"/>

      <filter>
        <property value="concept"/>
        <op value="in"/>
        <value value="[conceptid]"/>

        <property value="concept"/>
        <op value="in"/>
        <value value="[sctid]"/>
      </filter>
    </include>
  </compose>
</ValueSet>

A value set with a url that follows the pattern "[edition/version]?fhir_vs=ecl/[ecl]" follows this template:


<ValueSet xmlns="http://hl7.org/fhir">
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">
     [Some HTML that describes this value set as all concepts that match the expression constraint ecl]
    </div>
  </text>
  <url value="[edition/version]?fhir_vs=ecl/[ecl]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Concepts matching [ecl]"/>
  <description value="All SNOMED CT concepts that match the expression constraint [ecl]"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (SNOMED International), and distributed by agreement between SNOMED International and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>
  <compose>
    <include>
      <system value="http://snomed.info/sct"/>
      <filter>
        <property value="constraint"/>
        <op value="="/>
        <value value="[ecl]"/>

      </filter>
    </include>
  </compose>
</ValueSet>

Implicit concept maps are those whose specification can be predicted based on the grammar and/or content of the underlying code system, and the known structure of the URL that identifies them. This allows a single URL to serve as a concept map definition that defines a mapping between two sets of concepts, and which can serve as the basis for the $translate operation. SNOMED CT has two common sets of implicit concept maps defined:

  • Association Reference Sets
  • Simple Map Reference Sets

Association Reference Sets are part of the core SNOMED CT distribution. The following standard Association Reference sets are mapped to can be used for implicit Concept Maps: concept maps:

Name Concept Id Relationship
POSSIBLY EQUIVALENT TO 900000000000523009 inexact
REPLACED BY 900000000000526001 equivalent
SAME AS 900000000000527005 equal
ALTERNATIVE 900000000000530003 inexact

Simple Map Reference Sets (reference sets which are descendants of 900000000000496009 "Simple map") also define an implicit concept map.

If any concept map ConceptMap resources exist with an identifier that conforms to the URL pattern specified below, the content of the resource must conform to the template provided. Canonical references to concept maps ConceptMap resource instances are allowed to reference these concept maps directly by referring to made using their URI.

A SNOMED CT implicit concept map URL has two parts:

  • the The base URL is either "http://snomed.info/sct", http://snomed.info/sct , or the URI for the edition version, in the format specified by SNOMED International in the IHTSDO the SNOMED CT URI Specification
  • a A query portion that specifies the scope of the content

"http://snomed.info/sct" The URL http://snomed.info/sct should be understood to mean an unspecified edition/version. This defines an incomplete concept map whose actual membership will depend on the particular edition used when it is expanded. being used. If no version or edition is specified, the terminology service SHALL use the latest version available for its default edition (or the international edition, International Edition, if no other edition is the default).

For the second part of the URL (the query part), there is only one possible value:

  • ?fhir_cm=[sctid] - where [sctid] is a value from the table above

A concept map with a URL that follows the pattern "[edition/version]?fhir_cm=[sctid]" "[edition/version]?fhir_cm=[sctid]" follows this template, where [name], [sctid] and [relationship] are taken from the table above:

<ConceptMap xmlns="http://hl7.org/fhir">

<ConceptMap xmlns="http://hl7.org/fhir">

  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">

    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml">

     [Some HTML that describes this concept map]
    </div>
  </text>
  <url value="[edition/version]?fhir_cm=[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT [name] Concept Map"/>
  <description value="The concept map implicitly defined by the [name] Association Reference Set"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (IHTSDO), and distributed by agreement between IHTSDO and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>

  <url value="[edition/version]?fhir_cm=[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT [name] Concept Map"/>
  <description value="The concept map implicitly defined by the [name] Association Reference Set"/>
  <copyright value="This value set includes content from SNOMED CT, which is copyright © 2002+ International Health Terminology Standards Development Organisation (SNOMED International), and distributed by agreement between SNOMED International and HL7. Implementer use of SNOMED CT is not covered by this agreement"/>
  <status value="active"/>


  <sourceUri value="[edition/version]?fhir_vs"/>
  <targetUri value="[edition/version]?fhir_vs"/>

  <sourceUri value="[edition/version]?fhir_vs"/>
  <targetUri value="[edition/version]?fhir_vs"/>

  <group>  <!-- 0..* Same source and target systems -->
    <source value="http://snomed.info/sct"/>
    <sourceVersion value="[edition/version]"/>
    <target value="http://snomed.info/sct"/>
    <targetVersion value="[edition/version]"/>

    <source value="http://snomed.info/sct"/>
    <sourceVersion value="[edition/version]"/>
    <target value="http://snomed.info/sct"/>
    <targetVersion value="[edition/version]"/>


    <!-- a mapping for each member of the reference set -->
    <element>
      <code value="[member]"/>

      <code value="[member]"/>

      <target>
        <code value="[reference set value]"/>
        <equivalence value="[relationship]"/>

        <code value="[reference set value]"/>
        <equivalence value="[relationship]"/>

      </target>
    </element>
  </group>
</ConceptMap>
Simple Map Reference Sets (reference sets which are descendants of 900000000000496009 "Simple map") also define an implicit concept map. However, at this time, these cannot be converted to Concept Maps because there is no source for the target code system. Another reference set has been proposed to IHTSDO, and this section will be revisited once it is adopted.