<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ca-on-eReferral-profile-Appointment" />
  <url value="http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-Appointment" />
  <version value="1.2.1" />
  <name value="EReferralAppointment" />
  <title value="Appointment" />
  <status value="draft" />
  <description value="A booking of a healthcare event among patient(s), practitioner(s), related person(s) and/or device(s) for a specific date/time. This may result in one or more Encounter(s)." />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Appointment" />
  <baseDefinition value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Appointment" />
  <derivation value="constraint" />
  <differential>
    <element id="Appointment.meta">
      <path value="Appointment.meta" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.meta.profile">
      <path value="Appointment.meta.profile" />
      <comment value="#### **_` FOR eREFERRAL USAGE: The meta.profile = http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-Appointment|1.2.0 `_**&#xD;&#xA;&#xD;&#xA;It is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time.  The list of profile URLs is a set." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.text">
      <path value="Appointment.text" />
    </element>
    <element id="Appointment.text.status">
      <path value="Appointment.text.status" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.text.div">
      <path value="Appointment.text.div" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.identifier">
      <path value="Appointment.identifier" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.appointmentType">
      <path value="Appointment.appointmentType" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.appointmentType.coding">
      <path value="Appointment.appointmentType.coding" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.appointmentType.coding.system">
      <path value="Appointment.appointmentType.coding.system" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.appointmentType.coding.code">
      <path value="Appointment.appointmentType.coding.code" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.appointmentType.coding.display">
      <path value="Appointment.appointmentType.coding.display" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.appointmentType.text">
      <path value="Appointment.appointmentType.text" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.end">
      <path value="Appointment.end" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.minutesDuration">
      <path value="Appointment.minutesDuration" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.patientInstruction">
      <path value="Appointment.patientInstruction" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.basedOn">
      <path value="Appointment.basedOn" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-ServiceRequest" />
      </type>
    </element>
    <element id="Appointment.basedOn.reference">
      <path value="Appointment.basedOn.reference" />
      <min value="1" />
    </element>
    <element id="Appointment.participant.actor">
      <path value="Appointment.participant.actor" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-PractitionerRole" />
        <targetProfile value="http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-Location" />
        <targetProfile value="http://ehealthontario.ca/fhir/StructureDefinition/ca-on-eReferral-profile-Patient" />
      </type>
    </element>
    <element id="Appointment.participant.required">
      <path value="Appointment.participant.required" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.status">
      <path value="Appointment.participant.status" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.period">
      <path value="Appointment.participant.period" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.period.start">
      <path value="Appointment.participant.period.start" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.period.end">
      <path value="Appointment.participant.period.end" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.requestedPeriod">
      <path value="Appointment.requestedPeriod" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.requestedPeriod.start">
      <path value="Appointment.requestedPeriod.start" />
      <mustSupport value="false" />
    </element>
    <element id="Appointment.requestedPeriod.end">
      <path value="Appointment.requestedPeriod.end" />
      <mustSupport value="false" />
    </element>
  </differential>
</StructureDefinition>