Appointment

identifierS0..*Identifier
statusS1..1codeBinding
cancellationReasonS0..1CodeableConceptBinding
classS0..1CodeableConcept
serviceCategoryS0..*CodeableConceptBinding
serviceTypeS0..*CodeableConceptBinding
appointmentTypeS0..1CodeableConceptBinding
reasonS0..*CodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation)Binding
priorityS0..1unsignedInt
descriptionS0..1string
replacesS0..*Reference(Appointment)
virtualServiceS0..1VirtualServiceDetail
previousAppointmentS0..1Reference(Appointment)
originatingAppointmentS0..1Reference(http://hl7.org/fhir/StructureDefinition/Appointment-verto)
startS0..1instant
endS0..1instant
minutesDurationS0..1positiveInt
requestedPeriodS0..*Period
slotS0..*Reference(Slot)
createdS0..1dateTime
cancellationDateS0..1dateTime
subjectS0..1Reference(http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile)
actorS0..1Reference(http://hl7.org/fhir/StructureDefinition/Verto's Patient Profile | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location)
recurrenceIdS0..1string
occurrenceChangedS0..1boolean
recurrenceTypeS0..1code
lastOccurrenceDateS0..1dateTime
occurrenceCountS0..1positiveInt
Appointment
DefinitionA booking of a healthcare event among patient(s), practitioner(s), etc.
Appointment.identifier
Cardinality0...*
TypeIdentifier
Must SupportTrue
Appointment.status
Cardinality1...1
Typecode
BindingAppointmentStatus (required)
Must SupportTrue
Appointment.cancellationReason
Cardinality0...1
TypeCodeableConcept
BindingAppointmentCancellationReason (preferred)
Must SupportTrue
Appointment.class
Cardinality0...1
TypeCodeableConcept
Bindinghttp://hl7.org/fhir/ValueSet/appointment-service-class (example)
Must SupportTrue
Appointment.serviceCategory
Cardinality0...*
TypeCodeableConcept
BindingServiceCategory (preferred)
Must SupportTrue
Appointment.serviceType
Cardinality0...*
TypeCodeableConcept
BindingServiceType (preferred)
Must SupportTrue
Appointment.appointmentType
Cardinality0...1
TypeCodeableConcept
Bindinghttp://hl7.org/fhir/ValueSet/appointment-type (preferred)
Must SupportTrue
Appointment.reason
Cardinality0...*
TypeCodeableReference(Condition | Procedure | Observation | ImmunizationRecommendation)
BindingEncounterReasonCodes (preferred)
Must SupportTrue
Appointment.priority
Cardinality0...1
TypeunsignedInt
Must SupportTrue
Appointment.description
Cardinality0...1
Typestring
Must SupportTrue
Appointment.replaces
Cardinality0...*
TypeReference(Appointment)
Must SupportTrue
Appointment.virtualService
Cardinality0...1
TypeVirtualServiceDetail
Must SupportTrue
Appointment.previousAppointment
Cardinality0...1
TypeReference(Appointment)
Must SupportTrue
Appointment.originatingAppointment
Cardinality0...1
TypeReference(http://hl7.org/fhir/StructureDefinition/Appointment-verto)
Must SupportTrue
Appointment.start
Cardinality0...1
Typeinstant
Must SupportTrue
Appointment.end
Cardinality0...1
Typeinstant
Must SupportTrue
Appointment.minutesDuration
Cardinality0...1
TypepositiveInt
Must SupportTrue
Appointment.requestedPeriod
Cardinality0...*
TypePeriod
Must SupportTrue
Appointment.slot
Cardinality0...*
TypeReference(Slot)
Must SupportTrue
Appointment.created
Cardinality0...1
TypedateTime
Must SupportTrue
Appointment.cancellationDate
Cardinality0...1
TypedateTime
Must SupportTrue
Appointment.subject
Cardinality0...1
TypeReference(http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile)
Must SupportTrue
Appointment.participant
Cardinality0...*
TypeBackboneElement
Must SupportTrue
Appointment.participant.actor
Cardinality0...1
TypeReference(http://hl7.org/fhir/StructureDefinition/Verto's Patient Profile | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location)
Must SupportTrue
Appointment.recurrenceId
Cardinality0...1
Typestring
Must SupportTrue
Appointment.occurrenceChanged
Cardinality0...1
Typeboolean
Must SupportTrue
Appointment.recurrenceTemplate
Cardinality0...1
TypeBackboneElement
Must SupportTrue
Appointment.recurrenceTemplate.recurrenceType
Cardinality0...1
Typecode
Must SupportTrue
Appointment.recurrenceTemplate.lastOccurrenceDate
Cardinality0...1
TypedateTime
Must SupportTrue
Appointment.recurrenceTemplate.occurrenceCount
Cardinality0...1
TypepositiveInt
Must SupportTrue
<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="Appointment-verto" />
    <url value="http://verto.ca/fhir/StructureDefinition/Appointment-verto" />
    <version value="1.0.0" />
    <name value="Appointment" />
    <title value="Verto&#39;s Appointment Profile" />
    <status value="active" />
    <experimental value="true" />
    <date value="2025-01-13" />
    <publisher value="Verto Health" />
    <description value="Appointment Profile constrained by Verto&#39;s Digital Twin" />
    <fhirVersion value="5.0.0" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="Appointment" />
    <baseDefinition value="http://hl7.org/fhir/R5/StructureDefinition/Appointment" />
    <derivation value="constraint" />
    <differential>
        <element id="Appointment">
            <path value="Appointment" />
            <short value="Verto&#39;s Appointment Profile" />
            <definition value="A booking of a healthcare event among patient(s), practitioner(s), etc." />
        </element>
        <element id="Appointment.identifier">
            <path value="Appointment.identifier" />
            <short value="External Ids for this appointment" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="Identifier" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.status">
            <path value="Appointment.status" />
            <short value="proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist" />
            <min value="1" />
            <max value="1" />
            <type>
                <code value="code" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="http://hl7.org/fhir/ValueSet/appointmentstatus" />
            </binding>
        </element>
        <element id="Appointment.cancellationReason">
            <path value="Appointment.cancellationReason" />
            <short value="The reason for appointment cancellation" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://hl7.org/fhir/ValueSet/appointment-cancellation-reason" />
            </binding>
        </element>
        <element id="Appointment.class">
            <path value="Appointment.class" />
            <short value="Classification of service" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="example" />
                <valueSet value="http://hl7.org/fhir/ValueSet/appointment-service-class" />
            </binding>
        </element>
        <element id="Appointment.serviceCategory">
            <path value="Appointment.serviceCategory" />
            <short value="A broad categorization of the service" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://hl7.org/fhir/ValueSet/service-category" />
            </binding>
        </element>
        <element id="Appointment.serviceType">
            <path value="Appointment.serviceType" />
            <short value="Specific service" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://hl7.org/fhir/ValueSet/service-type" />
            </binding>
        </element>
        <element id="Appointment.appointmentType">
            <path value="Appointment.appointmentType" />
            <short value="The type of appointment" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="CodeableConcept" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://hl7.org/fhir/ValueSet/appointment-type" />
            </binding>
        </element>
        <element id="Appointment.reason">
            <path value="Appointment.reason" />
            <short value="Reason for appointment" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="CodeableReference" />
                <targetProfile value="http://verto.ca/fhir/StructureDefinition/Condition-verto" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Procedure" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Observation" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation" />
            </type>
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://hl7.org/fhir/ValueSet/encounter-reason" />
            </binding>
        </element>
        <element id="Appointment.priority">
            <path value="Appointment.priority" />
            <short value="Appointment priority" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="unsignedInt" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.description">
            <path value="Appointment.description" />
            <short value="Additional appointment notes or comments" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="string" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.replaces">
            <path value="Appointment.replaces" />
            <short value="Appointment that this appointment replaces" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://verto.ca/fhir/StructureDefinition/Appointment-verto" />
            </type>
            <mustSupport value="true" />
        </element>
        <!--  VirtualService  -->
        <element id="Appointment.virtualService">
            <path value="Appointment.virtualService" />
            <short value="Virtual service details" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="VirtualServiceDetail" />
                <profile value="http://verto.ca/fhir/StructureDefinition/VirtualServiceDetail-verto" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.previousAppointment">
            <path value="Appointment.previousAppointment" />
            <short value="Previous appointment that this appointment follows" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://verto.ca/fhir/StructureDefinition/Appointment-verto" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.originatingAppointment">
            <path value="Appointment.originatingAppointment" />
            <short value="The original appointment that this one is based on" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Appointment-verto" />
            </type>
            <mustSupport value="true" />
        </element>
        <!--  Time elements  -->
        <element id="Appointment.start">
            <path value="Appointment.start" />
            <short value="Start time of appointment" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="instant" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.end">
            <path value="Appointment.end" />
            <short value="End time of appointment" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="instant" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.minutesDuration">
            <path value="Appointment.minutesDuration" />
            <short value="Duration in minutes" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="positiveInt" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.requestedPeriod">
            <path value="Appointment.requestedPeriod" />
            <short value="Requested time period for appointment" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="Period" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.slot">
            <path value="Appointment.slot" />
            <short value="The slots that this appointment is filling" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://verto.ca/fhir/StructureDefinition/Slot-verto" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.created">
            <path value="Appointment.created" />
            <short value="Creation time" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="dateTime" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.cancellationDate">
            <path value="Appointment.cancellationDate" />
            <short value="When appointment was cancelled" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="dateTime" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.subject">
            <path value="Appointment.subject" />
            <short value="The patient for the appointment" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://verto.ca/fhir/StructureDefinition/Verto&#39;s Patient Profile" />
            </type>
            <mustSupport value="true" />
        </element>
        <!--  Participant  -->
        <element id="Appointment.participant">
            <path value="Appointment.participant" />
            <short value="Participants involved in appointment" />
            <min value="0" />
            <max value="*" />
            <type>
                <code value="BackboneElement" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.participant.actor">
            <path value="Appointment.participant.actor" />
            <short value="Person, Location or Resource" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Verto&#39;s Patient Profile" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Practitioner" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/PractitionerRole" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/RelatedPerson" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Device" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/HealthcareService" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Location" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.recurrenceId">
            <path value="Appointment.recurrenceId" />
            <short value="Identifier of recurring appointment" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="string" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.occurrenceChanged">
            <path value="Appointment.occurrenceChanged" />
            <short value="Indicates if occurrence was changed" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="boolean" />
            </type>
            <mustSupport value="true" />
        </element>
        <!--  RecurrenceTemplate  -->
        <element id="Appointment.recurrenceTemplate">
            <path value="Appointment.recurrenceTemplate" />
            <short value="Recurring appointment template" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="BackboneElement" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.recurrenceTemplate.recurrenceType">
            <path value="Appointment.recurrenceTemplate.recurrenceType" />
            <short value="Type of recurrence" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="code" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.recurrenceTemplate.lastOccurrenceDate">
            <path value="Appointment.recurrenceTemplate.lastOccurrenceDate" />
            <short value="Date of last occurrence" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="dateTime" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Appointment.recurrenceTemplate.occurrenceCount">
            <path value="Appointment.recurrenceTemplate.occurrenceCount" />
            <short value="Number of occurrences" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="positiveInt" />
            </type>
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>
{
    "resourceType": "StructureDefinition",
    "id": "Appointment-verto",
    "url": "http://verto.ca/fhir/StructureDefinition/Appointment-verto",
    "version": "1.0.0",
    "name": "Appointment",
    "title": "Verto's Appointment Profile",
    "status": "active",
    "experimental": true,
    "date": "2025-01-13",
    "publisher": "Verto Health",
    "description": "Appointment Profile constrained by Verto's Digital Twin",
    "fhirVersion": "5.0.0",
    "kind": "resource",
    "abstract": false,
    "type": "Appointment",
    "baseDefinition": "http://hl7.org/fhir/R5/StructureDefinition/Appointment",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Appointment",
                "path": "Appointment",
                "short": "Verto's Appointment Profile",
                "definition": "A booking of a healthcare event among patient(s), practitioner(s), etc."
            },
            {
                "id": "Appointment.identifier",
                "path": "Appointment.identifier",
                "short": "External Ids for this appointment",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "Identifier"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.status",
                "path": "Appointment.status",
                "short": "proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist",
                "min": 1,
                "max": "1",
                "type":  [
                    {
                        "code": "code"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "http://hl7.org/fhir/ValueSet/appointmentstatus"
                }
            },
            {
                "id": "Appointment.cancellationReason",
                "path": "Appointment.cancellationReason",
                "short": "The reason for appointment cancellation",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://hl7.org/fhir/ValueSet/appointment-cancellation-reason"
                }
            },
            {
                "id": "Appointment.class",
                "path": "Appointment.class",
                "short": "Classification of service",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "example",
                    "valueSet": "http://hl7.org/fhir/ValueSet/appointment-service-class"
                }
            },
            {
                "id": "Appointment.serviceCategory",
                "path": "Appointment.serviceCategory",
                "short": "A broad categorization of the service",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://hl7.org/fhir/ValueSet/service-category"
                }
            },
            {
                "id": "Appointment.serviceType",
                "path": "Appointment.serviceType",
                "short": "Specific service",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://hl7.org/fhir/ValueSet/service-type"
                }
            },
            {
                "id": "Appointment.appointmentType",
                "path": "Appointment.appointmentType",
                "short": "The type of appointment",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "CodeableConcept"
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://hl7.org/fhir/ValueSet/appointment-type"
                }
            },
            {
                "id": "Appointment.reason",
                "path": "Appointment.reason",
                "short": "Reason for appointment",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "CodeableReference",
                        "targetProfile":  [
                            "http://verto.ca/fhir/StructureDefinition/Condition-verto",
                            "http://hl7.org/fhir/StructureDefinition/Procedure",
                            "http://hl7.org/fhir/StructureDefinition/Observation",
                            "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation"
                        ]
                    }
                ],
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://hl7.org/fhir/ValueSet/encounter-reason"
                }
            },
            {
                "id": "Appointment.priority",
                "path": "Appointment.priority",
                "short": "Appointment priority",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "unsignedInt"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.description",
                "path": "Appointment.description",
                "short": "Additional appointment notes or comments",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "string"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.replaces",
                "path": "Appointment.replaces",
                "short": "Appointment that this appointment replaces",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://verto.ca/fhir/StructureDefinition/Appointment-verto"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.virtualService",
                "path": "Appointment.virtualService",
                "short": "Virtual service details",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "VirtualServiceDetail",
                        "profile":  [
                            "http://verto.ca/fhir/StructureDefinition/VirtualServiceDetail-verto"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.previousAppointment",
                "path": "Appointment.previousAppointment",
                "short": "Previous appointment that this appointment follows",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://verto.ca/fhir/StructureDefinition/Appointment-verto"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.originatingAppointment",
                "path": "Appointment.originatingAppointment",
                "short": "The original appointment that this one is based on",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Appointment-verto"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.start",
                "path": "Appointment.start",
                "short": "Start time of appointment",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "instant"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.end",
                "path": "Appointment.end",
                "short": "End time of appointment",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "instant"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.minutesDuration",
                "path": "Appointment.minutesDuration",
                "short": "Duration in minutes",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "positiveInt"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.requestedPeriod",
                "path": "Appointment.requestedPeriod",
                "short": "Requested time period for appointment",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "Period"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.slot",
                "path": "Appointment.slot",
                "short": "The slots that this appointment is filling",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://verto.ca/fhir/StructureDefinition/Slot-verto"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.created",
                "path": "Appointment.created",
                "short": "Creation time",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "dateTime"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.cancellationDate",
                "path": "Appointment.cancellationDate",
                "short": "When appointment was cancelled",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "dateTime"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.subject",
                "path": "Appointment.subject",
                "short": "The patient for the appointment",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://verto.ca/fhir/StructureDefinition/Verto's Patient Profile"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.participant",
                "path": "Appointment.participant",
                "short": "Participants involved in appointment",
                "min": 0,
                "max": "*",
                "type":  [
                    {
                        "code": "BackboneElement"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.participant.actor",
                "path": "Appointment.participant.actor",
                "short": "Person, Location or Resource",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Verto's Patient Profile",
                            "http://hl7.org/fhir/StructureDefinition/Practitioner",
                            "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
                            "http://hl7.org/fhir/StructureDefinition/RelatedPerson",
                            "http://hl7.org/fhir/StructureDefinition/Device",
                            "http://hl7.org/fhir/StructureDefinition/HealthcareService",
                            "http://hl7.org/fhir/StructureDefinition/Location"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.recurrenceId",
                "path": "Appointment.recurrenceId",
                "short": "Identifier of recurring appointment",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "string"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.occurrenceChanged",
                "path": "Appointment.occurrenceChanged",
                "short": "Indicates if occurrence was changed",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "boolean"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.recurrenceTemplate",
                "path": "Appointment.recurrenceTemplate",
                "short": "Recurring appointment template",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "BackboneElement"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.recurrenceTemplate.recurrenceType",
                "path": "Appointment.recurrenceTemplate.recurrenceType",
                "short": "Type of recurrence",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "code"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.recurrenceTemplate.lastOccurrenceDate",
                "path": "Appointment.recurrenceTemplate.lastOccurrenceDate",
                "short": "Date of last occurrence",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "dateTime"
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Appointment.recurrenceTemplate.occurrenceCount",
                "path": "Appointment.recurrenceTemplate.occurrenceCount",
                "short": "Number of occurrences",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "positiveInt"
                    }
                ],
                "mustSupport": true
            }
        ]
    }
}