<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://sap.com/healthcare/IS-H/fhir/StructureDefinition/genericaccount/v2" />
  <version value="SAP_ISH_R4_GEN" />
  <name value="GenericAccount" />
  <status value="draft" />
  <fhirVersion value="4.0.0" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Account" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Account" />
  <derivation value="constraint" />
  <snapshot />
  <differential>
    <element id="Account.extension">
      <path value="Account.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Account.extension:diagnosis">
      <path value="Account.extension" />
      <sliceName value="diagnosis" />
      <short value="The list of diagnosis relevant to this account" />
      <definition value="The list of diagnosis relevant to this account" />
      <type>
        <code value="Extension" />
        <profile value="http://sap.com/healthcare/fhir/StructureDefinition/Account-Diagnosis" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Account.extension:diagnosis.extension">
      <path value="Account.extension.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Account.extension:diagnosis.extension:condition">
      <path value="Account.extension.extension" />
      <sliceName value="condition" />
      <short value="The diagnosis or procedure relevant to the account" />
      <definition value="Reason the account takes place. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure." />
    </element>
    <element id="Account.extension:diagnosis.extension:condition.value[x].reference">
      <path value="Account.extension.extension.value[x].reference" />
      <min value="1" />
    </element>
    <element id="Account.extension:diagnosis.extension:use">
      <path value="Account.extension.extension" />
      <sliceName value="use" />
      <short value="Role that this diagnosis has within the account (e.g. admission, billing, discharge …)" />
      <definition value="Role that this diagnosis has within the account (e.g. admission, billing, discharge …)" />
    </element>
    <element id="Account.extension:diagnosis.extension:rank">
      <path value="Account.extension.extension" />
      <sliceName value="rank" />
      <short value="Ranking of the diagnosis (for each role type)" />
      <definition value="Ranking of the diagnosis (for each role type)" />
    </element>
    <element id="Account.extension:encounter">
      <path value="Account.extension" />
      <sliceName value="encounter" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="http://sap.com/healthcare/fhir/StructureDefinition/Account-encounter" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Account.extension:account">
      <path value="Account.extension" />
      <sliceName value="account" />
      <min value="0" />
      <max value="*" />
      <type>
        <code value="Extension" />
        <profile value="http://sap.com/healthcare/fhir/StructureDefinition/Account-account" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Account.identifier">
      <path value="Account.identifier" />
      <mustSupport value="true" />
    </element>
    <element id="Account.identifier.use">
      <path value="Account.identifier.use" />
      <mustSupport value="true" />
    </element>
    <element id="Account.identifier.system">
      <path value="Account.identifier.system" />
      <mustSupport value="true" />
    </element>
    <element id="Account.identifier.value">
      <path value="Account.identifier.value" />
      <mustSupport value="true" />
    </element>
    <element id="Account.status">
      <path value="Account.status" />
      <mustSupport value="true" />
    </element>
    <element id="Account.type.coding.code">
      <path value="Account.type.coding.code" />
      <mustSupport value="true" />
    </element>
    <element id="Account.subject">
      <path value="Account.subject" />
      <mustSupport value="true" />
    </element>
    <element id="Account.subject.type">
      <path value="Account.subject.type" />
      <mustSupport value="true" />
    </element>
    <element id="Account.subject.identifier.value">
      <path value="Account.subject.identifier.value" />
      <mustSupport value="true" />
    </element>
    <element id="Account.servicePeriod">
      <path value="Account.servicePeriod" />
      <mustSupport value="true" />
    </element>
    <element id="Account.servicePeriod.start">
      <path value="Account.servicePeriod.start" />
      <mustSupport value="true" />
    </element>
    <element id="Account.servicePeriod.end">
      <path value="Account.servicePeriod.end" />
      <mustSupport value="true" />
    </element>
    <element id="Account.coverage">
      <path value="Account.coverage" />
      <mustSupport value="true" />
    </element>
    <element id="Account.coverage.extension">
      <path value="Account.coverage.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Account.coverage.extension:copayment">
      <path value="Account.coverage.extension" />
      <sliceName value="copayment" />
      <type>
        <code value="Extension" />
        <profile value="http://sap.com/healthcare/fhir/StructureDefinition/Account-copayment" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Account.coverage.extension:copayment.extension">
      <path value="Account.coverage.extension.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Account.coverage.extension:copayment.extension:copaymentobligation">
      <path value="Account.coverage.extension.extension" />
      <sliceName value="copaymentobligation" />
      <short value="copaymentobligation" />
    </element>
    <element id="Account.coverage.extension:copayment.extension:previousdays">
      <path value="Account.coverage.extension.extension" />
      <sliceName value="previousdays" />
      <short value="previous days for copayment calculation" />
    </element>
    <element id="Account.coverage.extension:copayment.extension:copaydays">
      <path value="Account.coverage.extension.extension" />
      <sliceName value="copaydays" />
      <short value="actual days for copayment calculation" />
    </element>
    <element id="Account.coverage.coverage">
      <path value="Account.coverage.coverage" />
      <mustSupport value="true" />
    </element>
    <element id="Account.coverage.coverage.identifier.value">
      <path value="Account.coverage.coverage.identifier.value" />
      <mustSupport value="true" />
    </element>
    <element id="Account.coverage.priority">
      <path value="Account.coverage.priority" />
      <mustSupport value="true" />
    </element>
    <element id="Account.owner.identifier.value">
      <path value="Account.owner.identifier.value" />
      <mustSupport value="true" />
    </element>
    <element id="Account.description">
      <path value="Account.description" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>