<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="StfObduktion" />
  <url value="http://gematik.de/fhir/oegd/stf/StructureDefinition/StfObduktion" />
  <version value="1.0.2" />
  <name value="StfObduktion" />
  <title value="STF Obduktion" />
  <status value="active" />
  <experimental value="false" />
  <date value="2026-03-30" />
  <publisher value="ELFA Maßnahme Interoperabilität" />
  <description value="Abbildung der Informationen zu einer Obduktion im Kontext der STF" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Procedure" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Procedure" />
  <derivation value="constraint" />
  <differential>
    <element id="Procedure.basedOn">
      <path value="Procedure.basedOn" />
      <comment value="Zuordnung zum Antrag einer Obduktion" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ServiceRequest" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Procedure.status">
      <path value="Procedure.status" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.code">
      <path value="Procedure.code" />
      <patternCodeableConcept>
        <coding>
          <system value="http://snomed.info/sct" />
          <code value="29240004" />
        </coding>
      </patternCodeableConcept>
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performed[x]">
      <path value="Procedure.performed[x]" />
      <comment value="Uhrzeit der Obduktion" />
      <type>
        <code value="dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Procedure.asserter">
      <path value="Procedure.asserter" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.asserter.reference">
      <path value="Procedure.asserter.reference" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.asserter.display">
      <path value="Procedure.asserter.display" />
      <comment value="Bei wem die Obduktion beantragt wurde, bzw. Ausstellender Arzt der Obduktion" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer">
      <path value="Procedure.performer" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="function" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <comment value="Angaben zur durchführenden Person oder Institution. Sind Person und Institution bekannt, ist als performer die PractitionerRole zu verwenden. Alternativ kann die Institution (Organization) als onBehalfOf angegeben werden." />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer.function">
      <path value="Procedure.performer.function" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://gematik.de/fhir/oegd/stf/ValueSet/StfOrganisationsTypObduktionVS" />
      </binding>
    </element>
    <element id="Procedure.performer.actor">
      <path value="Procedure.performer.actor" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer.actor.display">
      <path value="Procedure.performer.actor.display" />
      <comment value="Name Pathologisches Institut oder Gerichtsmedizinisches Institut" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer.onBehalfOf">
      <path value="Procedure.performer.onBehalfOf" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer:GerichtsmedizinischesInstitut">
      <path value="Procedure.performer" />
      <sliceName value="GerichtsmedizinischesInstitut" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer:GerichtsmedizinischesInstitut.function">
      <path value="Procedure.performer.function" />
      <min value="1" />
      <patternCodeableConcept>
        <coding>
          <system value="http://gematik.de/fhir/oegd/stf/CodeSystem/StfOrganisationsTypCS" />
          <code value="GerichtsmedInst" />
        </coding>
      </patternCodeableConcept>
    </element>
    <element id="Procedure.performer:PathologischesInstitut">
      <path value="Procedure.performer" />
      <sliceName value="PathologischesInstitut" />
      <min value="0" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer:PathologischesInstitut.function">
      <path value="Procedure.performer.function" />
      <min value="1" />
      <patternCodeableConcept>
        <coding>
          <system value="http://gematik.de/fhir/oegd/stf/CodeSystem/StfOrganisationsTypCS" />
          <code value="PathInst" />
        </coding>
      </patternCodeableConcept>
    </element>
    <element id="Procedure.location">
      <path value="Procedure.location" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.location.display">
      <path value="Procedure.location.display" />
      <comment value="Ort der Durchführung" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.report">
      <path value="Procedure.report" />
      <comment value="Verlinkung auf den beiliegenden Obduktionsbericht" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>