<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-ot-specimen" />
  <name value="Specimen" />
  <status value="active" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Specimen" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Specimen" />
  <derivation value="constraint" />
  <differential>
    <element id="Specimen.identifier">
      <path value="Specimen.identifier" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Specimen.identifier.system">
      <path value="Specimen.identifier.system" />
      <fixedUri value="https://fhir.synapxe.sg/NamingSystem/sequence-no" />
    </element>
    <element id="Specimen.accessionIdentifier">
      <path value="Specimen.accessionIdentifier" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Specimen.status">
      <path value="Specimen.status" />
      <max value="0" />
    </element>
    <element id="Specimen.type">
      <path value="Specimen.type" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
      <binding>
        <strength value="required" />
        <valueSet value="https://fhir.synapxe.sg/ValueSet/specimen-type" />
      </binding>
    </element>
    <element id="Specimen.type.extension">
      <path value="Specimen.type.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.type.coding.system">
      <path value="Specimen.type.coding.system" />
      <fixedUri value="https://fhir.synapxe.sg/CodeSystem/specimen-type" />
    </element>
    <element id="Specimen.subject">
      <path value="Specimen.subject" />
      <max value="0" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-patient" />
      </type>
    </element>
    <element id="Specimen.parent">
      <path value="Specimen.parent" />
      <max value="0" />
    </element>
    <element id="Specimen.request">
      <path value="Specimen.request" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-servicerequest" />
      </type>
    </element>
    <element id="Specimen.request.id">
      <path value="Specimen.request.id" />
      <max value="0" />
    </element>
    <element id="Specimen.request.extension">
      <path value="Specimen.request.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.request.reference">
      <path value="Specimen.request.reference" />
      <min value="1" />
    </element>
    <element id="Specimen.request.type">
      <path value="Specimen.request.type" />
      <max value="0" />
    </element>
    <element id="Specimen.request.identifier">
      <path value="Specimen.request.identifier" />
      <max value="0" />
    </element>
    <element id="Specimen.request.display">
      <path value="Specimen.request.display" />
      <max value="0" />
    </element>
    <element id="Specimen.combined">
      <path value="Specimen.combined" />
      <max value="0" />
    </element>
    <element id="Specimen.role">
      <path value="Specimen.role" />
      <max value="0" />
    </element>
    <element id="Specimen.feature">
      <path value="Specimen.feature" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.id">
      <path value="Specimen.collection.id" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.extension:comments">
      <path value="Specimen.collection.extension" />
      <sliceName value="comments" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/ext-ot-comments" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Specimen.collection.modifierExtension">
      <path value="Specimen.collection.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.collector">
      <path value="Specimen.collection.collector" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.collector.display">
      <path value="Specimen.collection.collector.display" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.collected[x]">
      <path value="Specimen.collection.collected[x]" />
      <min value="1" />
    </element>
    <element id="Specimen.collection.duration">
      <path value="Specimen.collection.duration" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.quantity.id">
      <path value="Specimen.collection.quantity.id" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.quantity.extension">
      <path value="Specimen.collection.quantity.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.quantity.value">
      <path value="Specimen.collection.quantity.value" />
      <min value="1" />
    </element>
    <element id="Specimen.collection.method">
      <path value="Specimen.collection.method" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Specimen.collection.method.extension:guidance">
      <path value="Specimen.collection.method.extension" />
      <sliceName value="guidance" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/ext-guidance" />
      </type>
      <isModifier value="false" />
    </element>
    <element id="Specimen.collection.method.coding.version">
      <path value="Specimen.collection.method.coding.version" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.device">
      <path value="Specimen.collection.device" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure">
      <path value="Specimen.collection.procedure" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure.id">
      <path value="Specimen.collection.procedure.id" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure.extension">
      <path value="Specimen.collection.procedure.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure.reference">
      <path value="Specimen.collection.procedure.reference" />
      <min value="1" />
    </element>
    <element id="Specimen.collection.procedure.type">
      <path value="Specimen.collection.procedure.type" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure.identifier">
      <path value="Specimen.collection.procedure.identifier" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.procedure.display">
      <path value="Specimen.collection.procedure.display" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.bodySite.id">
      <path value="Specimen.collection.bodySite.id" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.bodySite.extension">
      <path value="Specimen.collection.bodySite.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.bodySite.concept">
      <path value="Specimen.collection.bodySite.concept" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Specimen.collection.bodySite.concept.extension">
      <path value="Specimen.collection.bodySite.concept.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.bodySite.concept.coding.version">
      <path value="Specimen.collection.bodySite.concept.coding.version" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.fastingStatus[x]">
      <path value="Specimen.collection.fastingStatus[x]" />
      <max value="0" />
    </element>
    <element id="Specimen.processing">
      <path value="Specimen.processing" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.id">
      <path value="Specimen.processing.id" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.extension">
      <path value="Specimen.processing.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.modifierExtension">
      <path value="Specimen.processing.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.description">
      <path value="Specimen.processing.description" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.method">
      <path value="Specimen.processing.method" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.additive">
      <path value="Specimen.processing.additive" />
      <max value="0" />
    </element>
    <element id="Specimen.processing.time[x]">
      <path value="Specimen.processing.time[x]" />
      <min value="1" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="Specimen.container">
      <path value="Specimen.container" />
      <max value="0" />
    </element>
    <element id="Specimen.container.id">
      <path value="Specimen.container.id" />
      <max value="0" />
    </element>
    <element id="Specimen.container.extension">
      <path value="Specimen.container.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.container.modifierExtension">
      <path value="Specimen.container.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Specimen.container.location">
      <path value="Specimen.container.location" />
      <max value="0" />
    </element>
    <element id="Specimen.container.specimenQuantity">
      <path value="Specimen.container.specimenQuantity" />
      <max value="0" />
    </element>
    <element id="Specimen.condition">
      <path value="Specimen.condition" />
      <max value="0" />
    </element>
    <element id="Specimen.note">
      <path value="Specimen.note" />
      <max value="0" />
      <type>
        <code value="Annotation" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-annotation" />
      </type>
    </element>
  </differential>
</StructureDefinition>