<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="SatuSehatImmunization" />
  <url value="https://fhir.kemkes.go.id/r4/StructureDefinition/Immunization" />
  <name value="SatuSehatImmunization" />
  <title value="Satu Sehat Immunization" />
  <status value="active" />
  <date value="2024-01-01" />
  <description value="Defines the ID Core constraints and extensions on the Immunization resource for the minimal set of data to query and retrieve an individual's immunisation information." />
  <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.identifier">
      <path value="Immunization.identifier" />
      <definition value="Berisi data ID internal faskes untuk pencatatan imunisasi ini dengan tipe data Identifier." />
      <max value="1" />
    </element>
    <element id="Immunization.status">
      <path value="Immunization.status" />
      <definition value="Berisi data status proses imunisasi dengan tipe data code." />
    </element>
    <element id="Immunization.statusReason">
      <path value="Immunization.statusReason" />
      <definition value="Berisi data alasan yang menyebabkan tidak dilakukannya vaksinasi dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.vaccineCode">
      <path value="Immunization.vaccineCode" />
      <definition value="Berisi dua skema pemilihan kode vaksin yang dituliskan pada elemen Immunization.vaccineCode dengan tipe data CodeableConcept, yang nilainya mengacu pada data terminologi akan menggunakan kode obat yang tersedia pada kf+a (kamus farmasi dan alat kesehatan)." />
    </element>
    <element id="Immunization.patient">
      <path value="Immunization.patient" />
      <definition value="Berisi data pasien yang mendapatkan imunisasi dengan tipe data Reference, yang direferensikan ke data yang tersimpan di resource Patient." />
    </element>
    <element id="Immunization.encounter">
      <path value="Immunization.encounter" />
      <definition value="Berisi data kunjungan di mana proses imunisasi terjadi dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Encounter." />
    </element>
    <element id="Immunization.occurrence[x]">
      <path value="Immunization.occurrence[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <definition value="Berisi data mengenai tanggal vaksin diberikan atau akan diberikan." />
    </element>
    <element id="Immunization.occurrence[x]:occurrenceDateTime">
      <path value="Immunization.occurrence[x]" />
      <sliceName value="occurrenceDateTime" />
      <definition value="Berisi data kapan vaksin diadministrasikan dengan tipe data dateTime, dengan format yang diperbolehkan YYYY, YYYY-MM, YYYY-MM-DD atau YYYY-MM-DDThh:mm:ss+zz:zz." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="dateTime" />
      </type>
    </element>
    <element id="Immunization.occurrence[x]:occurrenceString">
      <path value="Immunization.occurrence[x]" />
      <sliceName value="occurrenceString" />
      <definition value="Berisi data kapan vaksin diadministrasikan dengan tipe data string." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="Immunization.recorded">
      <path value="Immunization.recorded" />
      <definition value="Berisi data kapan pencatatan vaksin dicatatkan (kemungkinan terjadi setelah vaksin diadministrasikan) dengan tipe data dateTime, dengan format yang diperbolehkan YYYY, YYYY-MM, YYYY-MM-DD atau YYYY-MM-DDThh:mm:ss+zz:zz." />
    </element>
    <element id="Immunization.primarySource">
      <path value="Immunization.primarySource" />
      <definition value="Berisi data apakah sumber informasi data vaksinasi berasal dari orang yang melakukan administrasi vaksin." />
    </element>
    <element id="Immunization.reportOrigin">
      <path value="Immunization.reportOrigin" />
      <definition value="Berisi sumber data vaksinasi apabila data vaksinasi tidak berdasarkan informasi langsung dari orang yang melakukan administrasi vaksin dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.location">
      <path value="Immunization.location" />
      <definition value="Berisi data fasilitas pelayanan kesehatan di mana proses imunisasi terjadi dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Location." />
    </element>
    <element id="Immunization.manufacturer">
      <path value="Immunization.manufacturer" />
      <definition value="Berisi data nama pabrik pembuat/produksi vaksin dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Organization." />
    </element>
    <element id="Immunization.lotNumber">
      <path value="Immunization.lotNumber" />
      <definition value="Berisi data nomor batch vaksin yang diberikan dengan tipe data string." />
    </element>
    <element id="Immunization.expirationDate">
      <path value="Immunization.expirationDate" />
      <definition value="Berisi data tanggal kadaluarsa vaksin yang diberikan dengan tipe data date dalam format YYYY-MM-DD." />
    </element>
    <element id="Immunization.site">
      <path value="Immunization.site" />
      <definition value="Berisi data bagian tubuh pasien yang digunakan untuk pemberian vaksin dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.route">
      <path value="Immunization.route" />
      <definition value="Berisi data rute atau cara memasukkan vaksinasi ke dalam tubuh dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.doseQuantity">
      <path value="Immunization.doseQuantity" />
      <definition value="Berisi data jumlah dosis vaksinasi yang diberikan dalam 1 pemberian dengan tipe data SimpleQuantity." />
    </element>
    <element id="Immunization.performer">
      <path value="Immunization.performer" />
      <definition value="Berisi data tenaga kesehatan yang melakukan pemberian vaksin dengan tipe data BackboneElement." />
      <max value="1" />
    </element>
    <element id="Immunization.performer.function">
      <path value="Immunization.performer.function" />
      <definition value="Berisi data peran tenaga kesehatan dalam proses vaksin/imunisasi dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.performer.actor">
      <path value="Immunization.performer.actor" />
      <definition value="Berisi data tenaga kesehatan atau organisasi yang memberikan imunisasi/vaksin dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Practitioner | PractitionerRole | Organization." />
    </element>
    <element id="Immunization.note">
      <path value="Immunization.note" />
      <definition value="Berisi data catatan atau keterangan tambahan terkait imunisasi/vaksin yang dibutuhkan dengan tipe data Annotation." />
      <max value="1" />
    </element>
    <element id="Immunization.reasonCode">
      <path value="Immunization.reasonCode" />
      <definition value="Berisi data kategori imunisasi yang dilakukan berdasarkan hierarki yang tertulis di Peraturan Menteri Kesehatan No. 12 tahun 2017 tentang Penyelenggaraan Imunisasi dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="Immunization.reasonReference">
      <path value="Immunization.reasonReference" />
      <definition value="Berisi data kondisi, observasi atau hasil diagnosis yang menjadi dasar dilakukannya imunisasi dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Condition | Observation | DiagnosticReport." />
      <max value="1" />
    </element>
    <element id="Immunization.isSubpotent">
      <path value="Immunization.isSubpotent" />
      <definition value="Berisi data indikasi sub potensi dosis pemberian vaksin." />
    </element>
    <element id="Immunization.subpotentReason">
      <path value="Immunization.subpotentReason" />
      <definition value="Berisi data alasan yang mendasari sub potensi pemberian vaksin dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="Immunization.education">
      <path value="Immunization.education" />
      <definition value="Berisi data materi edukasi yang diberikan kepada pasien ketika pemberian vaksin dengan tipe data BackboneElement." />
      <max value="1" />
    </element>
    <element id="Immunization.education.documentType">
      <path value="Immunization.education.documentType" />
      <definition value="Berisi data identifier untuk materi edukasi imunisasi dengan tipe data string." />
    </element>
    <element id="Immunization.education.reference">
      <path value="Immunization.education.reference" />
      <definition value="Berisi data rujukan materi edukasi imunisasi dengan tipe data uri." />
    </element>
    <element id="Immunization.education.publicationDate">
      <path value="Immunization.education.publicationDate" />
      <definition value="Berisi data tanggal dilakukannya proses publikasi materi edukasi imunisasi/vaksin dengan tipe data dateTime, dengan format yang diperbolehkan YYYY, YYYY-MM, YYYY-MM-DD atau YYYY-MM-DDThh:mm:ss+zz:zz." />
    </element>
    <element id="Immunization.education.presentationDate">
      <path value="Immunization.education.presentationDate" />
      <definition value="Berisi data tanggal dilakukannya proses presentasi materi edukasi imunisasi/vaksin dengan tipe data dateTime, dengan format yang diperbolehkan YYYY, YYYY-MM, YYYY-MM-DD atau YYYY-MM-DDThh:mm:ss+zz:zz." />
    </element>
    <element id="Immunization.programEligibility">
      <path value="Immunization.programEligibility" />
      <definition value="Berisi data eligibilitas pasien untuk mendapatkan subsidi vaksin/imunisasi dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="Immunization.fundingSource">
      <path value="Immunization.fundingSource" />
      <definition value="Berisi data sumber pembiayaan imunisasi/vaksin yang diberikan dengan tipe data CodeableConcept." />
    </element>
    <element id="Immunization.reaction">
      <path value="Immunization.reaction" />
      <definition value="Berisi data reaksi yang terjadi setelah pemberian vaksin/imunisasi atau Kejadian Ikutan Pasca Imunisasi (KIPI) dengan tipe data BackboneElement." />
      <max value="1" />
    </element>
    <element id="Immunization.reaction.date">
      <path value="Immunization.reaction.date" />
      <definition value="Berisi data waktu ketika reaksi vaksin terjadi dengan tipe data dateTime, dengan format yang diperbolehkan YYYY, YYYY-MM, YYYY-MM-DD atau YYYY-MM-DDThh:mm:ss+zz:zz." />
    </element>
    <element id="Immunization.reaction.detail">
      <path value="Immunization.reaction.detail" />
      <definition value="Berisi data informasi detail mengenai reaksi vaksin dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Observation." />
    </element>
    <element id="Immunization.reaction.reported">
      <path value="Immunization.reaction.reported" />
      <definition value="Berisi data yang mengindikasikan apakah reaksi vaksin dilaporkan sendiri oleh pasien." />
    </element>
    <element id="Immunization.protocolApplied">
      <path value="Immunization.protocolApplied" />
      <definition value="Berisi data protokol pemberian vaksin yang diikuti oleh tenaga kesehatan pemberi vaksin dengan tipe data BackboneElement." />
      <max value="1" />
    </element>
    <element id="Immunization.protocolApplied.series">
      <path value="Immunization.protocolApplied.series" />
      <definition value="Berisi data nama serial vaksin dengan tipe data string." />
    </element>
    <element id="Immunization.protocolApplied.authority">
      <path value="Immunization.protocolApplied.authority" />
      <definition value="Berisi data pihak yang bertanggungjawab untuk mempublikasikan rekomendasi protokol vaksin dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Organization." />
    </element>
    <element id="Immunization.protocolApplied.targetDisease">
      <path value="Immunization.protocolApplied.targetDisease" />
      <definition value="Berisi data jenis penyakit yang dicegah dengan pemberian vaksin dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="Immunization.protocolApplied.doseNumber[x]">
      <path value="Immunization.protocolApplied.doseNumber[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <definition value="Berisi data urutan dosis vaksin dalam seri pemberian vaksin." />
    </element>
    <element id="Immunization.protocolApplied.doseNumber[x]:doseNumberPositiveInt">
      <path value="Immunization.protocolApplied.doseNumber[x]" />
      <sliceName value="doseNumberPositiveInt" />
      <definition value="Berisi data urutan dosis vaksin dalam seri pemberian vaksin yang direkomendasikan untuk diisi dengan tipe data positiveInt." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="positiveInt" />
      </type>
    </element>
    <element id="Immunization.protocolApplied.doseNumber[x]:doseNumberString">
      <path value="Immunization.protocolApplied.doseNumber[x]" />
      <sliceName value="doseNumberString" />
      <definition value="Berisi data urutan dosis vaksin dalam seri pemberian vaksin dengan tipe data string." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="Immunization.protocolApplied.seriesDoses[x]">
      <path value="Immunization.protocolApplied.seriesDoses[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <definition value="Berisi data jumlah dosis yang dianjurkan untuk mencapai imunitas." />
    </element>
    <element id="Immunization.protocolApplied.seriesDoses[x]:seriesDosesPositiveInt">
      <path value="Immunization.protocolApplied.seriesDoses[x]" />
      <sliceName value="seriesDosesPositiveInt" />
      <definition value="Berisi data jumlah dosis yang dianjurkan untuk mencapai imunitas dengan tipe data positiveInt." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="positiveInt" />
      </type>
    </element>
    <element id="Immunization.protocolApplied.seriesDoses[x]:seriesDosesString">
      <path value="Immunization.protocolApplied.seriesDoses[x]" />
      <sliceName value="seriesDosesString" />
      <definition value="Berisi data jumlah dosis yang dianjurkan untuk mencapai imunitas dengan tipe data string." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
  </differential>
</StructureDefinition>