{
  "resourceType": "StructureDefinition",
  "id": "Procedure-uv-ips",
  "meta": {
    "lastUpdated": "2018-02-20T11:54:56.053+00:00"
  },
  "url": "http://hl7.org/fhir/uv/ips/StructureDefinition/Procedure-uv-ips",
  "name": "ProcedureUvIps",
  "title": "Procedure (IPS)",
  "status": "active",
  "date": "2017-10-27T11:43:30.381+00:00",
  "description": "This profile represents the constraints applied to the Procedure resource by the IPS project, which specifies an entry of the History of Procedure for the international patient summary based on the FHIR standard R4.",
  "kind": "resource",
  "abstract": false,
  "type": "Procedure",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Procedure",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Procedure",
        "path": "Procedure",
        "mustSupport": true
      },
      {
        "id": "Procedure.id",
        "path": "Procedure.id",
        "mustSupport": true
      },
      {
        "id": "Procedure.status",
        "path": "Procedure.status",
        "mustSupport": true
      },
      {
        "id": "Procedure.code",
        "path": "Procedure.code",
        "slicing": {
          "discriminator": [
            {
              "type": "pattern",
              "path": "$this"
            }
          ],
          "description": "Discriminated by the bound value set",
          "rules": "open"
        },
        "definition": "Identification of the procedure or recording of \"absence of relevant procedures\" or of \"procedures unknown\".",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/uv/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "mustSupport": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "ProcedureCode"
            }
          ],
          "strength": "preferred",
          "valueSetUnknownType_StructureDefinition.differential.element[3].binding": "http://hl7.org/fhir/uv/ips/ValueSet/procedures-uv-ips"
        }
      },
      {
        "id": "Procedure.code:absentOrUnknownProcedure",
        "path": "Procedure.code",
        "sliceName": "absentOrUnknownProcedure",
        "short": "Code for absent problem or for unknown procedure",
        "definition": "Code representing the statement \"absent problem\" or the statement \"procedures unknown\"",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/uv/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "mustSupport": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "absentOrUnknownProcedure"
            }
          ],
          "strength": "required",
          "description": "A code to identify absent or unknown procedures",
          "valueSetUnknownType_StructureDefinition.differential.element[4].binding": "http://hl7.org/fhir/uv/ips/ValueSet/absent-or-unknown-procedures-uv-ips"
        }
      },
      {
        "id": "Procedure.subject",
        "path": "Procedure.subject",
        "definition": "The person on which the procedure was performed.",
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/uv/ips/StructureDefinition/Patient-uv-ips"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.subject.reference",
        "path": "Procedure.subject.reference",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]",
        "path": "Procedure.performed[x]",
        "min": 1,
        "max": "1",
        "mustSupport": true
      },
      {
        "id": "Procedure.performed[x]:data-absent-reason",
        "path": "Procedure.performed[x].extension",
        "sliceName": "data-absent-reason",
        "short": "performed[x] absence reason",
        "definition": "Provides a reason why the performed is missing.",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": "http://hl7.org/fhir/StructureDefinition/data-absent-reason"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Procedure.asserter",
        "path": "Procedure.asserter",
        "mustSupport": false
      },
      {
        "id": "Procedure.performer",
        "path": "Procedure.performer",
        "mustSupport": false
      },
      {
        "id": "Procedure.performer.actor",
        "path": "Procedure.performer.actor",
        "type": [
          {
            "targetProfile": [
              "http://hl7.org/fhir/StructureDefinition/Patient",
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
              "http://hl7.org/fhir/uv/ips/StructureDefinition/Device-observer-uv-ips",
              "http://hl7.org/fhir/uv/ips/StructureDefinition/Practitioner-uv-ips",
              "http://hl7.org/fhir/uv/ips/StructureDefinition/Organization-observation-uv-ips"
            ],
            "code": "Reference"
          }
        ],
        "mustSupport": false
      },
      {
        "id": "Procedure.performer.onBehalfOf",
        "path": "Procedure.performer.onBehalfOf",
        "type": [
          {
            "code": "Reference",
            "targetProfile": "http://hl7.org/fhir/uv/ips/StructureDefinition/Organization-observation-uv-ips"
          }
        ],
        "mustSupport": false
      },
      {
        "id": "Procedure.bodySite",
        "path": "Procedure.bodySite",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": "http://hl7.org/fhir/uv/ips/StructureDefinition/CodeableConcept-uv-ips"
          }
        ],
        "mustSupport": true,
        "binding": {
          "extension": [
            {
              "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
              "valueString": "BodySite"
            }
          ],
          "strength": "example",
          "valueSetUnknownType_StructureDefinition.differential.element[13].binding": "http://hl7.org/fhir/ValueSet/body-site"
        }
      }
    ]
  }
}