<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="t17-response" />
  <url value="http://ig.fhir-il-community.org/T17/StructureDefinition/t17-response" />
  <name value="T17Response" />
  <title value="T17 Response" />
  <status value="draft" />
  <description value="בדיקת קיום התחייבות, עם או בלי בקשה ליצירת התחייבות" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="CoverageEligibilityResponse" />
  <baseDefinition value="http://fhir.health.gov.il/StructureDefinition/il-core-coverage-eligibility-response" />
  <derivation value="constraint" />
  <differential>
    <element id="CoverageEligibilityResponse">
      <path value="CoverageEligibilityResponse" />
      <constraint>
        <key value="purpose-validation" />
        <severity value="error" />
        <human value="אם יש insurance.identifier או insurance.reference ומדובר ב- purpose=validation אז חייבים להיות תאריכים." />
        <expression value="(insurance.identifier.exists() or insurance.reference.exists()) and (purpose.coding.system = 'http://hl7.org/fhir/eligibilityresponse-purpose' and purpose.coding.code = 'validation') implies insurance.benefitPeriod.exists()" />
        <source value="http://ig.fhir-il-community.org/T17/StructureDefinition/t17-response" />
      </constraint>
    </element>
    <element id="CoverageEligibilityResponse.purpose">
      <path value="CoverageEligibilityResponse.purpose" />
      <max value="1" />
      <binding>
        <strength value="required" />
        <valueSet value="http://ig.fhir-il-community.org/T17/ValueSet/t17-eligibilityresponse-purpose" />
      </binding>
    </element>
    <element id="CoverageEligibilityResponse.patient.identifier.system">
      <path value="CoverageEligibilityResponse.patient.identifier.system" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.patient.identifier.value">
      <path value="CoverageEligibilityResponse.patient.identifier.value" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.requestor.identifier.system">
      <path value="CoverageEligibilityResponse.requestor.identifier.system" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.requestor.identifier.value">
      <path value="CoverageEligibilityResponse.requestor.identifier.value" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.request">
      <path value="CoverageEligibilityResponse.request" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ig.fhir-il-community.org/T17/StructureDefinition/t17-request" />
      </type>
    </element>
    <element id="CoverageEligibilityResponse.insurer.identifier">
      <path value="CoverageEligibilityResponse.insurer.identifier" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurer.identifier.system">
      <path value="CoverageEligibilityResponse.insurer.identifier.system" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurer.identifier.value">
      <path value="CoverageEligibilityResponse.insurer.identifier.value" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.coverage">
      <path value="CoverageEligibilityResponse.insurance.coverage" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ig.fhir-il-community.org/T17/StructureDefinition/t17-obligation" />
      </type>
    </element>
    <element id="CoverageEligibilityResponse.insurance.benefitPeriod.start">
      <path value="CoverageEligibilityResponse.insurance.benefitPeriod.start" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.benefitPeriod.end">
      <path value="CoverageEligibilityResponse.insurance.benefitPeriod.end" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.productOrService.coding">
      <path value="CoverageEligibilityResponse.insurance.item.productOrService.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <description value="סלייסינג לקוד משרד הבריאות" />
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.productOrService.coding:moh">
      <path value="CoverageEligibilityResponse.insurance.item.productOrService.coding" />
      <sliceName value="moh" />
      <min value="1" />
      <max value="1" />
      <binding>
        <strength value="required" />
        <valueSet value="http://fhir.health.gov.il/ValueSet/medical-service-moh" />
      </binding>
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.productOrService.coding:moh.system">
      <path value="CoverageEligibilityResponse.insurance.item.productOrService.coding.system" />
      <min value="1" />
      <fixedUri value="http://fhir.health.gov.il/cs/medical-service-moh" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.productOrService.coding:moh.code">
      <path value="CoverageEligibilityResponse.insurance.item.productOrService.coding.code" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.modifier">
      <path value="CoverageEligibilityResponse.insurance.item.modifier" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://fhir.health.gov.il/ValueSet/tofes17-reject-codes" />
      </binding>
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.modifier.coding">
      <path value="CoverageEligibilityResponse.insurance.item.modifier.coding" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <description value="סלייסינג לקוד משרד הבריאות" />
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.modifier.coding:moh">
      <path value="CoverageEligibilityResponse.insurance.item.modifier.coding" />
      <sliceName value="moh" />
      <min value="0" />
      <max value="1" />
      <binding>
        <strength value="required" />
        <valueSet value="http://fhir.health.gov.il/ValueSet/tofes17-reject-codes" />
      </binding>
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.modifier.coding:moh.system">
      <path value="CoverageEligibilityResponse.insurance.item.modifier.coding.system" />
      <min value="1" />
      <fixedUri value="http://fhir.health.gov.il/cs/moh-form17-issue-code" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.modifier.coding:moh.code">
      <path value="CoverageEligibilityResponse.insurance.item.modifier.coding.code" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.insurance.item.excluded">
      <path value="CoverageEligibilityResponse.insurance.item.excluded" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.error.extension">
      <path value="CoverageEligibilityResponse.error.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
    </element>
    <element id="CoverageEligibilityResponse.error.extension:issue-regards">
      <path value="CoverageEligibilityResponse.error.extension" />
      <sliceName value="issue-regards" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="http://fhir.outburn.co.il/StructureDefinition/issue-regards" />
      </type>
    </element>
    <element id="CoverageEligibilityResponse.error.extension:issue-regards.value[x]">
      <path value="CoverageEligibilityResponse.error.extension.value[x]" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="$this" />
        </discriminator>
        <ordered value="false" />
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.error.extension:issue-regards.value[x]:valueCoding">
      <path value="CoverageEligibilityResponse.error.extension.value[x]" />
      <sliceName value="valueCoding" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Coding" />
      </type>
    </element>
    <element id="CoverageEligibilityResponse.error.extension:issue-regards.value[x]:valueCoding.system">
      <path value="CoverageEligibilityResponse.error.extension.value[x].system" />
      <min value="1" />
      <fixedUri value="http://fhir.health.gov.il/cs/medical-service-moh" />
    </element>
    <element id="CoverageEligibilityResponse.error.extension:issue-regards.value[x]:valueCoding.code">
      <path value="CoverageEligibilityResponse.error.extension.value[x].code" />
      <min value="1" />
    </element>
    <element id="CoverageEligibilityResponse.error.code">
      <path value="CoverageEligibilityResponse.error.code" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://fhir.health.gov.il/ValueSet/tofes17-error-codes" />
      </binding>
    </element>
  </differential>
</StructureDefinition>