{
  "resourceType": "StructureDefinition",
  "id": "KBV-PR-MIO-CHW-Procedure",
  "url": "https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_CHW_Procedure",
  "name": "KBV_PR_MIO_CHW_Procedure",
  "title": "KBV_PR_MIO_CHW_Procedure",
  "status": "active",
  "description": "Dieses Profil bildet allgemein eine Maßnahme ab.",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Procedure",
  "baseDefinition": "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Procedure",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Procedure.meta",
        "path": "Procedure.meta"
      },
      {
        "id": "Procedure.meta.versionId",
        "path": "Procedure.meta.versionId",
        "max": "0"
      },
      {
        "id": "Procedure.meta.lastUpdated",
        "path": "Procedure.meta.lastUpdated",
        "max": "0"
      },
      {
        "id": "Procedure.meta.source",
        "path": "Procedure.meta.source",
        "max": "0"
      },
      {
        "id": "Procedure.meta.profile",
        "path": "Procedure.meta.profile",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "$this"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Procedure.meta.profile:chw",
        "path": "Procedure.meta.profile",
        "sliceName": "chw",
        "patternCanonical": "https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_CHW_Procedure"
      },
      {
        "id": "Procedure.meta.security",
        "path": "Procedure.meta.security",
        "max": "0"
      },
      {
        "id": "Procedure.meta.tag",
        "path": "Procedure.meta.tag",
        "max": "0"
      },
      {
        "id": "Procedure.implicitRules",
        "path": "Procedure.implicitRules",
        "max": "0"
      },
      {
        "id": "Procedure.language",
        "path": "Procedure.language",
        "max": "0"
      },
      {
        "id": "Procedure.contained",
        "path": "Procedure.contained",
        "max": "0"
      },
      {
        "id": "Procedure.extension",
        "path": "Procedure.extension",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.extension:Dokumentationsdatum",
        "path": "Procedure.extension",
        "sliceName": "Dokumentationsdatum",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.identifier",
        "path": "Procedure.identifier",
        "max": "0"
      },
      {
        "id": "Procedure.instantiatesCanonical",
        "path": "Procedure.instantiatesCanonical",
        "max": "0"
      },
      {
        "id": "Procedure.instantiatesUri",
        "path": "Procedure.instantiatesUri",
        "max": "0"
      },
      {
        "id": "Procedure.basedOn",
        "path": "Procedure.basedOn",
        "max": "0"
      },
      {
        "id": "Procedure.partOf",
        "path": "Procedure.partOf",
        "max": "0"
      },
      {
        "id": "Procedure.status",
        "path": "Procedure.status",
        "mustSupport": true
      },
      {
        "id": "Procedure.statusReason",
        "path": "Procedure.statusReason",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.category",
        "path": "Procedure.category",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.category.coding",
        "path": "Procedure.category.coding",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding.system",
        "path": "Procedure.category.coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding.code",
        "path": "Procedure.category.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding:snomed",
        "path": "Procedure.category.coding",
        "sliceName": "snomed"
      },
      {
        "id": "Procedure.category.coding:snomed.system",
        "path": "Procedure.category.coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding:snomed.version",
        "path": "Procedure.category.coding.version",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding:snomed.code",
        "path": "Procedure.category.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding:snomed.display",
        "path": "Procedure.category.coding.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.category.coding:snomed.userSelected",
        "path": "Procedure.category.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Procedure.category.text",
        "path": "Procedure.category.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.code",
        "path": "Procedure.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding",
        "path": "Procedure.code.coding",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding.system",
        "path": "Procedure.code.coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding.code",
        "path": "Procedure.code.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops",
        "path": "Procedure.code.coding",
        "sliceName": "ops",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.extension",
        "path": "Procedure.code.coding.extension",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.extension:Seitenlokalisation",
        "path": "Procedure.code.coding.extension",
        "sliceName": "Seitenlokalisation",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.system",
        "path": "Procedure.code.coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.version",
        "path": "Procedure.code.coding.version",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.code",
        "path": "Procedure.code.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.display",
        "path": "Procedure.code.coding.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:ops.userSelected",
        "path": "Procedure.code.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Procedure.code.coding:snomed",
        "path": "Procedure.code.coding",
        "sliceName": "snomed",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:snomed.system",
        "path": "Procedure.code.coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:snomed.version",
        "path": "Procedure.code.coding.version",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:snomed.code",
        "path": "Procedure.code.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:snomed.display",
        "path": "Procedure.code.coding.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:snomed.userSelected",
        "path": "Procedure.code.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Procedure.code.text",
        "path": "Procedure.code.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.subject",
        "path": "Procedure.subject",
        "mustSupport": true
      },
      {
        "id": "Procedure.subject.reference",
        "path": "Procedure.subject.reference",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.subject.type",
        "path": "Procedure.subject.type",
        "max": "0"
      },
      {
        "id": "Procedure.subject.identifier",
        "path": "Procedure.subject.identifier",
        "max": "0"
      },
      {
        "id": "Procedure.subject.display",
        "path": "Procedure.subject.display",
        "max": "0"
      },
      {
        "id": "Procedure.encounter",
        "path": "Procedure.encounter",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]",
        "path": "Procedure.performed[x]",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedDateTime",
        "path": "Procedure.performed[x]",
        "sliceName": "performedDateTime",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedPeriod",
        "path": "Procedure.performed[x]",
        "sliceName": "performedPeriod",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge",
        "path": "Procedure.performed[x]",
        "sliceName": "performedAge",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension",
        "path": "Procedure.performed[x].extension",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase",
        "path": "Procedure.performed[x].extension",
        "sliceName": "Lebensphase",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]",
        "path": "Procedure.performed[x].extension.value[x]"
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept",
        "path": "Procedure.performed[x].extension.value[x]",
        "sliceName": "valueCodeableConcept",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding",
        "path": "Procedure.performed[x].extension.value[x].coding"
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding.system",
        "path": "Procedure.performed[x].extension.value[x].coding.system",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding.version",
        "path": "Procedure.performed[x].extension.value[x].coding.version",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding.code",
        "path": "Procedure.performed[x].extension.value[x].coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding.display",
        "path": "Procedure.performed[x].extension.value[x].coding.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge.extension:Lebensphase.value[x]:valueCodeableConcept.coding.userSelected",
        "path": "Procedure.performed[x].extension.value[x].coding.userSelected",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]:performedAge.value",
        "path": "Procedure.performed[x].value",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.performed[x]:performedAge.comparator",
        "path": "Procedure.performed[x].comparator",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]:performedAge.unit",
        "path": "Procedure.performed[x].unit",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]:performedAge.system",
        "path": "Procedure.performed[x].system",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]:performedAge.code",
        "path": "Procedure.performed[x].code",
        "max": "0"
      },
      {
        "id": "Procedure.performed[x]:performedString",
        "path": "Procedure.performed[x]",
        "sliceName": "performedString",
        "mustSupport": true
      },
      {
        "id": "Procedure.recorder",
        "path": "Procedure.recorder",
        "max": "0",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Practitioner|1.5.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_PractitionerRole|1.5.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_RelatedPerson|1.5.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Patient|1.5.0"
            ]
          }
        ],
        "mustSupport": false
      },
      {
        "id": "Procedure.recorder.reference",
        "path": "Procedure.recorder.reference",
        "mustSupport": true
      },
      {
        "id": "Procedure.recorder.type",
        "path": "Procedure.recorder.type",
        "mustSupport": true
      },
      {
        "id": "Procedure.recorder.identifier",
        "path": "Procedure.recorder.identifier",
        "mustSupport": true
      },
      {
        "id": "Procedure.recorder.display",
        "path": "Procedure.recorder.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.asserter",
        "path": "Procedure.asserter",
        "max": "0"
      },
      {
        "id": "Procedure.performer",
        "path": "Procedure.performer",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.performer.function",
        "path": "Procedure.performer.function",
        "max": "0"
      },
      {
        "id": "Procedure.performer.actor",
        "path": "Procedure.performer.actor",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Practitioner|1.5.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_PractitionerRole|1.5.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_Base_Organization|1.5.0"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performer.actor.reference",
        "path": "Procedure.performer.actor.reference",
        "mustSupport": true
      },
      {
        "id": "Procedure.performer.actor.type",
        "path": "Procedure.performer.actor.type",
        "mustSupport": true
      },
      {
        "id": "Procedure.performer.actor.identifier",
        "path": "Procedure.performer.actor.identifier",
        "mustSupport": true
      },
      {
        "id": "Procedure.performer.actor.display",
        "path": "Procedure.performer.actor.display",
        "mustSupport": true
      },
      {
        "id": "Procedure.performer.onBehalfOf",
        "path": "Procedure.performer.onBehalfOf",
        "max": "0"
      },
      {
        "id": "Procedure.location",
        "path": "Procedure.location",
        "max": "0"
      },
      {
        "id": "Procedure.reasonCode",
        "path": "Procedure.reasonCode",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.reasonCode.coding",
        "path": "Procedure.reasonCode.coding",
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.coding.system",
        "path": "Procedure.reasonCode.coding.system",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.coding.version",
        "path": "Procedure.reasonCode.coding.version",
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.coding.code",
        "path": "Procedure.reasonCode.coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.coding.display",
        "path": "Procedure.reasonCode.coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.coding.userSelected",
        "path": "Procedure.reasonCode.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Procedure.reasonCode.text",
        "path": "Procedure.reasonCode.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonReference",
        "path": "Procedure.reasonReference",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.bodySite",
        "path": "Procedure.bodySite",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding",
        "path": "Procedure.bodySite.coding",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.system",
        "path": "Procedure.bodySite.coding.system",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.version",
        "path": "Procedure.bodySite.coding.version",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.code",
        "path": "Procedure.bodySite.coding.code",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.display",
        "path": "Procedure.bodySite.coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.userSelected",
        "path": "Procedure.bodySite.coding.userSelected",
        "max": "0",
        "mustSupport": false
      },
      {
        "id": "Procedure.bodySite.text",
        "path": "Procedure.bodySite.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.outcome",
        "path": "Procedure.outcome",
        "max": "0"
      },
      {
        "id": "Procedure.report",
        "path": "Procedure.report",
        "max": "0"
      },
      {
        "id": "Procedure.complication",
        "path": "Procedure.complication",
        "max": "0"
      },
      {
        "id": "Procedure.complicationDetail",
        "path": "Procedure.complicationDetail",
        "max": "0"
      },
      {
        "id": "Procedure.followUp",
        "path": "Procedure.followUp",
        "max": "0"
      },
      {
        "id": "Procedure.note",
        "path": "Procedure.note",
        "mustSupport": true
      },
      {
        "id": "Procedure.note.author[x]",
        "path": "Procedure.note.author[x]",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_CHW_Practitioner|1.0.0",
              "https://fhir.kbv.de/StructureDefinition/KBV_PR_MIO_CHW_Organization|1.0.0"
            ]
          },
          {
            "code": "string"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.note.author[x]:authorReference",
        "path": "Procedure.note.author[x]",
        "sliceName": "authorReference",
        "mustSupport": true
      },
      {
        "id": "Procedure.note.author[x]:authorReference.reference",
        "path": "Procedure.note.author[x].reference",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.note.author[x]:authorReference.type",
        "path": "Procedure.note.author[x].type",
        "max": "0"
      },
      {
        "id": "Procedure.note.author[x]:authorReference.identifier",
        "path": "Procedure.note.author[x].identifier",
        "max": "0"
      },
      {
        "id": "Procedure.note.author[x]:authorReference.display",
        "path": "Procedure.note.author[x].display",
        "max": "0"
      },
      {
        "id": "Procedure.note.author[x]:authorString",
        "path": "Procedure.note.author[x]",
        "sliceName": "authorString",
        "mustSupport": true
      },
      {
        "id": "Procedure.note.author[x]:authorString.value",
        "path": "Procedure.note.author[x].value",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.note.time",
        "path": "Procedure.note.time",
        "mustSupport": true
      },
      {
        "id": "Procedure.note.text",
        "path": "Procedure.note.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.focalDevice",
        "path": "Procedure.focalDevice",
        "max": "0"
      },
      {
        "id": "Procedure.usedReference",
        "path": "Procedure.usedReference",
        "max": "0"
      },
      {
        "id": "Procedure.usedCode",
        "path": "Procedure.usedCode",
        "max": "0"
      }
    ]
  }
}