<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="DevDaysIGtutorial-Observation" />
  <url value="http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-Observation" />
  <version value="1.1.0" />
  <name value="DevDaysIGtutorialObservation" />
  <title value="DevDaysIGtutorial-Observation" />
  <status value="active" />
  <date value="2019-06-10" />
  <publisher value="Firely" />
  <description value="Profile for laboratory results for an example use case in the DevDaysIGtutorial. Clients can use this profile to know which data it may receive. Server's laboratory results response SHALL conform to this profile." />
  <fhirVersion value="4.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
  <derivation value="constraint" />
  <snapshot />
  <differential>
    <element id="Observation.basedOn">
      <path value="Observation.basedOn" />
      <max value="0" />
    </element>
    <element id="Observation.partOf">
      <path value="Observation.partOf" />
      <max value="1" />
    </element>
    <element id="Observation.status">
      <path value="Observation.status" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.code">
      <path value="Observation.code" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.code.coding">
      <path value="Observation.code.coding" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.code.coding.system">
      <path value="Observation.code.coding.system" />
      <min value="1" />
      <fixedUri value="http://loinc.org" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.code.coding.code">
      <path value="Observation.code.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.subject">
      <path value="Observation.subject" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-Patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.effective[x]:effectiveDateTime">
      <path value="Observation.effective[x]" />
      <sliceName value="effectiveDateTime" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity">
      <path value="Observation.value[x]" />
      <sliceName value="valueQuantity" />
      <type>
        <code value="Quantity" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity.value">
      <path value="Observation.value[x].value" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity.unit">
      <path value="Observation.value[x].unit" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity.system">
      <path value="Observation.value[x].system" />
      <min value="1" />
      <fixedUri value="http://unitsofmeasure.org" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.value[x]:valueQuantity.code">
      <path value="Observation.value[x].code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.dataAbsentReason">
      <path value="Observation.dataAbsentReason" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.bodySite">
      <path value="Observation.bodySite" />
      <max value="0" />
    </element>
    <element id="Observation.method">
      <path value="Observation.method" />
      <min value="1" />
    </element>
    <element id="Observation.method.extension">
      <path value="Observation.method.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Observation.method.extension:methodQualifier">
      <path value="Observation.method.extension" />
      <sliceName value="methodQualifier" />
      <min value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://devdays-example-ig.com/fhir/StructureDefinition/DevDaysIGtutorial-observation-method-qualifier" />
      </type>
    </element>
    <element id="Observation.method.extension:methodQualifier.value[x]:methodQualifier">
      <path value="Observation.method.extension.value[x]" />
      <sliceName value="methodQualifier" />
      <min value="1" />
    </element>
    <element id="Observation.method.coding">
      <path value="Observation.method.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Observation.method.coding.system">
      <path value="Observation.method.coding.system" />
      <min value="1" />
    </element>
    <element id="Observation.method.coding.code">
      <path value="Observation.method.coding.code" />
      <min value="1" />
    </element>
    <element id="Observation.device">
      <path value="Observation.device" />
      <max value="0" />
      <mustSupport value="false" />
    </element>
    <element id="Observation.hasMember">
      <path value="Observation.hasMember" />
      <max value="0" />
    </element>
    <element id="Observation.derivedFrom">
      <path value="Observation.derivedFrom" />
      <max value="0" />
    </element>
    <element id="Observation.component">
      <path value="Observation.component" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>