Programming Guide

This guide introduces some basic concepts and workflows that will be important as you begin using the API.

FHIR Resources

The Terminology API abstracts the underlying FHIR resources (CodeSystem, ConceptMap, and ValueSet) that form the basis for the terminology service. In general, these abstractions make the Terminology API easier to understand and use. You can also access the FHIR resources directly through the FHIR Interface.

Reference Code Systems and Value Sets

The Terminology service maintains an up-to-date set of reference code systems (ICD10, SNOMED, LOINC, RxNorm, NDC, etc.) and value sets (CCSR, MedRT, etc). It automatically refreshes itself with periodic updates (typically monthly) published by canonical data sources such as the National Library of Medicine, Regenstrief, AHRQ, CMS, NCQA, and the Veterans Administration. Current and historical code systems are maintained to enable organization of data longitudinally; e.g., historical problems may be coded in ICD9 while recent data is coded in ICD10.

In many situations, the healthcare data you have may not be coded in a standard or consistent manner; or may in fact not be coded at all. Leveraging experience across the entire installed base of Orchestrate adopters–hospitals, labs, state HIEs, payers, and academic health centers–the Terminology service uses advanced domain-specific algorithms to link raw source data–including uncoded free text–to known terminology code systems. For example: problems to ICD10 and SNOMED, labs to LOINC, and medications to RxNorm.

“Reference” value sets are maintained from a variety of sources including the code system publishers (e.g., LOINC, RxNorm), public programs (e.g., CMS), and quality/public health/population health organizations (e.g., AHRQ, CDC, NCQA). A value set will have a collection of codes from one or more reference code systems with a particular common meaning. Value sets have a ‘scope’ based on the publisher/program (e.g., CCSR Category, LOINC-Component), domain (e.g., COVID19), date (e.g., MeasureTerms_MY2020), and/or intended use (e.g., MedRT - May Treat). Value sets are used in terminology/classify and other operations.