<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="EncounterLocation" />
  <extension url="https://fhir.kemkes.go.id/r4/StructureDefinition/ServiceClass">
    <extension url="value">
      <valueCodeableConcept>
        <coding>
          <system value="http://terminology.kemkes.go.id/CodeSystem/locationServiceClass-Outpatient" />
          <code value="reguler" />
        </coding>
      </valueCodeableConcept>
    </extension>
    <extension url="upgradeClassIndicator">
      <valueCodeableConcept>
        <coding>
          <system value="http://terminology.kemkes.go.id/CodeSystem/locationUpgradeClass" />
          <code value="kelas-tetap" />
        </coding>
      </valueCodeableConcept>
    </extension>
  </extension>
  <url value="https://fhir.kemkes.go.id/r4/StructureDefinition/EncounterLocation" />
  <name value="EncounterLocation" />
  <title value="Encounter Location Extention" />
  <status value="active" />
  <fhirVersion value="4.0.1" />
  <kind value="complex-type" />
  <abstract value="false" />
  <context>
    <type value="element" />
    <expression value="Encounter.location" />
  </context>
  <type value="Extension" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension" />
  <derivation value="constraint" />
  <differential>
    <element id="Extension">
      <path value="Extension" />
      <short value="Encounter Location Extention" />
    </element>
    <element id="Extension.extension">
      <path value="Extension.extension" />
      <min value="1" />
    </element>
    <element id="Extension.extension:serviceClass">
      <path value="Extension.extension" />
      <sliceName value="serviceClass" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Extension.extension:serviceClass.extension">
      <path value="Extension.extension.extension" />
      <min value="2" />
      <max value="2" />
    </element>
    <element id="Extension.extension:serviceClass.extension:locationServiceClass">
      <path value="Extension.extension.extension" />
      <sliceName value="locationServiceClass" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Extension.extension:serviceClass.extension:locationServiceClass.extension">
      <path value="Extension.extension.extension.extension" />
      <max value="0" />
    </element>
    <element id="Extension.extension:serviceClass.extension:locationServiceClass.url">
      <path value="Extension.extension.extension.url" />
      <fixedUri value="locationServiceClass" />
    </element>
    <element id="Extension.extension:serviceClass.extension:locationServiceClass.value[x]">
      <path value="Extension.extension.extension.value[x]" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/locationServiceClass-Inpatient" />
      </binding>
    </element>
    <element id="Extension.extension:serviceClass.extension:upgradeClassIndicator">
      <path value="Extension.extension.extension" />
      <sliceName value="upgradeClassIndicator" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Extension.extension:serviceClass.extension:upgradeClassIndicator.extension">
      <path value="Extension.extension.extension.extension" />
      <max value="0" />
    </element>
    <element id="Extension.extension:serviceClass.extension:upgradeClassIndicator.url">
      <path value="Extension.extension.extension.url" />
      <fixedUri value="upgradeClassIndicator" />
    </element>
    <element id="Extension.extension:serviceClass.extension:upgradeClassIndicator.value[x]">
      <path value="Extension.extension.extension.value[x]" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/locationUpgradeClass" />
      </binding>
    </element>
    <element id="Extension.extension:serviceClass.url">
      <path value="Extension.extension.url" />
      <fixedUri value="serviceClass" />
    </element>
    <element id="Extension.extension:serviceClass.value[x]">
      <path value="Extension.extension.value[x]" />
      <max value="0" />
    </element>
    <element id="Extension.url">
      <path value="Extension.url" />
      <fixedUri value="https://fhir.kemkes.go.id/r4/StructureDefinition/EncounterLocation" />
    </element>
    <element id="Extension.value[x]">
      <path value="Extension.value[x]" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>