<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ie-core-encounter" />
  <url value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-encounter" />
  <name value="IECoreEncounter" />
  <title value="IE Core Encounter" />
  <status value="draft" />
  <description value="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 value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Encounter" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Encounter" />
  <derivation value="constraint" />
  <differential>
    <element id="Encounter.identifier">
      <path value="Encounter.identifier" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.status">
      <path value="Encounter.status" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.statusHistory">
      <path value="Encounter.statusHistory" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.statusHistory.status">
      <path value="Encounter.statusHistory.status" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.statusHistory.period">
      <path value="Encounter.statusHistory.period" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.class">
      <path value="Encounter.class" />
      <short value="Classification of patient encounter (e.g. ambulatory, inpatient, emergency)" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://terminology.hl7.org/ValueSet/v3-ActEncounterCode" />
      </binding>
    </element>
    <element id="Encounter.type">
      <path value="Encounter.type" />
      <min value="1" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-encounter-type" />
      </binding>
    </element>
    <element id="Encounter.serviceType">
      <path value="Encounter.serviceType" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.priority">
      <path value="Encounter.priority" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.subject">
      <path value="Encounter.subject" />
      <short value="The patient present at the encounter" />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-patient" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Encounter.participant">
      <path value="Encounter.participant" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.participant.type">
      <path value="Encounter.participant.type" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.participant.period">
      <path value="Encounter.participant.period" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.participant.individual">
      <path value="Encounter.participant.individual" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-practitioner" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-practitionerrole" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Encounter.period">
      <path value="Encounter.period" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.length">
      <path value="Encounter.length" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.reasonCode">
      <path value="Encounter.reasonCode" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="http://hl7.org/fhir/ValueSet/encounter-reason" />
      </binding>
    </element>
    <element id="Encounter.reasonReference">
      <path value="Encounter.reasonReference" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.diagnosis">
      <path value="Encounter.diagnosis" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.diagnosis.condition">
      <path value="Encounter.diagnosis.condition" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.diagnosis.use">
      <path value="Encounter.diagnosis.use" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.diagnosis.rank">
      <path value="Encounter.diagnosis.rank" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization">
      <path value="Encounter.hospitalization" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization.origin">
      <path value="Encounter.hospitalization.origin" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization.admitSource">
      <path value="Encounter.hospitalization.admitSource" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-admit-source" />
      </binding>
    </element>
    <element id="Encounter.hospitalization.reAdmission">
      <path value="Encounter.hospitalization.reAdmission" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization.dietPreference">
      <path value="Encounter.hospitalization.dietPreference" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization.destination">
      <path value="Encounter.hospitalization.destination" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.hospitalization.dischargeDisposition">
      <path value="Encounter.hospitalization.dischargeDisposition" />
      <mustSupport value="true" />
      <binding>
        <strength value="extensible" />
        <valueSet value="https://hl7-ie.github.io/ie-core/fhir/ie/core/ValueSet/ie-core-discharge-disposition" />
      </binding>
    </element>
    <element id="Encounter.location">
      <path value="Encounter.location" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.location.location">
      <path value="Encounter.location.location" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-location" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Encounter.location.status">
      <path value="Encounter.location.status" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.location.period">
      <path value="Encounter.location.period" />
      <mustSupport value="true" />
    </element>
    <element id="Encounter.serviceProvider">
      <path value="Encounter.serviceProvider" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://hl7-ie.github.io/ie-core/fhir/ie/core/StructureDefinition/ie-core-organization" />
      </type>
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>