<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="97b24034-6f70-4601-82bd-ee23f0b09312" />
  <url value="https://cloudconnect.cognisantmd.com/fhir/StructureDefinition/Slot" />
  <version value="1.02" />
  <name value="Slot" />
  <status value="draft" />
  <description value="Appointment slot resource" />
  <fhirVersion value="4.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Slot" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Slot" />
  <derivation value="constraint" />
  <differential>
    <element id="Slot">
      <path value="Slot" />
    </element>
    <element id="Slot.id">
      <path value="Slot.id" />
    </element>
    <element id="Slot.schedule">
      <path value="Slot.schedule" />
      <short value="corresponding Schedule resource" />
      <definition value="The schedule resource that this slot defines" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="https://fhir.icanbwell.com/4_0_0/StructureDefinition/pr-schedule" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Slot.appointmentType">
      <path value="Slot.appointmentType" />
      <short value="The" />
      <definition value="The appointmentType is used as the optional 'suggestion' for the slot, which should either be blank or match one of the codes provided in the /ValueSet/schedule-code list." />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Slot.status">
      <path value="Slot.status" />
      <short value="status for the appointment slot" />
      <definition value="default to free" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="code" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Slot.start">
      <path value="Slot.start" />
      <short value="appointment slot start time" />
      <min value="1" />
      <max value="1" />
      <type>
        <code value="instant" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Slot.end">
      <path value="Slot.end" />
      <short value="appointment slot end time" />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="instant" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Slot.appointmentType">
      <path value="Slot.appointmentType" />
      <short value="The slot's booking 'suggestion', indicating the types of appointments that should be booked within the slot." />
      <definition value="This appointmentType indicates a 'schedule code' or 'suggestion' that Ocean may act upon when enforcing booking rules that depend on the appointment type. The code should match one of the codes returned in the /ValueSet/schedule-code. See the Online Booking overview for details." />
      <min value="0" />
      <max value="1" />
      <type>
        <code value="code" />
      </type>
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>