<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="0c8ae132-bbbc-4b0a-91a8-e7c8b226491a" />
  <meta>
    <lastUpdated value="2022-05-09T16:34:14.0710612+00:00" />
  </meta>
  <url value="https://fhir.cambio.se/StructureDefinition/AppointmentSe/v1" />
  <version value="1.1.0" />
  <name value="AppointmentSe" />
  <status value="active" />
  <date value="2022-05-09T16:34:53.0943539+00:00" />
  <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" />
  <differential>
    <element id="Appointment.extension">
      <path value="Appointment.extension" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="url" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="0" />
    </element>
    <element id="Appointment.extension:url">
      <path value="Appointment.extension" />
      <sliceName value="url" />
      <min value="0" />
      <type>
        <code value="Extension" />
        <profile value="http://cambio.se/fhir/StructureDefinition/appointment-Url/v1" />
      </type>
    </element>
    <element id="Appointment.extension:urlLabel">
      <path value="Appointment.extension" />
      <sliceName value="urlLabel" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.cambio.se/StructureDefinition/urlLabel/v1" />
      </type>
    </element>
    <element id="Appointment.extension:urlNotAvailableMessage">
      <path value="Appointment.extension" />
      <sliceName value="urlNotAvailableMessage" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.cambio.se/StructureDefinition/appointment-urlNotAvailableMessage/v1" />
      </type>
    </element>
    <element id="Appointment.extension:class">
      <path value="Appointment.extension" />
      <sliceName value="class" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.cambio.se/StructureDefinition/appointment-encounterClass/v1" />
      </type>
    </element>
    <element id="Appointment.extension:navigationInstruction">
      <path value="Appointment.extension" />
      <sliceName value="navigationInstruction" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="Extension" />
        <profile value="https://fhir.cambio.se/StructureDefinition/appointment-navigationInstruction/v1" />
      </type>
    </element>
    <element id="Appointment.identifier">
      <path value="Appointment.identifier" />
      <max value="0" />
    </element>
    <element id="Appointment.cancelationReason">
      <path value="Appointment.cancelationReason" />
      <max value="0" />
    </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.supportingInformation">
      <path value="Appointment.supportingInformation" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="type" />
        </discriminator>
        <rules value="open" />
      </slicing>
    </element>
    <element id="Appointment.supportingInformation:encounter">
      <path value="Appointment.supportingInformation" />
      <sliceName value="encounter" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Encounter" />
      </type>
    </element>
    <element id="Appointment.supportingInformation:encounter.type">
      <path value="Appointment.supportingInformation.type" />
      <min value="1" />
      <fixedUri value="encounter" />
    </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" />
      <definition value="Additional comments about the appointment to the patient. Can be specific information to the patient concerning the appointment, e.g. printout information around the offers of the unit (Vårdtjänsten) and e.g. how the meeting will be held." />
    </element>
    <element id="Appointment.patientInstruction">
      <path value="Appointment.patientInstruction" />
      <definition value="General information to the patient, e.g. opening/closing times of the unit etc." />
    </element>
    <element id="Appointment.basedOn">
      <path value="Appointment.basedOn" />
      <max value="0" />
    </element>
    <element id="Appointment.participant:location">
      <path value="Appointment.participant" />
      <sliceName value="location" />
      <short value="Performing unit for the Appointment" />
      <definition value="Performing unit for the Appointment" />
    </element>
    <element id="Appointment.participant:location.actor">
      <path value="Appointment.participant.actor" />
      <type>
        <code value="Reference" />
        <aggregation value="referenced" />
      </type>
    </element>
    <element id="Appointment.participant:practitioner">
      <path value="Appointment.participant" />
      <sliceName value="practitioner" />
    </element>
    <element id="Appointment.participant:practitioner.type">
      <path value="Appointment.participant.type" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="coding.code" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <min value="1" />
    </element>
    <element id="Appointment.participant:practitioner.type:primaryPerformer">
      <path value="Appointment.participant.type" />
      <sliceName value="primaryPerformer" />
    </element>
    <element id="Appointment.participant:practitioner.type:primaryPerformer.coding.code">
      <path value="Appointment.participant.type.coding.code" />
      <short value="The principal or primary performer of the appointment." />
      <definition value="The principal or primary performer of the appointment. In COMSIC this corresponds to the main staff for the appointment." />
      <fixedCode value="PPRF" />
    </element>
    <element id="Appointment.participant:practitioner.type:secondaryPerformer">
      <path value="Appointment.participant.type" />
      <sliceName value="secondaryPerformer" />
    </element>
    <element id="Appointment.participant:practitioner.type:secondaryPerformer.coding.code">
      <path value="Appointment.participant.type.coding.code" />
      <short value="A secondary performer in the appointment." />
      <definition value="A person assisting in an act through his substantial presence and involvement This includes: assistants, technicians, associates, or whatever the job titles may be." />
      <fixedCode value="SPRF" />
    </element>
    <element id="Appointment.participant:device">
      <path value="Appointment.participant" />
      <sliceName value="device" />
      <max value="0" />
    </element>
    <element id="Appointment.participant:healthcareService">
      <path value="Appointment.participant" />
      <sliceName value="healthcareService" />
    </element>
    <element id="Appointment.participant:healthcareService.actor">
      <path value="Appointment.participant.actor" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.cambio.se/StructureDefinition/HealthcareServiceLiteSe/v1" />
      </type>
    </element>
    <element id="Appointment.participant:practitionerRole">
      <path value="Appointment.participant" />
      <sliceName value="practitionerRole" />
      <max value="0" />
    </element>
    <element id="Appointment.requestedPeriod">
      <path value="Appointment.requestedPeriod" />
      <max value="0" />
    </element>
  </differential>
</StructureDefinition>