<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="897178cf-9492-4daa-afad-eb4ab6fb8822" />
  <meta>
    <lastUpdated value="2020-11-20T07:56:19.403+00:00" />
  </meta>
  <url value="https://fhir.cambio.se/StructureDefinition/AppointmentCancellationSe/v1" />
  <name value="AppointmentCancellationSe" />
  <status value="draft" />
  <date value="2020-10-08T14:14:34.1436673+00:00" />
  <description value="This profile should be used when a patient whish to cancel an appointment." />
  <fhirVersion value="4.0.1" />
  <mapping>
    <identity value="workflow" />
    <uri value="http://hl7.org/fhir/workflow" />
    <name value="Workflow Pattern" />
  </mapping>
  <mapping>
    <identity value="rim" />
    <uri value="http://hl7.org/v3" />
    <name value="RIM Mapping" />
  </mapping>
  <mapping>
    <identity value="ical" />
    <uri value="http://ietf.org/rfc/2445" />
    <name value="iCalendar" />
  </mapping>
  <mapping>
    <identity value="w5" />
    <uri value="http://hl7.org/fhir/fivews" />
    <name value="FiveWs Pattern Mapping" />
  </mapping>
  <mapping>
    <identity value="v2" />
    <uri value="http://hl7.org/v2" />
    <name value="HL7 v2 Mapping" />
  </mapping>
  <kind value="resource" />
  <abstract value="false" />
  <type value="Appointment" />
  <baseDefinition value="https://fhir.cambio.se/StructureDefinition/AppointmentCoreSe" />
  <derivation value="constraint" />
  <snapshot />
  <differential>
    <element id="Appointment.extension">
      <path value="Appointment.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Appointment.extension:permittedPatientActions">
      <path value="Appointment.extension" />
      <sliceName value="permittedPatientActions" />
      <max value="0" />
    </element>
    <element id="Appointment.extension:serviceProvider">
      <path value="Appointment.extension" />
      <sliceName value="serviceProvider" />
      <max value="0" />
    </element>
    <element id="Appointment.extension:patientPremittedActions">
      <path value="Appointment.extension" />
      <sliceName value="patientPremittedActions" />
      <max value="0" />
    </element>
    <element id="Appointment.extension:cancellationMessage">
      <path value="Appointment.extension" />
      <sliceName value="cancellationMessage" />
      <short value="Message why the apppointment has been cancelled" />
      <definition value="Message why the apppointment has been cancelled given by the patient." />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.cambio.se/StructureDefinition/appointment-message" />
      </type>
    </element>
    <element id="Appointment.status">
      <path value="Appointment.status" />
      <fixedCode value="cancelled" />
    </element>
    <element id="Appointment.specialty">
      <path value="Appointment.specialty" />
      <max value="0" />
    </element>
    <element id="Appointment.appointmentType">
      <path value="Appointment.appointmentType" />
      <max value="0" />
    </element>
    <element id="Appointment.reasonCode">
      <path value="Appointment.reasonCode" />
      <max value="0" />
    </element>
    <element id="Appointment.reasonReference">
      <path value="Appointment.reasonReference" />
      <max value="0" />
    </element>
    <element id="Appointment.description">
      <path value="Appointment.description" />
      <max value="0" />
    </element>
    <element id="Appointment.supportingInformation">
      <path value="Appointment.supportingInformation" />
      <max value="0" />
    </element>
    <element id="Appointment.start">
      <path value="Appointment.start" />
      <max value="0" />
    </element>
    <element id="Appointment.end">
      <path value="Appointment.end" />
      <max value="0" />
    </element>
    <element id="Appointment.minutesDuration">
      <path value="Appointment.minutesDuration" />
      <max value="0" />
    </element>
    <element id="Appointment.slot">
      <path value="Appointment.slot" />
      <max value="0" />
    </element>
    <element id="Appointment.created">
      <path value="Appointment.created" />
      <max value="0" />
    </element>
    <element id="Appointment.comment">
      <path value="Appointment.comment" />
      <max value="0" />
    </element>
    <element id="Appointment.patientInstruction">
      <path value="Appointment.patientInstruction" />
      <max value="0" />
    </element>
    <element id="Appointment.basedOn">
      <path value="Appointment.basedOn" />
      <max value="0" />
    </element>
    <element id="Appointment.participant">
      <path value="Appointment.participant" />
      <slicing>
        <description value="NOTE! Using this profile means the Appointment is completely cancelled. Whether individual participants have accepted or declined is not relevant. Due to the fact that participant is mandatory at least one participant is required. None of the participant data will be processed as the appointment is completely cancelled." />
        <rules value="open" />
      </slicing>
    </element>
    <element id="Appointment.requestedPeriod">
      <path value="Appointment.requestedPeriod" />
      <max value="0" />
    </element>
    <element id="Appointment.id">
      <path value="Appointment.id" />
      <min value="1" />
    </element>
  </differential>
</StructureDefinition>