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 these exercises, participants can access: https://snowstorm-fhir.snomedtools.org/fhir/ (this is a read-only instance)
Alternatively Follow instructions at https://github.com/IHTSDO/snowstorm/blob/master/docs/getting-started.md to install a local instance of Snowstorm and load an edition of SNOMED CT.
Scenario #1 - 'Ello 'Ello, what have we here then?
- Just hit the base endpoint and check there's someone at home. (Hint: cutting and pasting never goes out of style)
- Discover the capabilities of a SNOMED International Snowstorm terminology server (hint: we're looking for metadata here)
- Get a list of all CodeSystem instances available on the server (hint: You don't need to say much!)
Scenario #2 - Unidentified Object on Short Range Scan!
- Let's say you receive a message with a code in it 840539006. How would you check if that's a valid SNOMED CT code? (Hint: use the CodeSystem $validate-code operation)
- And let's say you received that same code with display text of "Disease caused by 2019-nCoV" is that even the same thing? (Hint $validate-code this time including a display parameter)
- Now you receive a record that shows a patient has an allergy to 443971000124108 and a check of browser.ihtsdotools.org shows it's not a concept in the International Edition. Is it in ANY known edition?
Scenario #3 - On Closer Examination...
- Retrieve information for the concept with the following SNOMED CT identifier, 82272006 | Common cold (disorder)| (Hint: get more detail about concepts using the $lookup operation)
- Retrieve terms (designations) for 82272006 | Common cold (disorder)| in Spanish (hint: language code for Spanish is es and the URI for the Spanish Edition is http://snomed.info/sct/449081005)
- As part of a pharmacovigilence application, you need to check the ingredients for 371220007. How can you recover the attributes of this concept to investigate the ingredient concepts further? (Hint: you need to ask for the normal form property)
Find more URIs (containing module ids) for various country editions here: 4.4.2 Edition URI Examples
Scenario #4 - Search and Destroy! Actually, just search.
- A friend of yours wants to know how many different types of cancer there are. How many does SNOMED CT know about? (Hint the top level concept for cancer is 363346000 | Malignant neoplastic disease (disorder)| and you can create an implicit ValueSet using isa )
- Retrieve all concepts related to asthma, returning results in Spanish
Find the ICD-10 map targets for 9977002 | Blister of ankle with infection (disorder)| Hint: The URI for ICD-10 is http://hl7.org/fhir/sid/icd-10 and the URL containing the SCTID for SNOMED CT's ICD-10 map is http://snomed.info/sct?fhir_cm=447562003
Scenario #5 - Advanced querying with ECL and implicit Valuesets (No hints!)
In order to populate fields in your General Practice Medical application, you need to create implicit ValueSets using ECL to return:
- All the concepts that are members of the 450970008 | General Practice / Family Practice reference set (foundation metadata concept)|
- All the concepts that are members of the General Practice / Family Practice reference set and are a type of 125605004 | Fracture of bone (disorder)|
- All concepts that are respiratory disorders due to an allergic reaction to pollen