<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-ed-medicationadministration" />
  <name value="MedicationAdministration" />
  <status value="active" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="MedicationAdministration" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/MedicationAdministration" />
  <derivation value="constraint" />
  <differential>
    <element id="MedicationAdministration.contained">
      <path value="MedicationAdministration.contained" />
      <max value="1" />
    </element>
    <element id="MedicationAdministration.modifierExtension">
      <path value="MedicationAdministration.modifierExtension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.identifier">
      <path value="MedicationAdministration.identifier" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="MedicationAdministration.identifier.system">
      <path value="MedicationAdministration.identifier.system" />
      <fixedUri value="https://fhir.synapxe.sg/NamingSystem/sequence-no" />
    </element>
    <element id="MedicationAdministration.basedOn">
      <path value="MedicationAdministration.basedOn" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.partOf">
      <path value="MedicationAdministration.partOf" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.status">
      <path value="MedicationAdministration.status" />
      <patternCode value="completed" />
    </element>
    <element id="MedicationAdministration.statusReason">
      <path value="MedicationAdministration.statusReason" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.category">
      <path value="MedicationAdministration.category" />
      <min value="1" />
      <max 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/medicationadministration-type" />
      </binding>
    </element>
    <element id="MedicationAdministration.category.coding.system">
      <path value="MedicationAdministration.category.coding.system" />
      <fixedUri value="https://fhir.synapxe.sg/CodeSystem/medicationadministration-type" />
    </element>
    <element id="MedicationAdministration.medication">
      <path value="MedicationAdministration.medication" />
      <type>
        <code value="CodeableReference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-medication" />
      </type>
    </element>
    <element id="MedicationAdministration.medication.id">
      <path value="MedicationAdministration.medication.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.medication.extension">
      <path value="MedicationAdministration.medication.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.medication.concept">
      <path value="MedicationAdministration.medication.concept" />
      <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/med-code" />
      </binding>
    </element>
    <element id="MedicationAdministration.medication.concept.extension">
      <path value="MedicationAdministration.medication.concept.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.medication.concept.coding.system">
      <path value="MedicationAdministration.medication.concept.coding.system" />
      <fixedUri value="https://fhir.synapxe.sg/CodeSystem/med-code" />
    </element>
    <element id="MedicationAdministration.medication.reference">
      <path value="MedicationAdministration.medication.reference" />
      <max value="0" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-medication" />
        <aggregation value="contained" />
      </type>
    </element>
    <element id="MedicationAdministration.subject">
      <path value="MedicationAdministration.subject" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-patient" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-patient" />
      </type>
    </element>
    <element id="MedicationAdministration.subject.display">
      <path value="MedicationAdministration.subject.display" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.encounter">
      <path value="MedicationAdministration.encounter" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.supportingInformation">
      <path value="MedicationAdministration.supportingInformation" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.occurence[x]">
      <path value="MedicationAdministration.occurence[x]" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="MedicationAdministration.recorded">
      <path value="MedicationAdministration.recorded" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.isSubPotent">
      <path value="MedicationAdministration.isSubPotent" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.subPotentReason">
      <path value="MedicationAdministration.subPotentReason" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer">
      <path value="MedicationAdministration.performer" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.performer.id">
      <path value="MedicationAdministration.performer.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer.extension">
      <path value="MedicationAdministration.performer.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer.modifierExtension">
      <path value="MedicationAdministration.performer.modifierExtension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer.function">
      <path value="MedicationAdministration.performer.function" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="MedicationAdministration.performer.function.extension">
      <path value="MedicationAdministration.performer.function.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer.function.coding.system">
      <path value="MedicationAdministration.performer.function.coding.system" />
      <fixedUri value="http://terminology.hl7.org/CodeSystem/med-admin-perform-function" />
    </element>
    <element id="MedicationAdministration.performer.actor">
      <path value="MedicationAdministration.performer.actor" />
      <type>
        <code value="CodeableReference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
      </type>
    </element>
    <element id="MedicationAdministration.performer.actor.concept">
      <path value="MedicationAdministration.performer.actor.concept" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.performer.actor.reference">
      <path value="MedicationAdministration.performer.actor.reference" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-practitioner" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
      </type>
    </element>
    <element id="MedicationAdministration.reason">
      <path value="MedicationAdministration.reason" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.request">
      <path value="MedicationAdministration.request" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-ed-medicationrequest" />
        <aggregation value="contained" />
      </type>
    </element>
    <element id="MedicationAdministration.request.id">
      <path value="MedicationAdministration.request.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.request.extension">
      <path value="MedicationAdministration.request.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.request.reference">
      <path value="MedicationAdministration.request.reference" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.request.type">
      <path value="MedicationAdministration.request.type" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.request.identifier">
      <path value="MedicationAdministration.request.identifier" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.request.display">
      <path value="MedicationAdministration.request.display" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.device">
      <path value="MedicationAdministration.device" />
      <max value="0" />
      <type>
        <code value="CodeableReference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-device" />
      </type>
    </element>
    <element id="MedicationAdministration.device.id">
      <path value="MedicationAdministration.device.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.device.extension">
      <path value="MedicationAdministration.device.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.device.concept">
      <path value="MedicationAdministration.device.concept" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.device.reference">
      <path value="MedicationAdministration.device.reference" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.note">
      <path value="MedicationAdministration.note" />
      <max value="1" />
      <type>
        <code value="Annotation" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-annotation" />
      </type>
    </element>
    <element id="MedicationAdministration.note.author[x]">
      <path value="MedicationAdministration.note.author[x]" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-practitioner" />
      </type>
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="MedicationAdministration.dosage">
      <path value="MedicationAdministration.dosage" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.id">
      <path value="MedicationAdministration.dosage.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.extension">
      <path value="MedicationAdministration.dosage.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.modifierExtension">
      <path value="MedicationAdministration.dosage.modifierExtension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.site">
      <path value="MedicationAdministration.dosage.site" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.route">
      <path value="MedicationAdministration.dosage.route" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="MedicationAdministration.dosage.method">
      <path value="MedicationAdministration.dosage.method" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.dose">
      <path value="MedicationAdministration.dosage.dose" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.dosage.dose.id">
      <path value="MedicationAdministration.dosage.dose.id" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.dose.extension">
      <path value="MedicationAdministration.dosage.dose.extension" />
      <max value="0" />
    </element>
    <element id="MedicationAdministration.dosage.dose.value">
      <path value="MedicationAdministration.dosage.dose.value" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.dosage.dose.unit">
      <path value="MedicationAdministration.dosage.dose.unit" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.dosage.dose.system">
      <path value="MedicationAdministration.dosage.dose.system" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.dosage.dose.code">
      <path value="MedicationAdministration.dosage.dose.code" />
      <min value="1" />
    </element>
    <element id="MedicationAdministration.dosage.rate[x]">
      <path value="MedicationAdministration.dosage.rate[x]" />
      <type>
        <code value="Quantity" />
      </type>
    </element>
    <element id="MedicationAdministration.eventHistory">
      <path value="MedicationAdministration.eventHistory" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>