<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Bundle-ForTransaction-ADT001" />
  <name value="Bundle-ForTransaction-ADT001" />
  <status value="draft" />
  <description value="Dedalus API Framework core profile for Bundle for ADT transactions" />
  <fhirVersion value="3.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Bundle" />
  <baseDefinition value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Bundle-ForTransaction" />
  <derivation value="constraint" />
  <differential>
    <element id="Bundle.entry">
      <path value="Bundle.entry" />
      <slicing>
        <discriminator>
          <type value="type" />
          <path value="resource" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Bundle.entry:Encounter-Master">
      <path value="Bundle.entry" />
      <sliceName value="Encounter-Master" />
      <min value="1" />
      <max value="1" />
    </element>
    <element id="Bundle.entry:Encounter-Master.resource">
      <path value="Bundle.entry.resource" />
      <min value="1" />
      <type>
        <code value="Resource" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Encounter-ForADT-Master" />
      </type>
    </element>
    <element id="Bundle.entry:Encounter-Master.resource.meta.tag">
      <path value="Bundle.entry.resource.meta.tag" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Bundle.entry:Encounter-Child">
      <path value="Bundle.entry" />
      <sliceName value="Encounter-Child" />
      <min value="1" />
    </element>
    <element id="Bundle.entry:Encounter-Child.resource">
      <path value="Bundle.entry.resource" />
      <min value="1" />
      <type>
        <code value="Resource" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Encounter-ForADT-Child" />
      </type>
    </element>
    <element id="Bundle.entry:Encounter-Child.resource.meta.tag">
      <path value="Bundle.entry.resource.meta.tag" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="system" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Bundle.entry:Procedure-ForADT">
      <path value="Bundle.entry" />
      <sliceName value="Procedure-ForADT" />
    </element>
    <element id="Bundle.entry:Procedure-ForADT.resource">
      <path value="Bundle.entry.resource" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Resource" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Procedure-ForADT" />
      </type>
    </element>
    <element id="Bundle.entry:Condition-ForADT">
      <path value="Bundle.entry" />
      <sliceName value="Condition-ForADT" />
    </element>
    <element id="Bundle.entry:Condition-ForADT.resource">
      <path value="Bundle.entry.resource" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Resource" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Condition-ForADT" />
      </type>
    </element>
  </differential>
</StructureDefinition>