HCLS/ClinicalObservationsInteroperability/FHIR

From W3C Wiki
Jump to: navigation, search

FHIR as RDF

HL7 has garnered a lot of attention around a project called FHIR (Fast Healthcare Interoperability Resources). For instance, the US Integrated Program Office has selected FHIR as an exchange format between US DOD's AHLTA and the US Vererances Administration's VISTA EHR sysem¹. This task is to provide useful RDF representations of FHIR resources, with the goal that the Semantic Web advantages of simple, uniform representation and connectivity within a greater network are manifest in that RDF representation.

¹ HIT Standards Committee NwHIN Power Team Transport Standards for Consumer / Exchanges: Preliminary June 19, 2013

RDF representation of FHIR resoruces

Mapping

Given an XML representation of a FHIR resource, e.g.:

<DiagnosticReport xmlns="http://hl7.org/fhir">
  <subject>
    <type value="Patient"/>
    <reference value="patient/@pat2"/>
  </subject>
  <diagnosticTime value="2011-03-04T08:30:00+11:00"/>
  <results>
    <name>
      <coding>
	<system value="http://loinc.org"/>
        <code value="15430-2"/>
	<display value="FULL BLOOD EXAMINATION"/>
      </coding>
    </name>
    <result>
      <type value="Observation"/>
      <reference value="#r1"/>
    </result>  
  </results>
</DiagnosticReport>

with some embedded or linked clinical observations:

  <contained>
    <Observation id="r1">
      <name>
	<coding>
	  <system value="http://loinc.org"/>
	  <code value="718-7"/>
	  <display value="Haemoglobin"/>
	</coding>
      </name>
      <valueQuantity>
	<value value="176"/>
	<units value="g/L"/>
	<system value="http://unitsofmeasure.org"/>
	<code value="g/L"/>
      </valueQuantity>
    </Observation>
  </contained> 

we represent the information in RDF as:

[] a fhir:DiagnosticReport;
  :subject [
    a fhir:Reference;
    Reference:reference <patient/@pat2>
  ];
  :results [
    :results_name [
      a fhir:Codeable;
        Codeable:coding [
          a fhir:Coding;
          Coding:system [a fhir:Uri; fhir:value <http://loinc.org>];
          Coding:code  [a fhir:Code; fhir:value "15430-2"];
          Coding:display  [a fhir:String; fhir:value "FULL BLOOD EXAMINATION"];
        ];
      ];
    :results_result [
      a fhir:Reference;
      Reference:reference _:r1
    ]
  ].

with corresponding clinical observations:

_:r1 a fhir:Observation;
  Observation:name [
    a fhir:Coding;
    Coding:system [a fhir:Uri; fhir:value <http://loinc.org/>];
    Coding:code [a fhir:Code; fhir:value "718-7"];
    Coding:display [a fhir:String; fhir:value "Haemoglobin"]
  ];
  Observation:valueQuantity [
     a fhir:Quantity;
     Quantity:value [a fhir:Decimal; fhir:value "176"^^xsd:decimal];
     Quantity:units [a fhir:String; fhir:value "g/L"];
     Quantity:system [a fhir:Uri; fhir:value <http://unitsofmeasure.org>];
     Quantity:code [a fhir:Code; fhir:value "g/L"]
  ].

Tools

OWL representation of FHIR Schema

Resources

github repo