<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="SenaiteSpecimen" />
  <url value="https://senaite.com/modeling/fhir/StructureDefinition/SenaiteSpecimen" />
  <name value="SenaiteSpecimen" />
  <status value="draft" />
  <description value="This is the specimen to accompany the ServiceRequest" />
  <fhirVersion value="4.3.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.extension">
      <path value="Specimen.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.modifierExtension">
      <path value="Specimen.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Specimen.accessionIdentifier">
      <path value="Specimen.accessionIdentifier" />
      <max value="0" />
    </element>
    <element id="Specimen.type">
      <path value="Specimen.type" />
      <min value="1" />
    </element>
    <element id="Specimen.type.extension">
      <path value="Specimen.type.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.type.coding">
      <path value="Specimen.type.coding" />
      <min value="1" />
      <max value="1" />
      <binding>
        <strength value="preferred" />
        <valueSet value="http://snomed.info/sct" />
      </binding>
    </element>
    <element id="Specimen.type.coding.extension">
      <path value="Specimen.type.coding.extension" />
      <max value="0" />
    </element>
    <element id="Specimen.type.coding.version">
      <path value="Specimen.type.coding.version" />
      <max value="0" />
    </element>
    <element id="Specimen.type.coding.userSelected">
      <path value="Specimen.type.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Specimen.subject">
      <path value="Specimen.subject" />
      <max value="0" />
    </element>
    <element id="Specimen.receivedTime">
      <path value="Specimen.receivedTime" />
      <max value="0" />
    </element>
    <element id="Specimen.parent">
      <path value="Specimen.parent" />
      <max value="0" />
    </element>
    <element id="Specimen.request">
      <path value="Specimen.request" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.collected[x]">
      <path value="Specimen.collection.collected[x]" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="Specimen.collection.duration">
      <path value="Specimen.collection.duration" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.quantity">
      <path value="Specimen.collection.quantity" />
      <max value="0" />
    </element>
    <element id="Specimen.collection.method">
      <path value="Specimen.collection.method" />
      <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.container">
      <path value="Specimen.container" />
      <max value="0" />
    </element>
    <element id="Specimen.condition">
      <path value="Specimen.condition" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>