<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://fhir.health.gov.il/StructureDefinition/linkageConfidence" />
  <version value="0.1.0" />
  <name value="LinkageConfidence" />
  <title value="Linkage Confidence (per Linkage.item)" />
  <status value="draft" />
  <date value="2025-10-30" />
  <publisher value="Israel Ministry of Health" />
  <contact>
    <name value="Israel MOH FHIR" />
    <telecom>
      <system value="url" />
      <value value="https://fhir.health.gov.il" />
    </telecom>
  </contact>
  <description value="Provides confidence metadata for a Linkage.item, including a numeric score (0..1), the basis for the assessment, and an optional note." />
  <jurisdiction>
    <coding>
      <system value="urn:iso:std:iso:3166" />
      <code value="IL" />
      <display value="Israel" />
    </coding>
  </jurisdiction>
  <purpose value="Supports downstream consumers in interpreting how strongly two records are believed to represent the same real-world occurrence when using Linkage." />
  <fhirVersion value="4.0.1" />
  <kind value="complex-type" />
  <abstract value="false" />
  <context>
    <type value="element" />
    <expression value="Linkage.item" />
  </context>
  <type value="Extension" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension" />
  <derivation value="constraint" />
  <differential>
    <element id="Extension">
      <path value="Extension" />
      <short value="Confidence that this Linkage.item represents the same real-world occurrence" />
      <constraint>
        <key value="lc-1" />
        <severity value="error" />
        <human value="If score is present, it must be between 0 and 1 (inclusive)." />
        <expression value="extension('score').exists() implies (extension('score').value.as(decimal) &gt;= 0 and extension('score').value.as(decimal) &lt;= 1)" />
      </constraint>
      <constraint>
        <key value="lc-2" />
        <severity value="error" />
        <human value="At least one of score, basis, or note must be present." />
        <expression value="extension('score').exists() or extension('basis').exists() or extension('note').exists()" />
      </constraint>
    </element>
    <element id="Extension.extension">
      <path value="Extension.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="Extension.extension:score">
      <path value="Extension.extension" />
      <sliceName value="score" />
      <min value="0" />
      <max value="1" />
    </element>
    <element id="Extension.extension:score.url">
      <path value="Extension.extension.url" />
      <fixedUri value="score" />
    </element>
    <element id="Extension.extension:score.value[x]">
      <path value="Extension.extension.value[x]" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="decimal" />
      </type>
    </element>
    <element id="Extension.extension:basis">
      <path value="Extension.extension" />
      <sliceName value="basis" />
      <min value="0" />
      <max value="1" />
    </element>
    <element id="Extension.extension:basis.url">
      <path value="Extension.extension.url" />
      <fixedUri value="basis" />
    </element>
    <element id="Extension.extension:basis.value[x]">
      <path value="Extension.extension.value[x]" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="CodeableConcept" />
      </type>
      <binding>
        <strength value="preferred" />
        <valueSet value="http://fhir.health.gov.il/ValueSet/linkage-basis" />
      </binding>
    </element>
    <element id="Extension.extension:note">
      <path value="Extension.extension" />
      <sliceName value="note" />
      <min value="0" />
      <max value="1" />
    </element>
    <element id="Extension.extension:note.url">
      <path value="Extension.extension.url" />
      <fixedUri value="note" />
    </element>
    <element id="Extension.extension:note.value[x]">
      <path value="Extension.extension.value[x]" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="string" />
      </type>
    </element>
    <element id="Extension.url">
      <path value="Extension.url" />
      <fixedUri value="http://fhir.health.gov.il/StructureDefinition/linkageConfidence" />
    </element>
    <element id="Extension.value[x]">
      <path value="Extension.value[x]" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>