{
  "resourceType": "StructureDefinition",
  "id": "ProcedureMERT",
  "url": "https://intrahealth.com/fhir/mert/StructureDefinition/ProcedureMERT",
  "name": "ProcedureMERT",
  "title": "Procedure (MERT)",
  "status": "draft",
  "description": "This profile describes the Procedure for MERT.",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Procedure",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Procedure",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Procedure.status",
        "path": "Procedure.status",
        "short": "'completed' only",
        "definition": "A code specifying the state of the procedure.",
        "comment": "For MERT, only Procedure.status = 'completed' will be processed. Other statuses will not be processed.",
        "patternCode": "completed",
        "mustSupport": true
      },
      {
        "id": "Procedure.code",
        "path": "Procedure.code",
        "comment": "Prefer CCI or SNOMED CT. If only local regional codes exist, send them and populate code.text with a human-readable description.",
        "min": 1,
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "https://intrahealth.com/fhir/mert/ValueSet/mert-procedure-codes"
        }
      },
      {
        "id": "Procedure.code.text",
        "path": "Procedure.code.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.subject",
        "path": "Procedure.subject",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://intrahealth.com/fhir/mert/StructureDefinition/PatientMERT"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]",
        "path": "Procedure.performed[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        }
      },
      {
        "id": "Procedure.performed[x]:performedDateTime",
        "path": "Procedure.performed[x]",
        "sliceName": "performedDateTime",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedPeriod",
        "path": "Procedure.performed[x]",
        "sliceName": "performedPeriod",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Period"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedString",
        "path": "Procedure.performed[x]",
        "sliceName": "performedString",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedAge",
        "path": "Procedure.performed[x]",
        "sliceName": "performedAge",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Age"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:performedRange",
        "path": "Procedure.performed[x]",
        "sliceName": "performedRange",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Range"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite",
        "path": "Procedure.bodySite",
        "comment": "Use SNOMED CT body structures when available. Local site codes are permitted when no mapping exists; include bodySite.text.",
        "mustSupport": true
      },
      {
        "id": "Procedure.bodySite.text",
        "path": "Procedure.bodySite.text",
        "mustSupport": true
      },
      {
        "id": "Procedure.note",
        "path": "Procedure.note",
        "mustSupport": true
      }
    ]
  }
}