{
  "resourceType": "StructureDefinition",
  "url": "http://fhir.dguv.de/OPER/Procedure/DGUV-OPER-PR-OPProzedur",
  "name": "DGUV_OPER_PR_OPProzedur",
  "status": "draft",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Procedure",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Procedure",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Procedure.id",
        "path": "Procedure.id",
        "mustSupport": true
      },
      {
        "id": "Procedure.meta",
        "path": "Procedure.meta",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.meta.profile",
        "path": "Procedure.meta.profile",
        "min": 1,
        "max": "1",
        "fixedCanonical": "http://fhir.dguv.de/OPER/Procedure/DGUV-OPER-PR-OPProzeduren",
        "mustSupport": true
      },
      {
        "id": "Procedure.extension:Narkose",
        "path": "Procedure.extension",
        "sliceName": "Narkose",
        "short": "Narkoseform/-bezeichnung",
        "definition": "Narkoseform/-bezeichnung",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.dguv.de/OPER/Extension/DGUV-OPER-EX-Narkose"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.extension:Narkose.value[x]",
        "path": "Procedure.extension.value[x]",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.extension:Narkose.value[x].coding",
        "path": "Procedure.extension.value[x].coding",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.extension:Narkose.value[x].coding.system",
        "path": "Procedure.extension.value[x].coding.system",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.extension:Narkose.value[x].coding.code",
        "path": "Procedure.extension.value[x].coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.extension:Narkose.value[x].coding.display",
        "path": "Procedure.extension.value[x].coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.identifier",
        "path": "Procedure.identifier",
        "max": "1"
      },
      {
        "id": "Procedure.identifier.system",
        "path": "Procedure.identifier.system",
        "min": 1
      },
      {
        "id": "Procedure.identifier.value",
        "path": "Procedure.identifier.value",
        "min": 1
      },
      {
        "id": "Procedure.status",
        "path": "Procedure.status",
        "fixedCode": "completed",
        "mustSupport": true
      },
      {
        "id": "Procedure.category",
        "path": "Procedure.category",
        "mustSupport": false
      },
      {
        "id": "Procedure.category.coding",
        "path": "Procedure.category.coding",
        "max": "1",
        "mustSupport": false
      },
      {
        "id": "Procedure.category.coding.system",
        "path": "Procedure.category.coding.system",
        "patternUri": "http://snomed.info/sct",
        "mustSupport": false
      },
      {
        "id": "Procedure.category.coding.code",
        "path": "Procedure.category.coding.code",
        "mustSupport": false
      },
      {
        "id": "Procedure.category.coding.display",
        "path": "Procedure.category.coding.display",
        "mustSupport": false
      },
      {
        "id": "Procedure.code",
        "path": "Procedure.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding",
        "path": "Procedure.code.coding",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "system"
            }
          ],
          "rules": "open"
        },
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS",
        "path": "Procedure.code.coding",
        "sliceName": "OPS",
        "short": "OPS-Code",
        "definition": "Operationen- und Prozedurenschlüssel in der aktuellen Version",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.extension",
        "path": "Procedure.code.coding.extension",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.extension:Seitenlokalisation",
        "path": "Procedure.code.coding.extension",
        "sliceName": "Seitenlokalisation",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.de/StructureDefinition/seitenlokalisation"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.code.coding:OPS.extension:Seitenlokalisation.value[x]",
        "path": "Procedure.code.coding.extension.value[x]",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.extension:Seitenlokalisation.value[x].system",
        "path": "Procedure.code.coding.extension.value[x].system",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.extension:Seitenlokalisation.value[x].code",
        "path": "Procedure.code.coding.extension.value[x].code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.system",
        "path": "Procedure.code.coding.system",
        "min": 1,
        "fixedUri": "http://fhir.de/CodeSystem/bfarm/ops",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.code",
        "path": "Procedure.code.coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:OPS.display",
        "path": "Procedure.code.coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:SNOMED",
        "path": "Procedure.code.coding",
        "sliceName": "SNOMED",
        "short": "Snomed-Code",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:SNOMED.system",
        "path": "Procedure.code.coding.system",
        "min": 1,
        "patternUri": "http://snomed.info/sct",
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:SNOMED.code",
        "path": "Procedure.code.coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.code.coding:SNOMED.display",
        "path": "Procedure.code.coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.code.text",
        "path": "Procedure.code.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.subject",
        "path": "Procedure.subject",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.dguv.de/OPER/Patient/DGUV-OPER-PR-VersichertePerson"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.subject.reference",
        "path": "Procedure.subject.reference",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.encounter",
        "path": "Procedure.encounter",
        "short": "Fallnummer",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.encounter.display",
        "path": "Procedure.encounter.display",
        "short": "Fallnummer",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]",
        "path": "Procedure.performed[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "rules": "open"
        },
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedPeriod",
        "path": "Procedure.performed[x]",
        "sliceName": "performedPeriod",
        "short": "OPBeginn und OPEnde",
        "min": 1,
        "type": [
          {
            "code": "Period"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedPeriod.extension:OPDatum",
        "path": "Procedure.performed[x].extension",
        "sliceName": "OPDatum",
        "short": "OP-Datum",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.dguv.de/OPER/Extension/DGUV-OPER-EX-OPDatum"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.performed[x]:performedPeriod.extension:Schnittzeit",
        "path": "Procedure.performed[x].extension",
        "sliceName": "Schnittzeit",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.dguv.de/OPER/Extension/DGUV-OPER-EX-Schnittzeit"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.performed[x]:performedPeriod.extension:Nahtzeit",
        "path": "Procedure.performed[x].extension",
        "sliceName": "Nahtzeit",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.dguv.de/OPER/Extension/DGUV-OPER-EX-Nahtzeit"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.reasonCode",
        "path": "Procedure.reasonCode",
        "short": "Indikation (Grund für Operation)",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.reasonCode.text",
        "path": "Procedure.reasonCode.text",
        "short": "OP-Indikation als Freitext",
        "definition": "Dort sollen im Freitext verkürzt die anlassgebenden Kriterien für die konkrete OP dargestellt werden, die sich aus Vorgeschichte, klinischem und bildgebenden Befund ergeben haben",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite",
        "path": "Procedure.bodySite",
        "short": "Körperstelle",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding",
        "path": "Procedure.bodySite.coding",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.system",
        "path": "Procedure.bodySite.coding.system",
        "min": 1,
        "mustSupport": true,
        "binding": {
          "strength": "required",
          "valueSet": "http://snomed.info/sct"
        }
      },
      {
        "id": "Procedure.bodySite.coding.code",
        "path": "Procedure.bodySite.coding.code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.coding.display",
        "path": "Procedure.bodySite.coding.display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference",
        "path": "Procedure.usedReference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.dguv.de/OPER/Device/DGUV-OPER-PR-Implantat"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.extension",
        "path": "Procedure.usedReference.extension",
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.extension:Seitenlokalisation",
        "path": "Procedure.usedReference.extension",
        "sliceName": "Seitenlokalisation",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://fhir.dguv.de/OPER/Extension/DGUV-OPER-EX-Seitenlokalisation"
            ]
          }
        ],
        "mustSupport": true,
        "isModifier": false
      },
      {
        "id": "Procedure.usedReference.extension:Seitenlokalisation.value[x]",
        "path": "Procedure.usedReference.extension.value[x]",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.extension:Seitenlokalisation.value[x].system",
        "path": "Procedure.usedReference.extension.value[x].system",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.extension:Seitenlokalisation.value[x].code",
        "path": "Procedure.usedReference.extension.value[x].code",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.extension:Seitenlokalisation.value[x].display",
        "path": "Procedure.usedReference.extension.value[x].display",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.usedReference.reference",
        "path": "Procedure.usedReference.reference",
        "min": 1,
        "mustSupport": true
      }
    ]
  }
}