<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Observation-ForLIS-BaseMember" />
  <name value="Observation-ForLIS-BaseMember" />
  <status value="active" />
  <experimental value="false" />
  <fhirVersion value="3.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Observation-ForLIS" />
  <derivation value="constraint" />
  <differential>
    <element id="Observation.meta.tag:observationTags">
      <path value="Observation.meta.tag" />
      <sliceName value="observationTags" />
      <short value="Tags applied to Observation" />
      <binding>
        <strength value="required" />
        <valueSetReference>
          <reference value="http://apiframework.dedalus.eu/fhir/ValueSet/Tags-ForObservation" />
        </valueSetReference>
      </binding>
    </element>
    <element id="Observation.meta.tag:observationTags.system">
      <path value="Observation.meta.tag.system" />
      <min value="1" />
      <fixedUri value="http://apiframework.dedalus.eu/fhir/ValueSet/Tags-ForObservation" />
    </element>
    <element id="Observation.meta.tag:observationTags.code">
      <path value="Observation.meta.tag.code" />
      <min value="1" />
    </element>
    <element id="Observation.extension">
      <path value="Observation.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Observation.extension:referenceRangeSummary">
      <path value="Observation.extension" />
      <sliceName value="referenceRangeSummary" />
      <definition value="An extension added to allow a single textual summary of all the referenceRange indication" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/extension-ObservationReferenceRangeSummary" />
      </type>
    </element>
    <element id="Observation.extension:referenceRangeSummary.valueString:valueString">
      <path value="Observation.extension.valueString" />
      <sliceName value="valueString" />
      <min value="1" />
    </element>
    <element id="Observation.extension:performerExtended">
      <path value="Observation.extension" />
      <sliceName value="performerExtended" />
      <min value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/extension-observation-extendedPerformer" />
      </type>
    </element>
    <element id="Observation.extension:performerExtended.extension:actor">
      <path value="Observation.extension.extension" />
      <sliceName value="actor" />
      <min value="1" />
    </element>
    <element id="Observation.extension:performerExtended.extension:role">
      <path value="Observation.extension.extension" />
      <sliceName value="role" />
    </element>
    <element id="Observation.extension:performerExtended.extension:role.valueCodeableConcept:valueCodeableConcept">
      <path value="Observation.extension.extension.valueCodeableConcept" />
      <sliceName value="valueCodeableConcept" />
      <binding>
        <strength value="extensible" />
        <description value="Practictioner Role Value Set" />
        <valueSetUri value="http://apiframework.dedalus.eu/fhir/ValueSet/PractitionerRole" />
      </binding>
    </element>
    <element id="Observation.code.coding">
      <path value="Observation.code.coding" />
      <min value="1" />
    </element>
    <element id="Observation.code.coding.system">
      <path value="Observation.code.coding.system" />
      <min value="1" />
    </element>
    <element id="Observation.code.coding.code">
      <path value="Observation.code.coding.code" />
      <min value="1" />
    </element>
    <element id="Observation.code.coding.display">
      <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable">
        <valueBoolean value="true" />
      </extension>
      <path value="Observation.code.coding.display" />
      <min value="1" />
    </element>
    <element id="Observation.value[x]">
      <path value="Observation.value[x]" />
      <type>
        <code value="Quantity" />
      </type>
      <type>
        <code value="CodeableConcept" />
      </type>
      <type>
        <code value="string" />
      </type>
      <type>
        <code value="boolean" />
      </type>
      <type>
        <code value="Ratio" />
      </type>
      <type>
        <code value="Attachment" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Attachment-WithSupportForInlineData" />
      </type>
      <type>
        <code value="time" />
      </type>
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="Observation.comment">
      <path value="Observation.comment" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.related">
      <path value="Observation.related" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="type" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Observation.related.type">
      <path value="Observation.related.type" />
      <min value="1" />
    </element>
    <element id="Observation.related.target">
      <path value="Observation.related.target" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Observation-ForLIS" />
        <aggregation value="referenced" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Sequence" />
      </type>
    </element>
    <element id="Observation.related:principalObservation">
      <path value="Observation.related" />
      <sliceName value="principalObservation" />
      <definition value="This relationship is used for observations that represent the same results contained in a parent observation using a different unit of measure" />
      <max value="1" />
    </element>
    <element id="Observation.related:principalObservation.type">
      <path value="Observation.related.type" />
      <min value="1" />
      <fixedCode value="derived-from" />
    </element>
    <element id="Observation.related:principalObservation.target">
      <path value="Observation.related.target" />
      <type>
        <code value="Reference" />
        <targetProfile value="Observation-ForLIS-BaseMember" />
        <aggregation value="referenced" />
      </type>
    </element>
    <element id="Observation.component.extension:qualifier">
      <path value="Observation.component.extension" />
      <sliceName value="qualifier" />
      <short value="The .component.qualifier should be used to enhance the semantic interpretation of the value." />
      <definition value="When the .component.qualifier does not add any useful information it could be empty.&#xD;&#xA;The qualifier must be set to define the property of results that either:&#xD;&#xA;- have same datatype (i.e. two datatype of String that adds note for test and note for result) in order to preserve a classification of the clinical data for further use like filling a document layout &#xD;&#xA;- represent a specific semantic interpretation like antibiotic susceptibility test." />
    </element>
    <element id="Observation.component.value[x]">
      <path value="Observation.component.value[x]" />
      <type>
        <code value="Quantity" />
      </type>
      <type>
        <code value="CodeableConcept" />
      </type>
      <type>
        <code value="string" />
      </type>
      <type>
        <code value="Ratio" />
      </type>
      <type>
        <code value="Attachment" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Attachment-WithSupportForInlineData" />
      </type>
      <type>
        <code value="time" />
      </type>
      <type>
        <code value="dateTime" />
      </type>
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="Observation.component.interpretation">
      <path value="Observation.component.interpretation" />
      <mustSupport value="true" />
    </element>
    <element id="Observation.component.referenceRange">
      <path value="Observation.component.referenceRange" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>