<StructureDefinition xmlns="http://hl7.org/fhir">
  <id value="ocp-appointment" />
  <meta>
    <versionId value="3" />
    <lastUpdated value="2018-05-02T19:26:33.096+00:00" />
  </meta>
  <language value="US-en" />
  <text>
    <status value="generated" />
    <div xmlns="http://www.w3.org/1999/xhtml">
The FHIR STU3 (Release 3) Omnibus Care Plan (OCP) Appointment profile uses FHIR resources and describes minimum expectations with supported data elements and changes to the cardinality of booking a healthcare event among patient(s), practitioner(s), and related person(s) for a specific date/time. This may result in one or more Encounter(s). It identifies which core elements, extensions, and value sets SHALL be present in the resource when using this profile. 
Dependencies:
   Appointment profile that conforms to this specification must include reference to other resources 
<ul><li>OCP-Patient</li><li>Location</li><li>ReferralRequest</li><li>Procedure</li><li>Condition</li><li>OCP-Practitioner</li><li>OCP-RelatedPerson</li><li>OCP-HealthcareService</li></ul></div>
  </text>
  <url value="http://hl7.org/fhir/StructureDefinition/ocp-appointment" />
  <version value="1.0" />
  <name value="OCP Appointment Profile" />
  <title value="OCP Appointment Profile" />
  <status value="draft" />
  <date value="2018-03-26T18:05:29.774-04:00" />
  <publisher value="SAMHSA" />
  <contact>
    <name value="Neelima Chennamaraja" />
    <telecom>
      <system value="url" />
      <value value="www.eversolve.com" />
      <period>
        <start value="1999-06-15" />
      </period>
    </telecom>
    <telecom>
      <system value="email" />
      <value value="neelima@eversolve.com" />
      <use value="work" />
    </telecom>
  </contact>
  <description value="The Omnibus Care Plan (OCP) Appointment profile is used to provide information about a planned meeting that may be in the future or past. The resource only describes a single meeting, a series of repeating visits would require multiple appointment resources to be created for each instance. The visit scheduled by an appointment may be in person or remote (by phone, video conference, etc.) All that matters is that the time and usage of one or more individuals, locations and/or pieces of equipment is being fully or partially reserved for a designated period of time." />
  <jurisdiction>
    <coding>
      <code value="US" />
      <display value="US-Realm" />
    </coding>
    <text value="US-Realm OCP Appointment Profile published by SAMHSA" />
  </jurisdiction>
  <purpose value="The Appointment profile includes all the elements related to basic need for Omnibus Care Plan (OCP) (which could change over time). This profile is intended to be implemented by OCP systems." />
  <copyright value="+Copyright (c) 2017 SAMHSA. All Rights Reserved." />
  <fhirVersion value="3.0.1" />
  <kind value="resource" />
  <abstract value="false" />
  <type value="Appointment" />
  <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Appointment" />
  <derivation value="constraint" />
  <differential>
    <element id="Appointment.status">
      <path value="Appointment.status" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.appointmentType">
      <path value="Appointment.appointmentType" />
      <min value="1" />
      <type>
        <code value="CodeableConcept" />
        <profile value="http://hl7.org/fhir/StructureDefinition/CodeableConcept" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.description">
      <path value="Appointment.description" />
      <min value="1" />
      <type>
        <code value="string" />
        <profile value="http://hl7.org/fhir/StructureDefinition/string" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.start">
      <path value="Appointment.start" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.end">
      <path value="Appointment.end" />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.slot">
      <path value="Appointment.slot" />
      <definition value="The slots from the participants' schedules that will be filled by the appointment. To be used with Schedule/Slot.  Most likely populated by the system." />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.created">
      <path value="Appointment.created" />
      <definition value="System generated when appointment was initially created. This could be different to the meta.lastModified value on the initial entry, as this could have been before the resource was created on the FHIR server, and should remain unchanged over the lifespan of the appointment." />
      <min value="1" />
      <type>
        <code value="dateTime" />
        <profile value="http://hl7.org/fhir/StructureDefinition/dateTime" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.incomingReferral">
      <path value="Appointment.incomingReferral" />
      <definition value="The referral request this appointment is allocated to assess (incoming referral). Will be used at later time when integrated with MDIX Referral (or other referral mechanism)." />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant">
      <path value="Appointment.participant" />
      <definition value="List of participants involved in the appointment. Use participant for all references except Device for now." />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.type">
      <path value="Appointment.participant.type" />
      <definition value="Role of participant in the appointment. Will use this to identify creator and other invitee. &#xD;&#xA;FHIR examples mostly address Practitioner specific participant type. Care team role (care manager, care coordinator, etc.) should be sufficient and do not need to be appointment specific." />
      <min value="1" />
      <max value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.actor">
      <path value="Appointment.participant.actor" />
      <slicing>
        <discriminator>
          <type value="value" />
          <path value="reference" />
        </discriminator>
        <rules value="open" />
      </slicing>
      <short value="Person, Location/HealthcareService" />
      <definition value="A Person, Location/HealthcareService that is participating in the appointment. The participation in the appointment can be of any one of the two types: 1. AUT (Author participation) 2. PART (Generic Participation)." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-patient" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-practitioner" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-relatedperson" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-healthcareservice" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.actor:authorActor">
      <path value="Appointment.participant.actor" />
      <sliceName value="authorActor" />
      <label value="Author" />
      <code>
        <code value="AUT" />
        <display value="Author Actor" />
      </code>
      <short value="Person, Location/HealthcareService" />
      <definition value="The author of the appointment a Person, Location/HealthcareService that is participating in the appointment." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-patient" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-practitioner" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-relatedperson" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-healthcareservice" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.actor:participationActor">
      <path value="Appointment.participant.actor" />
      <sliceName value="participationActor" />
      <label value="Participation Actor" />
      <code>
        <code value="PART" />
        <display value="Participation Actor" />
      </code>
      <short value="Person, Location/HealthcareService" />
      <definition value="The generic participation of the appointment of the Person, Location/HealthcareService that is participating in the appointment. &#xD;&#xA;Hoping to use generic participation (for everyone other than author/organizer) at this time." />
      <min value="1" />
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/Location" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-patient" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-practitioner" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-relatedperson" />
      </type>
      <type>
        <code value="Reference" />
        <targetProfile value="http://hl7.org/fhir/StructureDefinition/ocp-healthcareservice" />
      </type>
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.required">
      <path value="Appointment.participant.required" />
      <definition value="Is this participant required to be present at the meeting. This covers a use-case where 2 doctors need to meet to discuss the results for a specific patient, and the patient is not required to be present. &#xD;&#xA;Set to Required by default for Pracitioner,  Patient and RelatedPerson references. Use information-only for HealthcareService and Location. User can change any of those." />
      <min value="1" />
      <mustSupport value="true" />
    </element>
    <element id="Appointment.participant.status">
      <path value="Appointment.participant.status" />
      <definition value="Participation status of the actor. Read-only. System to populate to Accepted for the Practitioner who creates the appointment. System to populate to Needs-action for all other participants. Later workflow mechanism needs to be created to accept/decline the appointment as in Outlook." />
      <mustSupport value="true" />
    </element>
  </differential>
</StructureDefinition>