<StructureDefinition xmlns="http://hl7.org/fhir">
  <url value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Procedure" />
  <name value="Procedure" />
  <title value="API Framework Procedure" />
  <status value="active" />
  <experimental value="false" />
  <description value="API fwk Procedure Core Profile" />
  <fhirVersion value="3.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.meta">
      <path value="Procedure.meta" />
      <type>
        <code value="Meta" />
        <profile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Meta-ForCommonConformance" />
      </type>
    </element>
    <element id="Procedure.identifier">
      <path value="Procedure.identifier" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.definition">
      <path value="Procedure.definition" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/PlanDefinition" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/ActivityDefinition" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/HealthcareService" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Procedure.basedOn">
      <path value="Procedure.basedOn" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.partOf">
      <path value="Procedure.partOf" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.status">
      <path value="Procedure.status" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.category">
      <path value="Procedure.category" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.code">
      <path value="Procedure.code" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.subject">
      <path value="Procedure.subject" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Patient" />
      </type>
    </element>
    <element id="Procedure.context">
      <path value="Procedure.context" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Encounter" />
        <aggregation value="referenced" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/EpisodeOfCare" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer">
      <path value="Procedure.performer" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.performer.actor">
      <path value="Procedure.performer.actor" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Practitioner" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Organization" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Patient" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/RelatedPerson" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Device" />
      </type>
    </element>
    <element id="Procedure.performer.onBehalfOf">
      <path value="Procedure.performer.onBehalfOf" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://apiframework.dedalus.eu/fhir/StructureDefinition/Organization" />
      </type>
    </element>
    <element id="Procedure.location">
      <path value="Procedure.location" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.reasonCode">
      <path value="Procedure.reasonCode" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.bodySite">
      <path value="Procedure.bodySite" />
      <mustSupport value="true" />
    </element>
    <element id="Procedure.usedCode">
      <path value="Procedure.usedCode" />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>