Difference between revisions of "XDS-FHIR-mapping"

From IHE Wiki
Jump to navigation Jump to search
Line 217: Line 217:
 
|}
 
|}
  
The uniqueId is represented by the masterIdentifier. The big different is that in XDS the value is an OID and in FHIR it is a fully qualified OID.
+
The uniqueId is represented by the [http://hl7.org/implement/standards/fhir/documentreference-definitions.html#DocumentReference.masterIdentifier masterIdentifier]. The big different is that in XDS the value is an OID and in FHIR it is a fully qualified OID.

Revision as of 15:27, 24 March 2014

These notes contain the current thinking on how to map Document Sharing attributes to FHIR. This page will be updated as we learn more.

In the tables below, the left side is the current ebRIM content and the right side is the proposed FHIR content.

DocumentEntry

DocumentEntry Wrapper

<ExtrinsicObject 
<DocumentReference>
   <text>
      <status value="generated"/>
      <div  xmlns="http://www.w3.org/1999/xhtml">
      </div>
   </text>
 </DocumentReference>

XDS DocumentEntry corresponds to FHIR DocumentReference.

The text element represents an HTML rendition of the DocumentReference. This example shows that the HTML has been generated.

author

<rim:Classification classificationScheme="urn:uuid:93606bcf-9494-
43ec-9b4e-a7748d1a838d" classifiedObject="theDocument"
id=”ID_045”
objectType="urn:oasis:names:tc:ebxml- regrep:ObjectType:RegistryObject:Classification"
nodeRepresentation="">
<!-- nodeRepresentation intentionally left blank -->
<rim:Slot name="authorPerson">
<!-- shall be single valued, includes
optional ID -->
               <rim:ValueList>
<rim:Value>D12398^Doe^John^^^^^^&1.2.3.4.5.6.7.8. 9.1789.45.1&ISO</rim:Value>
               </rim:ValueList>
        </rim:Slot>
<rim:Slot name="authorInstitution"> <!-- may be multivalued -->
               <rim:ValueList>
                      <rim:Value> Some
Hospital^^^^^^^^^1.2.3.4.5.6.7.8.9.1789.45</rim:Value> </rim:ValueList>
</rim:Slot>
<rim:Slot name="authorRole">
<!-- may be multivalued -->
               <rim:ValueList>
                      <rim:Value>name of
role</rim:Value>
               </rim:ValueList>
</rim:Slot>
<rim:Slot name="authorSpecialty"> <!-- may be multivalued -->
               <rim:ValueList>
                       <rim:Value>specialty of
author</rim:Value>
               </rim:ValueList>
</rim:Slot>
<rim:Slot name="authorTelecommunication">
               <!-- shall be single valued -->
<rim:ValueList> <rim:Value>^^Internet^john.doe@healthcare.example
.org</rim:Value>
               </rim:ValueList>
        </rim:Slot>
</rim:Classification>
  <contained>
    <Practitioner id="a1">
      <name>
        <family value="Dopplemeyer"/>
        <given value="Sherry"/>
      </name>
      <telecom>
        <system value="email"/>
        <value value="john.doe@healthcare.example.org"/>
      </telecom>
      <organization>
        <display value="Cleveland Clinic"/>
      </organization>
      <role>
        <text value="Primary Surgon"/>
      </role>
      <specialty>
        <text value="Orthopedic"/>
      </specialty>
    </Practitioner>
  </contained>
  <contained>
    <Practitioner id="a2">
      <name>
        <family value="Smitty"/>
        <given value="Gerald"/>
      </name>
      <telecom>
        <system value="email"/>
        <value value="john.doe@healthcare.example.org"/>
      </telecom>
      <organization>
        <display value="Cleveland Clinic"/>
      </organization>
      <role>
        <text value="Attending"/>
      </role>
      <specialty>
        <text value="Orthopedic"/>
      </specialty>
    </Practitioner>
  </contained>

  <author>
    <reference value="#a1"/>
  </author>
  <author>
    <reference value="#a2"/>
  </author>

The contained elements go after the text element and before the masterIdentifier. These are formed as contained elements because this content would normally already be in a FHIR repository and simply referenced by this DocumentReference resource. Note that these items are referenced by the id attribute on the Practitioner elements.

Author is R2 in XDS but in FHIR it is 1..*. This is a bad fit.

The sub-elements of author need to be compared yet.

availabilityStatus

   <ExtrinsicObject id="Document01" mimeType="text/plain"
       objectType="urn:uuid:7edca82f-054d-47f2-a032-9b2a5b5186c1"
       status="urn:oasis:names:tc:ebxml-regrep:StatusType:Success">
   <status value=”current”/>

In ebRIM the values are Approved and Deprecated. In FHIR the values are current and superceded and entered in error. Superceded corresponds to Deprecated.

availabilityStatus is optional on submission but FHIR status is strictly 1..1.

In FHIR there is a separate attribute docStatus. This does not look useful to XDS.

confidentialityCode

<rim:Classification
       classificationScheme=
"urn:uuid:f4f85eac-e6cb-4883-b524-
f2705394840f" classifiedObject="theDocument"
id=”ID_047”
objectType="urn:oasis:names:tc:ebxml- regrep:ObjectType:RegistryObject:Classification"
nodeRepresentation="confidentialityCode" >
       <rim:Name>
               <rim:LocalizedString
value="displayName"/>
       </rim:Name>
<rim:Slot name="codingScheme"> <rim:ValueList>
<rim:Value>XDS Affinity Domain Specific Value</rim:Value>
               </rim:ValueList>
        </rim:Slot>
</rim:Classification>
  <confidentiality>
    <coding>
      <system value="http://ihe.net/xds/connectathon/confidentialityCodes"/>
      <code value="1.3.6.1.4.1.21367.2006.7.101"/>
      <display value="Clinical-Staff"/>
    </coding>
  </confidentiality>

It is odd to see confidentiality as an element of DocumentReference resource. In class they pointed to confidentiality as something that would potentially change often so it should be stored outside the main resource. This would allow the resource to be signed and then updates to confidentiality would not require re-signing of the resource.

As is typical in FHIR, the code system is identified as a dereference-able URI and not an OID.

mimeType

    mimeType="text/plain"
   <mimeType value="text/plain"/>

uniqueId

<ExternalIdentifier
  identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab"
  value="1.3.6.1.4.1.21367.2005.3.7"
  objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier"
  id="id_10" registryObject="Document01">
  <Name>
    <LocalizedString value="XDSDocumentEntry.uniqueId"/>
  </Name>
</ExternalIdentifier>
  <masterIdentifier>
    <system value="urn:ietf:rfc:3986"/>
    <value value="urn:oid:1.3.6.1.4.1.21367.2005.3.7"/>
  </masterIdentifier>

The uniqueId is represented by the masterIdentifier. The big different is that in XDS the value is an OID and in FHIR it is a fully qualified OID.