{
  "resourceType": "StructureDefinition",
  "id": "ie-core-encounter",
  "url": "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-encounter",
  "name": "IECoreEncounter",
  "title": "IE Core Encounter",
  "status": "draft",
  "description": "The IE Core Encounter Profile is based upon the core FHIR Encounter Resource and defines the minimum set of data required to query and retrieve encounter information within the Irish healthcare system. It establishes constraints on encounter type, subject, and hospitalization discharge disposition.",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Encounter",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Encounter",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Encounter.identifier",
        "path": "Encounter.identifier",
        "mustSupport": true
      },
      {
        "id": "Encounter.status",
        "path": "Encounter.status",
        "mustSupport": true
      },
      {
        "id": "Encounter.statusHistory",
        "path": "Encounter.statusHistory",
        "mustSupport": true
      },
      {
        "id": "Encounter.statusHistory.status",
        "path": "Encounter.statusHistory.status",
        "mustSupport": true
      },
      {
        "id": "Encounter.statusHistory.period",
        "path": "Encounter.statusHistory.period",
        "mustSupport": true
      },
      {
        "id": "Encounter.class",
        "path": "Encounter.class",
        "short": "Classification of patient encounter (e.g. ambulatory, inpatient, emergency)",
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "http://terminology.hl7.org/ValueSet/v3-ActEncounterCode"
        }
      },
      {
        "id": "Encounter.type",
        "path": "Encounter.type",
        "min": 1,
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-encounter-type"
        }
      },
      {
        "id": "Encounter.serviceType",
        "path": "Encounter.serviceType",
        "mustSupport": true
      },
      {
        "id": "Encounter.priority",
        "path": "Encounter.priority",
        "mustSupport": true
      },
      {
        "id": "Encounter.subject",
        "path": "Encounter.subject",
        "short": "The patient present at the encounter",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-patient"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Encounter.participant",
        "path": "Encounter.participant",
        "mustSupport": true
      },
      {
        "id": "Encounter.participant.type",
        "path": "Encounter.participant.type",
        "mustSupport": true
      },
      {
        "id": "Encounter.participant.period",
        "path": "Encounter.participant.period",
        "mustSupport": true
      },
      {
        "id": "Encounter.participant.individual",
        "path": "Encounter.participant.individual",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-practitioner",
              "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-practitionerrole",
              "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Encounter.period",
        "path": "Encounter.period",
        "mustSupport": true
      },
      {
        "id": "Encounter.length",
        "path": "Encounter.length",
        "mustSupport": true
      },
      {
        "id": "Encounter.reasonCode",
        "path": "Encounter.reasonCode",
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "http://hl7.org/fhir/ValueSet/encounter-reason"
        }
      },
      {
        "id": "Encounter.reasonReference",
        "path": "Encounter.reasonReference",
        "mustSupport": true
      },
      {
        "id": "Encounter.diagnosis",
        "path": "Encounter.diagnosis",
        "mustSupport": true
      },
      {
        "id": "Encounter.diagnosis.condition",
        "path": "Encounter.diagnosis.condition",
        "mustSupport": true
      },
      {
        "id": "Encounter.diagnosis.use",
        "path": "Encounter.diagnosis.use",
        "mustSupport": true
      },
      {
        "id": "Encounter.diagnosis.rank",
        "path": "Encounter.diagnosis.rank",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization",
        "path": "Encounter.hospitalization",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization.origin",
        "path": "Encounter.hospitalization.origin",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization.admitSource",
        "path": "Encounter.hospitalization.admitSource",
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-admit-source"
        }
      },
      {
        "id": "Encounter.hospitalization.reAdmission",
        "path": "Encounter.hospitalization.reAdmission",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization.dietPreference",
        "path": "Encounter.hospitalization.dietPreference",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization.destination",
        "path": "Encounter.hospitalization.destination",
        "mustSupport": true
      },
      {
        "id": "Encounter.hospitalization.dischargeDisposition",
        "path": "Encounter.hospitalization.dischargeDisposition",
        "mustSupport": true,
        "binding": {
          "strength": "extensible",
          "valueSet": "https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-discharge-disposition"
        }
      },
      {
        "id": "Encounter.location",
        "path": "Encounter.location",
        "mustSupport": true
      },
      {
        "id": "Encounter.location.location",
        "path": "Encounter.location.location",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-location"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Encounter.location.status",
        "path": "Encounter.location.status",
        "mustSupport": true
      },
      {
        "id": "Encounter.location.period",
        "path": "Encounter.location.period",
        "mustSupport": true
      },
      {
        "id": "Encounter.serviceProvider",
        "path": "Encounter.serviceProvider",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-organization"
            ]
          }
        ],
        "mustSupport": true
      }
    ]
  }
}