Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin


HideElements
metastrue
sidebartrue
peopletrue
labelstrue
likestrue

Info

During the hands-on session, you will learn how to query Terminology Services to retrieve SNOMED CT content using advanced queries leveraging the SNOMED CT ontology. This will be using, and therefore based around the capabilities, of the SNOMED International open source Terminology Server, Snowstorm, https://github.com/IHTSDO/snowstorm.

After completing these exercises, you will be able to use both the native Snowstorm API and the FHIR Terminology Services API:

  • Retrieve information for a given concept
  • Search for SNOMED CT content based on
    • Simple search terms
    • Reference sets
    • Expression Constraint Language (ECL) queries
  • Find map targets for give SNOMED CT content
  • Create and retrieve value sets

Examples can be found documented in the Snowstorm repository - https://github.com/IHTSDO/snowstorm/blob/develop/docs/using-the-fhir-api.md or in Postman here, https://documenter.getpostman.com/view/462462/S1TVXJ3k


HTML
<div class="postman-run-button"
data-postman-action="collection/import"
data-postman-var-1="4aa97fbcc6a6ccd0e94c"></div>
<script type="text/javascript">
  (function (p,o,s,t,m,a,n) {
    !p[s] && (p[s] = function () { (p[t] || (p[t] = [])).push(arguments); });
    !o.getElementById(s+t) && o.getElementsByTagName("head")[0].appendChild((
      (n = o.createElement("script")),
      (n.id = s+t), (n.async = 1), (n.src = m), n
    ));
  }(window, document, "_pm", "PostmanRunObject", "https://run.pstmn.io/button.js"));
</script>








    

On this page

Table of Contents
absoluteUrltrue



Note

All these exercises are intended to guide you through retrieving SNOMED CT content. However, if you have applications/code where the results of queries can be directly used, you are likely to get more benefit from the exercises. And of course, you can retrieve other content that is not necessarily specified here.


For the purpose of the exercises, use the following endpoint - https://snowstorm-fhir.snomedtools.org/fhir/

Questions

Exercise #1 - Simple Content Retrieval

  1. Discover the capabilities of SNOMED International Snowstorm terminology server
  2. Retrieve the information for the concept with the following SNOMED CT identifier, 
    Concept
    t82272006 |Common cold (disorder)|
  3. Retrieve the information for the concept with the following SNOMED CT identifier, 
    Concept
    t82272006 |Common cold (disorder)|
    in Spanish
  4. Retrieve the normal form for the concept with the following SNOMED CT identifier, 
    Concept
    t22298006 |Myocardial infarction (disorder)|
    .



Exercise #2 - Content Searching

  1. Retrieve all types of cancer
  2. Retrieve all concepts related to asthma, returning results in Spanish 
  3. Find the ICD-10 map targets for 

    Concept
    t9977002 |Blister of ankle with infection (disorder)|



Exercise #3 - Advanced querying with ECL

Create ECL queries to retrieve the following results:

  1. Find all the concepts that are members of the
    Concept
    t450970008 |General Practice / Family Practice reference set (foundation metadata concept)|
  2. Find all the concepts that are members of the General Practice / Family Practice reference set and are a type of 
    Concept
    t125605004 |Fracture of bone (disorder)|
  3. Find all the concepts that are respiratory disorders due to an allergic reaction to pollen 



Exercise #4 - Creating value sets

  1. Using the exampleVS.json file found at the link below as an example (or use your own JSON file), create a new value set, making sure you change the identifier in the file and give it a unique identifier such as <yourname-domain>
  2. Retrieve the previously created value set
  3. Add some new items to the value set by updating the JSON file
  4. Create a new value set containing an ECL query
  5. Use the expand operation on the value set containing ECL as well as filter parameters

example file #1: exampleVS.json


Answers

Answers to all questions can be found here - FHIR DevDays - Exercise Answers