<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="IDCoreObservation" />
  <url value="https://fhir.kemkes.go.id/r4/StructureDefinition/IDCoreObservation" />
  <name value="IDCoreObservation" />
  <status value="active" />
  <description value="ID Core Observation profile" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Observation" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Observation" />
  <derivation value="constraint" />
  <differential>
    <element id="Observation.status">
      <path value="Observation.status" />
      <binding>
        <strength value="required" />
        <valueSet value="http://hl7.org/fhir/ValueSet/observation-status" />
      </binding>
    </element>
    <element id="Observation.category">
      <path value="Observation.category" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.hl7.org/ValueSet/v3-ObservationCategory" />
      </binding>
    </element>
    <element id="Observation.code">
      <path value="Observation.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/Observation.code" />
      </binding>
    </element>
    <element id="Observation.subject">
      <path value="Observation.subject" />
      <min value="1" />
    </element>
    <element id="Observation.encounter">
      <path value="Observation.encounter" />
      <min value="1" />
    </element>
    <element id="Observation.dataAbsentReason">
      <path value="Observation.dataAbsentReason" />
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="Observation.interpretation">
      <path value="Observation.interpretation" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/Observation.interpretation" />
      </binding>
    </element>
    <element id="Observation.bodySite">
      <path value="Observation.bodySite" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/Observation.bodysite" />
      </binding>
    </element>
    <element id="Observation.method">
      <path value="Observation.method" />
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="Observation.referenceRange.type">
      <path value="Observation.referenceRange.type" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.hl7.org/ValueSet/referencerange-meaning" />
      </binding>
    </element>
    <element id="Observation.referenceRange.appliesTo">
      <path value="Observation.referenceRange.appliesTo" />
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="Observation.component.code">
      <path value="Observation.component.code" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/Observation.code" />
      </binding>
    </element>
    <element id="Observation.component.dataAbsentReason">
      <path value="Observation.component.dataAbsentReason" />
      <binding>
        <strength value="required" />
      </binding>
    </element>
    <element id="Observation.component.interpretation">
      <path value="Observation.component.interpretation" />
      <binding>
        <strength value="required" />
        <valueSet value="http://terminology.kemkes.go.id/ValueSet/Observation.interpretation" />
      </binding>
    </element>
  </differential>
</StructureDefinition>