Release 4

Bundle-references.xml

FHIR Infrastructure Work GroupMaturity Level: N/AStandards Status: InformativeCompartments: Not linked to any defined compartments

Raw XML (canonical form + also see XML Format Specification)

An example bundle that demonstrates various reference resolution paths (id = "bundle-references")

<?xml version="1.0" encoding="UTF-8"?>

<Bundle xmlns="http://hl7.org/fhir">
  <id value="bundle-references"/> 
  <type value="collection"/> 

  <!--    A patient that already has an id on a server    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Patient/23"/> 
    <resource> 
      <Patient> 
         <id value="23"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 23</p> <p> <b> identifier</b> : 1234567</p> </div> </text> <identifier> 
           <system value="http://example.org/ids"/> 
           <value value="1234567"/> 
         </identifier> 
      </Patient> 
    </resource> 
  </entry> 
  
  <!--    A patient that doesn't have a persistent home - but it does have 
      a UUID assigned for this bundle "locally identified"    -->
  <entry> 
    <fullUrl value="urn:uuid:04121321-4af5-424c-a0e1-ed3aab1c349d"/> 
    <resource> 
      <Patient> 
      <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> </div> </text> </Patient> 
    </resource> 
  </entry> 
  
  <!--    a relative resource reference    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/123"/> 
    <resource> 
      <Observation> 
        <id value="123"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 123</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> Patient/23</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <!--    this is reference to the first patient above    -->
          <reference value="Patient/23"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 

  <!--    an absolute reference    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/124"/> 
    <resource> 
      <Observation> 
        <id value="124"/> 
        <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 124</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> http://example.org/fhir/Patient/23</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <!--    this is reference to the first patient above    -->
          <reference value="http://example.org/fhir/Patient/23"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 

  <!--    reference to a locally identified resource    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/12"/> 
    <resource> 
      <Observation> 
        <id value="12"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 12</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> urn:uuid:04121321-4af5-424c-a0e1-ed3aab1c349d</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <!--    reference to the second patient above    -->
          <reference value="urn:uuid:04121321-4af5-424c-a0e1-ed3aab1c349d"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 
  
  <!--    reference that doesn't resolve in this bundle and is resolved externally    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/14"/> 
    <resource> 
      <Observation> 
        <id value="14"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 14</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> http://example.org/fhir-2/Patient/1</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <!--    reference to a patient not found in this bundle    -->
          <reference value="http://example.org/fhir-2/Patient/1"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 
  
  
  <!--    nor does this one (FullUrl base is different)    -->
  <entry> 
    <fullUrl value="http://example.org/fhir-2/Observation/14"/> 
    <resource> 
      <Observation> 
        <id value="14"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 14</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> Patient/23</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <!--    reference to a patient not found in this bundle    -->
          <reference value="Patient/23"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 
  
  <!--    A duplicate patient (#1)    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Patient/45"/> 
    <resource> 
      <Patient> 
         <id value="45"/> 
         <meta> 
           <versionId value="1"/> 
         </meta> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 45</p> <p> <b> meta</b> : </p> <p> <b> name</b> : Name 1</p> </div> </text> <name> 
           <text value="Name 1"/> 
         </name> 
      </Patient> 
    </resource> 
  </entry> 
  
  <!--    A duplicate patient (#2)    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Patient/45"/> 
    <resource> 
      <Patient> 
         <id value="45"/> 
         <meta> 
           <versionId value="2"/> 
         </meta> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 45</p> <p> <b> meta</b> : </p> <p> <b> name</b> : Name 2</p> </div> </text> <name> 
           <text value="Name 2"/> 
         </name> 
      </Patient> 
    </resource> 
  </entry> 
  
  <!--    ambiguous reference .. commented out because the validator calls it an error
  <entry>
    <fullUrl value="http://example.org/fhir/Observation/46"/>
    <resource>
      <Observation>
        <id value="46"/>
         <status value="final"/> 
         <code> 
          <coding> 
            <system value="http://loinc.org"/> 
            <code value="15074-8"/> 
            <display value="Glucose [Moles/volume] in Blood"/> 
          </coding> 
        </code> 
        <subject>
          <reference value="Patient/45"/>
        </subject>
      </Observation>
    </resource>
  </entry>
     -->

  <!--    unambiguous reference    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/47"/> 
    <resource> 
      <Observation> 
        <id value="47"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 47</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : <a> Patient/45/_history/2</a> </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
          <reference value="Patient/45/_history/2"/> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 
  
  <!--    idnetifier based reference, resolves to first patient    -->
  <entry> 
    <fullUrl value="http://example.org/fhir/Observation/48"/> 
    <resource> 
      <Observation> 
        <id value="48"/> 
         <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"><p> <b> Generated Narrative with Details</b> </p> <p> <b> id</b> : 48</p> <p> <b> status</b> : final</p> <p> <b> code</b> : Glucose [Moles/volume] in Blood <span> (Details : {LOINC code '15074-8' = 'Glucose [Moles/volume] in Blood', given as 'Glucose
                 [Moles/volume] in Blood'})</span> </p> <p> <b> subject</b> : </p> </div> </text> <status value="final"/>  
         <code>  
          <coding>  
            <system value="http://loinc.org"/>  
            <code value="15074-8"/>  
            <display value="Glucose [Moles/volume] in Blood"/>  
          </coding>  
        </code>  
        <subject> 
           <identifier> 
            <system value="http://example.org/ids"/> 
            <value value="1234567"/> 
          </identifier> 
        </subject> 
      </Observation> 
    </resource> 
  </entry> 
  
  
</Bundle> 

Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.