<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ie-core-immunization" />
  <url value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-immunization" />
  <name value="IECoreImmunization" />
  <title value="IE Core Immunization" />
  <status value="draft" />
  <description value="The IE Core Immunization profile sets minimum expectations for the Immunization resource to record, search, and fetch immunization history associated with a patient, based on Irish requirements." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Immunization" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Immunization" />
  <derivation value="constraint" />
  <differential>
    <element id="Immunization.status">
      <path value="Immunization.status" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.statusReason">
      <path value="Immunization.statusReason" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.vaccineCode">
      <path value="Immunization.vaccineCode" />
      <comment value="HIQA PS 16.3.3 Administered product / 16.3.5 Vaccine code (Mandatory). R4 has one vaccineCode: use one coding for the vaccine type and one for the product where both are known." />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-vaccines" />
      </binding>
    </element>
    <element id="Immunization.patient">
      <path value="Immunization.patient" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Immunization.occurrence[x]">
      <path value="Immunization.occurrence[x]" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.primarySource">
      <path value="Immunization.primarySource" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.location">
      <path value="Immunization.location" />
      <comment value="HIQA PS 16.3.8 Administering centre (Required)." />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.performer">
      <path value="Immunization.performer" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.performer.actor">
      <path value="Immunization.performer.actor" />
      <comment value="HIQA PS 16.3.7 Immunisation administrator (Required)." />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.protocolApplied">
      <path value="Immunization.protocolApplied" />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.protocolApplied.targetDisease">
      <path value="Immunization.protocolApplied.targetDisease" />
      <comment value="HIQA PS 16.3.4 Target disease (Required)." />
      <mustSupport value="true" />
    </element>
    <element id="Immunization.protocolApplied.doseNumber[x]">
      <path value="Immunization.protocolApplied.doseNumber[x]" />
      <comment value="HIQA PS 16.3.6 Number of doses (Required)." />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>