<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="SatuSehatChargeItem" />
  <url value="https://fhir.kemkes.go.id/r4/StructureDefinition/ChargeItem" />
  <name value="SatuSehatChargeItem" />
  <title value="Satu Sehat Charge Item" />
  <status value="active" />
  <date value="2024-01-01" />
  <description value="Defines the ID Core constraints and extensions on the ChargeItem resource for the minimal set of data to query and retrieve Charged Items information." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="ChargeItem" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/ChargeItem" />
  <derivation value="constraint" />
  <differential>
    <element id="ChargeItem.extension:unitPrice">
      <path value="ChargeItem.extension" />
      <sliceName value="unitPrice" />
      <definition value="Berisi data biaya atau tarif tindakan dan layanan dengan tipe data Money." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.kemkes.go.id/r4/StructureDefinition/UnitPrice" />
      </type>
    </element>
    <element id="ChargeItem.extension:totalPrice">
      <path value="ChargeItem.extension" />
      <sliceName value="totalPrice" />
      <definition value="Berisi data total biaya atau tarif tindakan dan layanan dengan tipe data Money." />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.kemkes.go.id/r4/StructureDefinition/TotalPrice" />
      </type>
    </element>
    <element id="ChargeItem.extension:chargeItemResponse">
      <path value="ChargeItem.extension" />
      <sliceName value="chargeItemResponse" />
      <definition value="Berisi data respon persetujuan tindakan dan layanan." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.kemkes.go.id/r4/StructureDefinition/ChargeItemResponse" />
      </type>
    </element>
    <element id="ChargeItem.identifier">
      <path value="ChargeItem.identifier" />
      <definition value="Berisi data ID lokal terkait program yang dijalankan dengan tipe data Identifier." />
      <max value="1" />
    </element>
    <element id="ChargeItem.definitionUri">
      <path value="ChargeItem.definitionUri" />
      <definition value="Berisi data referensi sumber informasi harga (eksternal), aturan penerapan untuk kode yang digunakan ChargeItem dengan tipe data uri." />
      <max value="1" />
    </element>
    <element id="ChargeItem.definitionCanonical">
      <path value="ChargeItem.definitionCanonical" />
      <definition value="Berisi data referensi sumber informasi harga, aturan aplikasi untuk kode yang digunakan ChargeItem dengan tipe data canonical." />
      <max value="1" />
    </element>
    <element id="ChargeItem.status">
      <path value="ChargeItem.status" />
      <definition value="Berisi data yang menyatakan status ChargeItem saat ini dengan tipe data code, yang nilainya mengacu pada data terminologi ChargeItemStatus." />
    </element>
    <element id="ChargeItem.partOf">
      <path value="ChargeItem.partOf" />
      <definition value="Berisi data ChargeItem dapat dikelompokkan ke ChargeItem yang lebih besar yang mencakup seluruh rangkaian dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource ChargeItem." />
      <max value="1" />
    </element>
    <element id="ChargeItem.code">
      <path value="ChargeItem.code" />
      <definition value="Berisi kode untuk mengidentifikasi tagihan, misalnya kode billing, dengan tipe data CodeableConcept." />
    </element>
    <element id="ChargeItem.code.coding">
      <path value="ChargeItem.code.coding" />
      <definition value="Berisi kode untuk mengidentifikasi tagihan, misalnya kode billing, dengan tipe data Coding, yang nilainya dapat mengacu pada contoh data terminologi Charge Item Code." />
    </element>
    <element id="ChargeItem.subject">
      <path value="ChargeItem.subject" />
      <definition value="Berisi data pasien yang telah dilakukan tindakan dengan tipe data Reference, yang direferensikan ke data yang tersimpan di resource Patient | Group." />
    </element>
    <element id="ChargeItem.context">
      <path value="ChargeItem.context" />
      <definition value="Berisi data terkait kunjungan yang perlu ditagihkan dengan tipe data Reference, yang direferensikan ke data yang tersimpan di resource Encounter | EpisodeOfCare." />
    </element>
    <element id="ChargeItem.occurrence[x]">
      <path value="ChargeItem.occurrence[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <definition value="Berisi data informasi tanggal/waktu atau durasi saat layanan yang dikenakan biaya diterapkan." />
    </element>
    <element id="ChargeItem.occurrence[x]:occurrenceDateTime">
      <path value="ChargeItem.occurrence[x]" />
      <sliceName value="occurrenceDateTime" />
      <definition value="Berisi data informasi tanggal/waktu atau durasi saat layanan yang dikenakan biaya diterapkan 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="ChargeItem.occurrence[x]:occurrencePeriod">
      <path value="ChargeItem.occurrence[x]" />
      <sliceName value="occurrencePeriod" />
      <definition value="Berisi data informasi tanggal/waktu atau durasi saat layanan yang dikenakan biaya diterapkan dengan tipe data Period." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Period" />
      </type>
    </element>
    <element id="ChargeItem.occurrence[x]:occurrenceTiming">
      <path value="ChargeItem.occurrence[x]" />
      <sliceName value="occurrenceTiming" />
      <definition value="Berisi data informasi tanggal/waktu atau durasi saat layanan yang dikenakan biaya diterapkan dengan tipe data Timing." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Timing" />
      </type>
    </element>
    <element id="ChargeItem.performer">
      <path value="ChargeItem.performer" />
      <max value="1" />
    </element>
    <element id="ChargeItem.performer.function">
      <path value="ChargeItem.performer.function" />
      <definition value="Berisi data yang menjelaskan jenis kinerja atau partisipasi (misalnya ahli bedah utama, ahli anestesi) dengan tipe data CodeableConcept." />
    </element>
    <element id="ChargeItem.performer.function.coding">
      <path value="ChargeItem.performer.function.coding" />
      <definition value="Berisi data yang menjelaskan jenis kinerja atau partisipasi (misalnya ahli bedah utama, ahli anestesi) dengan tipe data CodeableConcept, yang nilainya mengacu pada data terminologi Procedure Performer Role Codes." />
    </element>
    <element id="ChargeItem.performer.actor">
      <path value="ChargeItem.performer.actor" />
      <definition value="Berisi data perangkat, praktisi, dan lain-lain yang melakukan atau berpartisipasi dalam layanan dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Practitioner | PractitionerRole | Organization | HealthcareService | CareTeam | Patient | Device | RelatedPerson." />
    </element>
    <element id="ChargeItem.performingOrganization">
      <path value="ChargeItem.performingOrganization" />
      <definition value="Berisi data organisasi yang melakukan layanan dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Organization." />
    </element>
    <element id="ChargeItem.requestingOrganization">
      <path value="ChargeItem.requestingOrganization" />
      <definition value="Berisi data organisasi yang meminta layanan dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Organization." />
    </element>
    <element id="ChargeItem.costCenter">
      <path value="ChargeItem.costCenter" />
      <definition value="Berisi data pusat biaya keuangan yang memungkinkan pelacakan atribusi biaya dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Organization." />
    </element>
    <element id="ChargeItem.quantity">
      <path value="ChargeItem.quantity" />
      <definition value="Berisi data kuantitas item tagihan yang telah dilayani dengan tipe data Quantity." />
    </element>
    <element id="ChargeItem.bodysite">
      <path value="ChargeItem.bodysite" />
      <definition value="Berisi data lokasi anatomi tubuh di mana layanan terkait telah diterapkan dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="ChargeItem.bodysite.coding">
      <path value="ChargeItem.bodysite.coding" />
      <definition value="Berisi data lokasi anatomi tubuh di mana layanan terkait telah diterapkan dengan tipe data Coding. Nilainya mengacu pada SNOMED CT Body Structures." />
    </element>
    <element id="ChargeItem.factorOverride">
      <path value="ChargeItem.factorOverride" />
      <definition value="Berisi data terkait pemotongan biaya yang telah ditentukan dengan aturan yang terkait dengan kode dengan tipe data decimal." />
    </element>
    <element id="ChargeItem.priceOverride">
      <path value="ChargeItem.priceOverride" />
      <definition value="Berisi data harga total untuk item yang dapat ditagih, memperhitungkan kuantitas dengan tipe data Money." />
    </element>
    <element id="ChargeItem.overrideReason">
      <path value="ChargeItem.overrideReason" />
      <definition value="Berisi data alasan tindakan jika daftar harga atau faktor berbasis aturan yang terkait dengan kode diganti dengan tipe data yang digunakan adalah string." />
    </element>
    <element id="ChargeItem.enterer">
      <path value="ChargeItem.enterer" />
      <definition value="Berisi data perangkat, praktisi, dan lain-lain yang memasukkan data item biaya dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Practitioner | PractitionerRole | Organization | CareTeam | Patient | Device | RelatedPerson." />
    </element>
    <element id="ChargeItem.enteredDate">
      <path value="ChargeItem.enteredDate" />
      <definition value="Berisi data tanggal item biaya ketika dimasukkan 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="ChargeItem.reason">
      <path value="ChargeItem.reason" />
      <definition value="Berisi data alasan suatu peristiwa terjadi dalam bentuk kode atau tekstual dengan tipe data CodeableConcept." />
      <max value="1" />
    </element>
    <element id="ChargeItem.reason.coding">
      <path value="ChargeItem.reason.coding" />
      <definition value="Berisi data alasan suatu peristiwa terjadi dalam bentuk kode atau tekstual dengan tipe data Coding. Nilainya mengacu pada ICD-10 Codes." />
    </element>
    <element id="ChargeItem.service">
      <path value="ChargeItem.service" />
      <definition value="Berisi data layanan yang diberikan yang menyebabkan tagihan dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource DiagnosticReport | ImagingStudy | Immunization | MedicationAdministration | MedicationDispense | Observation | Procedure | ServiceRequest | SupplyDelivery." />
      <max value="1" />
    </element>
    <element id="ChargeItem.product[x]">
      <path value="ChargeItem.product[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <definition value="Berisi data perangkat, makanan, obat-obatan, atau produk lain yang sedang ditagihkan baik dengan kode jenis atau referensi ke sebuah instans." />
    </element>
    <element id="ChargeItem.product[x]:productCodeableConcept">
      <path value="ChargeItem.product[x]" />
      <sliceName value="productCodeableConcept" />
      <definition value="Berisi data perangkat, makanan, obat-obatan, atau produk lain yang sedang ditagihkan baik dengan kode jenis atau referensi ke sebuah instans dengan tipe data CodeableConcept." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
    </element>
    <element id="ChargeItem.product[x]:productReference">
      <path value="ChargeItem.product[x]" />
      <sliceName value="productReference" />
      <definition value="Berisi data perangkat, makanan, obat-obatan, atau produk lain yang sedang ditagihkan baik dengan kode jenis atau referensi ke sebuah instans dengan tipe data Reference, yang direferensikan ke data yang tersimpan di resource Device | Medication | Substance." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Device" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Medication" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Substance" />
      </type>
    </element>
    <element id="ChargeItem.account">
      <path value="ChargeItem.account" />
      <definition value="Berisi data akun untuk menempatkan ChargeItem dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Account." />
      <max value="1" />
    </element>
    <element id="ChargeItem.note">
      <path value="ChargeItem.note" />
      <definition value="Berisi data komentar yang dibuat tentang peristiwa oleh petugas yang melakukan, subjek atau peserta lainnya dengan tipe data Annotation." />
      <max value="1" />
    </element>
    <element id="ChargeItem.supportingInformation">
      <path value="ChargeItem.supportingInformation" />
      <definition value="Berisi data informasi lebih lanjut yang mendukung tagihan dengan tipe data Reference yang direferensikan ke data yang tersimpan di resource Any." />
      <max value="1" />
    </element>
  </differential>
</StructureDefinition>