<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="https://fhir.synapxe.sg/StructureDefinition/profile-immunization" />
  <name value="Immunization" />
  <status value="active" />
  <fhirVersion value="5.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Immunization" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Immunization" />
  <derivation value="constraint" />
  <differential>
    <element id="Immunization.identifier">
      <path value="Immunization.identifier" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Identifier" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-identifier" />
      </type>
    </element>
    <element id="Immunization.basedOn">
      <path value="Immunization.basedOn" />
      <max value="0" />
    </element>
    <element id="Immunization.statusReason">
      <path value="Immunization.statusReason" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.statusReason.extension">
      <path value="Immunization.statusReason.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.vaccineCode">
      <path value="Immunization.vaccineCode" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.vaccineCode.extension">
      <path value="Immunization.vaccineCode.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.administeredProduct">
      <path value="Immunization.administeredProduct" />
      <max value="0" />
    </element>
    <element id="Immunization.manufacturer">
      <path value="Immunization.manufacturer" />
      <type>
        <code value="CodeableReference" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="Immunization.patient">
      <path value="Immunization.patient" />
      <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="Immunization.encounter">
      <path value="Immunization.encounter" />
      <max value="0" />
    </element>
    <element id="Immunization.supportingInformation">
      <path value="Immunization.supportingInformation" />
      <max value="0" />
    </element>
    <element id="Immunization.occurrence[x]">
      <path value="Immunization.occurrence[x]" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="Immunization.informationSource">
      <path value="Immunization.informationSource" />
      <max value="0" />
    </element>
    <element id="Immunization.location">
      <path value="Immunization.location" />
      <max value="0" />
    </element>
    <element id="Immunization.site">
      <path value="Immunization.site" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.site.extension">
      <path value="Immunization.site.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.site.coding.version">
      <path value="Immunization.site.coding.version" />
      <max value="0" />
    </element>
    <element id="Immunization.route">
      <path value="Immunization.route" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.route.extension">
      <path value="Immunization.route.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.route.coding.version">
      <path value="Immunization.route.coding.version" />
      <max value="0" />
    </element>
    <element id="Immunization.doseQuantity.id">
      <path value="Immunization.doseQuantity.id" />
      <max value="0" />
    </element>
    <element id="Immunization.doseQuantity.extension">
      <path value="Immunization.doseQuantity.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.doseQuantity.value">
      <path value="Immunization.doseQuantity.value" />
      <min value="1" />
    </element>
    <element id="Immunization.doseQuantity.unit">
      <path value="Immunization.doseQuantity.unit" />
      <min value="1" />
    </element>
    <element id="Immunization.doseQuantity.system">
      <path value="Immunization.doseQuantity.system" />
      <min value="1" />
    </element>
    <element id="Immunization.doseQuantity.code">
      <path value="Immunization.doseQuantity.code" />
      <min value="1" />
    </element>
    <element id="Immunization.performer.function">
      <path value="Immunization.performer.function" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.performer.actor">
      <path value="Immunization.performer.actor" />
      <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="Immunization.note">
      <path value="Immunization.note" />
      <max value="1" />
      <type>
        <code value="Annotation" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-annotation" />
      </type>
    </element>
    <element id="Immunization.reason">
      <path value="Immunization.reason" />
      <max value="1" />
    </element>
    <element id="Immunization.reason.id">
      <path value="Immunization.reason.id" />
      <max value="0" />
    </element>
    <element id="Immunization.reason.extension">
      <path value="Immunization.reason.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.reason.concept">
      <path value="Immunization.reason.concept" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.reason.concept.extension">
      <path value="Immunization.reason.concept.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.reason.reference">
      <path value="Immunization.reason.reference" />
      <min value="1" />
    </element>
    <element id="Immunization.isSubpotent">
      <path value="Immunization.isSubpotent" />
      <max value="0" />
    </element>
    <element id="Immunization.subpotentReason">
      <path value="Immunization.subpotentReason" />
      <max value="0" />
    </element>
    <element id="Immunization.programEligibility">
      <path value="Immunization.programEligibility" />
      <max value="0" />
    </element>
    <element id="Immunization.fundingSource">
      <path value="Immunization.fundingSource" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction">
      <path value="Immunization.reaction" />
      <max value="1" />
    </element>
    <element id="Immunization.reaction.id">
      <path value="Immunization.reaction.id" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction.extension">
      <path value="Immunization.reaction.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction.modifierExtension">
      <path value="Immunization.reaction.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction.date">
      <path value="Immunization.reaction.date" />
      <min value="1" />
    </element>
    <element id="Immunization.reaction.manifestation">
      <path value="Immunization.reaction.manifestation" />
      <min value="1" />
    </element>
    <element id="Immunization.reaction.manifestation.id">
      <path value="Immunization.reaction.manifestation.id" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction.manifestation.extension">
      <path value="Immunization.reaction.manifestation.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.reaction.manifestation.concept">
      <path value="Immunization.reaction.manifestation.concept" />
      <type>
        <code value="CodeableConcept" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept" />
      </type>
    </element>
    <element id="Immunization.reaction.reported">
      <path value="Immunization.reaction.reported" />
      <min value="1" />
    </element>
    <element id="Immunization.protocolApplied.id">
      <path value="Immunization.protocolApplied.id" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.extension">
      <path value="Immunization.protocolApplied.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.modifierExtension">
      <path value="Immunization.protocolApplied.modifierExtension" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.authority">
      <path value="Immunization.protocolApplied.authority" />
      <type>
        <code value="Reference" />
        <profile value="https://fhir.synapxe.sg/StructureDefinition/profile-reference-organization" />
        <targetProfile value="https://fhir.synapxe.sg/StructureDefinition/profile-organization" />
      </type>
    </element>
    <element id="Immunization.protocolApplied.targetDisease.id">
      <path value="Immunization.protocolApplied.targetDisease.id" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.extension">
      <path value="Immunization.protocolApplied.targetDisease.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding">
      <path value="Immunization.protocolApplied.targetDisease.coding" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.id">
      <path value="Immunization.protocolApplied.targetDisease.coding.id" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.extension">
      <path value="Immunization.protocolApplied.targetDisease.coding.extension" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.system">
      <path value="Immunization.protocolApplied.targetDisease.coding.system" />
      <min value="1" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.code">
      <path value="Immunization.protocolApplied.targetDisease.coding.code" />
      <min value="1" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.display">
      <path value="Immunization.protocolApplied.targetDisease.coding.display" />
      <min value="1" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.coding.userSelected">
      <path value="Immunization.protocolApplied.targetDisease.coding.userSelected" />
      <max value="0" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease.text">
      <path value="Immunization.protocolApplied.targetDisease.text" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>