Build a Problem List
The Condition resource is populated with problems/diagnoses from multiple HIEBus sources, including medical claims, electronic medical records, clinical documents, ADT messages, and pharmacy fills. A Problem List can be built by querying the Condition resource directly or by compiling Condition resources included with Encounters and CodeableConcept resources included with ExplanationOfBenefits. Problems/diagnoses can be grouped and categorized using ValueSets developed by AHRQ.
Contents
Querying for Problems Directly
- Query the Condition resource.
Querying from Encounters & EOBs
- For Encounters, diagnoses are included as references to Condition resources in
Encounter.diagnosis
. - For ExplanationOfBenefit diagnoses are CodeableConcept resources in
ExplanationOfBenefit.diagnosis
(in accordance with the CARIN BB profile).
Summarizing Conditions/Diagnoses into a Problem List
Many clinical use cases require a single list with each problem listed once. It can also be helpful for most clinical use cases to categorize problems into chronic (ongoing) and acute (usually limited time period) and/or to display a higher-level diagnosis than some of those in the most detailed ICD-10 codes (e.g., ‘Obesity’ from ‘Obesity, unspecified E66.9’, ‘Body mass index [BMI] 38.0-38.9, adult Z68.38’, and ‘Morbid (severe) obesity due to excess calories E66.01’).
- To identify diagnoses as chronic or acute use Chronic Condition Indicator value sets defined by AHRQ via the $classify operation with
version=CCI
and a comma-delimited list of ICD-10-CM codes. - To aggregate diagnoses into higher level conditions use Clinical Classification (CCSR) value sets defined by AHRQ via the $classify operation with
version=CCSR Category
and a comma-delimited list of ICD-10-CM codes.
See the Value Set Tutorial for more detail on how to use the
$classify
operation and common value set scopes.
For example, for /ValueSet/$classify?code=I21.4,I21.09,I21.3,S90.32XA,I10,G89.29&system=http://hl7.org/fhir/sid/icd-10-cm
:
&version=CCI
&version=CCSR Category
ICD-10-CM codes will be found within CodeableConcept resources in Conditions, with
userselected=false
indicating it is mapped code, rather than a source code.
Real-World Data Considerations
- Code Mapping - Diagnoses or Problems in source data may be coded in standard code systems such as ICD-10-CM or SNOMED, but often is missing a code or uses proprietary code systems and descriptions. HIEBus uses a term mapping system called Rosetta to map source data to Reference code systems whenever possible. A code with
userselected=false
and asystem=
one of those listed athttps://[YOUR_FHIR_ENDPOINT]/documentation?prefix=fhir-r4#coding-systems
indicates it is mapped code, rather than a source code. - Verification Status - Note that the default for
Condition.verficationstatus
isunconfirmed
unless specifically indicated otherwise by the source system (which is rare) - Stage, Evidence, BodySite, Severity – These fields are not populated by HIEBus as they are not available in source data.
- Condition Category and ‘Primary’ Conditions
- HIEBus maps
Condition.category
to several reference code systems where possible (e.g. HL7 FHIR Condition Category, CARIN Claim Diagnosis Type, LOINC , and SNOMED. Source data, particularly from EMRs, has a large amount of variation. - The concept of a ‘primary’ condition is more relevant in the context of a specific encounter or claim, than in a problem list. Rather than using ‘primary’ to prioritize problems in a list, it is typically useful to use recency, freqency, or chronic vs. acute.
- HIEBus maps