2nd DSTU Draft For Comment

This page is part of the FHIR Specification (v0.4.0: DSTU 2 Draft). 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

1.22.1.1 Using SNOMED CT with FHIR

1.22.1.1.1 Summary

SourceSNOMED CT is made managed by IHTSDO. IHTSDO is an international standards organization with multiple different countries as members, each of which distribute their own variant of SNOMED CT
SystemThe URI http://snomed.info/sct identifies the SNOMED CT code system
VersionWhere a version is used, it should be a full URI that represents the specific distribution, following the SNOMED URI Specification (see note below)
CodeThe following SNOMED CT artifacts are valid in the code element for the http://snomed.info/sct namespace: Concept IDs, Expressions and SNOMED Legacy codes.

Description Ids are not valid, nor are other concepts associated with SNOMED CT Concepts using the RF2 identifier infrastructure. Expressions SHOULD NOT contain terms, only concept IDs
DisplayThe correct display for a SNOMED CT concept is one of the preferred terms for the concept. The Fully Specified Name is not an appropriate choice. The source of preferred name comes from a Language Reference Set. SNOMED CT does not defined displays for expressions; if no display has been associated with the expression through a value set or other mechanism, the full expression syntax with preferred terms embedded may be used
Filter PropertiesSeveral properties are defined as described below

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

1.22.1.1.2 Version Issues

There is no single distribution that contains all defined SNOMED CT codes in all contexts of use; instead, each national office distributes a set of version of a particular distribution. In addition, other release authorities may be designated. The SNOMED URI Specification describes how to unambiguously reference a particular version of a distribution:

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

where [sctid] is the concept id of the SNOMED CT distribution (e.g. 32506021000036107 for Australia), and the tail is the date of release (by custom, this is usually the last day of the month). Note that many implementations are in the habit of simple using the date of release in the form YYYYMMDD (e.g. "20140531"), and assuming the that the distribution is known. However this is not always safe, so implementations that populate the version element SHOULD use the full URI form.

1.22.1.1.3 Copyright/License Issues

The use of SNOMED CT codes, display names and value sets in this specification is subject to (basis to be confirmed). This does not convey the right to use SNOMED CT to any users of this specification; implementers must acquire a license to use SNOMED CT in their own right (from their national SNOMED CT authority, or elsewhere).

Note that the Australian distribution of SNOMED CT is currently used as the underlying system for the FHIR specification (todo: review this).

1.22.1.1.4 SNOMED CT Filter Properties

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 Language, but this does not imply that its use is required. To Do: what's the correct link for this>

1.22.1.1.4.1 By Subsumption

DescriptionSelect a set of concepts based on subsumption testing
Property Nameconcept
Operations Allowedis-a
Values Allowed[concept id]
CommentsIncludes all concept ids that have a transitive is-a relationship with the concept Id provided as the value
ExampleAdministation Methods
SCT QL
DescendentsAndSelf([concept])

1.22.1.1.4.2 By Reference Set

DescriptionSelect a set of concepts based on their membership of a SNOMED CT reference set
Property Nameconcept
Operations Allowedin
Values Allowed[concept id]
CommentsIncludes all concept ids that are active members of the reference set identified by the concept Id provided as the value
SCT QL
MembersOf([concept])

1.22.1.1.4.3 By Snomed Query Expression

DescriptionSelect a set of concepts based on a formal expression statement
Property Nameexpression
Operations Allowed=
Values Allowed[expression]
CommentsThe result of the filter is the result of executing the given SNOMED CT expression. note: the query statement is under current development

1.22.1.1.4.4 By whether post-coordination is allowed

DescriptionSpecify whether post-coordinations is allowed or not
Property Nameexpressions
Operations Allowed=
Values Allowedtrue or false
CommentsExpressions, if allowed, are subject to the same rules as pre-coordinated concepts. Note: reference sets do not include expressions.
ExampleAdministation Methods
SCT QL
n/a

1.22.1.1.5 Implicit Value Sets

Implicit value sets are those whose specification can predicted based on the grammar of the underlying code system, and the known structure of the URL that identifies them. SNOMED CT has two sets of implicit value sets: By Subsumption, and By Reference Set.

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 value set reference, which is a literal reference).

A Snomed implicit value set URL has two parts, the base part is the URI for the edition version, in the format specified by the IHTSDO the SNOMED URI Specification, with one exception: the URI

  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.

The second part of the URL is a query portion that specifies the scope of the content. For this, 3 possible values are:

  • ?fhir_vs - all Concept IDs in the edition/version. If the base URI is 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.
  • ?fhir_vs=refset/[sctid] - all concept IDs in the specified reference set

A value set with an identifier that follows the pattern "[edition/version]?fhir_vs=isa/[sctid]" in the identifier 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 subsumed by conceptid]
    </div>
  </text>
  <identifier value="[edition/version]?fhir_vs=isa/[sctid]"/>
  <version value="[edition/version]"/>
  <name value="SNOMED CT Concept [conceptid] and descendents"/>
  <description value="All SNOMED CT concepts for [concept id or preferred description]"/>
  <status value="active"/>
  <compose>
    <include>
      <system value="http://snomed.info/sct"/>
      <filter>
        <property value="concept"/>
        <op value="is-a"/>
        <value value="[sctid]"/>
      </filter>
    </include>
  </compose>
</ValueSet>

A value set with an identifier that follows the pattern "[edition/version]?fhir_vs=refset/[sctid]" in the identifier 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 in the reference set identified by conceptid]
    </div>
  </text>
  <identifier 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]"/>
  <status value="active"/>
  <compose>
    <include>
      <system value="http://snomed.info/sct"/>
      <filter>
        <property value="concept"/>
        <op value="in"/>
        <value value="[conceptid]"/>
      </filter>
    </include>
  </compose>
</ValueSet>