Profiles & Operations > Profile: Schedule

Profile: Schedule

Canonical URL:http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule

Simplifier project page: Schedule

Derived from: Schedule (R4)

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work

Differential View

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
shiftTypeS I1..1Extension(string)
hoursOfOperationS I1..*Extension(Complex)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
activeS Σ ?!1..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
id0..1string
extensionI0..*Extension
startS Σ I1..1dateTime
endS Σ I1..1dateTime
comment0..1string

Hybrid View

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
shiftTypeS I1..1Extension(string)
hoursOfOperationS I1..*Extension(Complex)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
activeS Σ ?!1..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
id0..1string
extensionI0..*Extension
startS Σ I1..1dateTime
endS Σ I1..1dateTime
comment0..1string

Snapshot View

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
securityΣ0..*CodingBinding
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
shiftTypeS I1..1Extension(string)
hoursOfOperationS I1..*Extension(Complex)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
activeS Σ ?!1..1boolean
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
id0..1string
extensionI0..*Extension
referenceΣ I0..1string
typeΣ0..1uriBinding
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueS Σ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
displayΣ0..1string
id0..1string
extensionI0..*Extension
startS Σ I1..1dateTime
endS Σ I1..1dateTime
comment0..1string

Table View

Schedule..
Schedule.meta1..
Schedule.meta.profile1..
Schedule.extension2..
Schedule.extensionExtension..
Schedule.extensionExtension..
Schedule.identifier1..1
Schedule.identifier.system1..
Schedule.identifier.value1..
Schedule.active1..
Schedule.actorReference(Location)..1
Schedule.actor.identifier1..
Schedule.actor.identifier.system1..
Schedule.actor.identifier.value1..
Schedule.planningHorizon1..
Schedule.planningHorizon.start1..
Schedule.planningHorizon.end1..

JSON View

{
    "resourceType": "StructureDefinition",
    "id": "ca-on-setp-profile-Schedule",
    "url": "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule",
    "version": "1.0.0",
    "name": "Schedule",
    "title": "Schedule",
    "status": "draft",
    "date": "2023-03-10",
    "publisher": "Ontario Health",
    "contact":  [
        {
            "telecom":  [
                {
                    "system": "url",
                    "value": "http://ontariohealth.ca/fhir/"
                },
                {
                    "system": "email",
                    "value": "some.email@ontariohealth.ca"
                }
            ]
        }
    ],
    "description": "SETP Schedule Profile",
    "copyright": "Used by permission of HL7 International, all rights reserved Creative Commons License",
    "fhirVersion": "4.0.1",
    "mapping":  [
        {
            "identity": "rim",
            "uri": "http://hl7.org/v3",
            "name": "RIM Mapping"
        },
        {
            "identity": "ical",
            "uri": "http://ietf.org/rfc/2445",
            "name": "iCalendar"
        },
        {
            "identity": "w5",
            "uri": "http://hl7.org/fhir/fivews",
            "name": "FiveWs Pattern Mapping"
        }
    ],
    "kind": "resource",
    "abstract": false,
    "type": "Schedule",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Schedule",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Schedule.meta",
                "path": "Schedule.meta",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.meta.profile",
                "path": "Schedule.meta.profile",
                "comment": "#### **_` FOR SETP USAGE: The meta.profile = http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule|1.0.0 `_**\n\nIt is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time.  The list of profile URLs is a set.",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.extension",
                "path": "Schedule.extension",
                "min": 2
            },
            {
                "id": "Schedule.extension:shiftType",
                "path": "Schedule.extension",
                "sliceName": "shiftType",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-ext-shift-type"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Schedule.extension:hoursOfOperation",
                "path": "Schedule.extension",
                "sliceName": "hoursOfOperation",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-ext-hours-of-operation"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Schedule.identifier",
                "path": "Schedule.identifier",
                "min": 1,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "Schedule.identifier.system",
                "path": "Schedule.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.identifier.value",
                "path": "Schedule.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.active",
                "path": "Schedule.active",
                "short": "Whether this schedule is entered-in-error or not",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.actor",
                "path": "Schedule.actor",
                "short": "Reference to the Location(OR Room) which will be specified by identifier for this Schedule",
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Location"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "Schedule.actor.identifier",
                "path": "Schedule.actor.identifier",
                "short": "indicates the identifier of the Location(OR Room)",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.actor.identifier.system",
                "path": "Schedule.actor.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.actor.identifier.value",
                "path": "Schedule.actor.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.planningHorizon",
                "path": "Schedule.planningHorizon",
                "short": "Main Schedule Start/Stop Time",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.planningHorizon.start",
                "path": "Schedule.planningHorizon.start",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Schedule.planningHorizon.end",
                "path": "Schedule.planningHorizon.end",
                "min": 1,
                "mustSupport": true
            }
        ]
    }
}

XML View

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="ca-on-setp-profile-Schedule" />
    <url value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule" />
    <version value="1.0.0" />
    <name value="Schedule" />
    <title value="Schedule" />
    <status value="draft" />
    <date value="2023-03-10" />
    <publisher value="Ontario Health" />
    <contact>
        <telecom>
            <system value="url" />
            <value value="http://ontariohealth.ca/fhir/" />
        </telecom>
        <telecom>
            <system value="email" />
            <value value="some.email@ontariohealth.ca" />
        </telecom>
    </contact>
    <description value="SETP Schedule Profile" />
    <copyright value="Used by permission of HL7 International, all rights reserved Creative Commons License" />
    <fhirVersion value="4.0.1" />
    <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>
    <kind value="resource" />
    <abstract value="false" />
    <type value="Schedule" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Schedule" />
    <derivation value="constraint" />
    <differential>
        <element id="Schedule.meta">
            <path value="Schedule.meta" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.meta.profile">
            <path value="Schedule.meta.profile" />
            <comment value="#### **_` FOR SETP USAGE: The meta.profile = http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule|1.0.0 `_**\n\nIt is up to the server and/or other infrastructure of policy to determine whether/how these claims are verified and/or updated over time.  The list of profile URLs is a set." />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.extension">
            <path value="Schedule.extension" />
            <min value="2" />
        </element>
        <element id="Schedule.extension:shiftType">
            <path value="Schedule.extension" />
            <sliceName value="shiftType" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-ext-shift-type" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Schedule.extension:hoursOfOperation">
            <path value="Schedule.extension" />
            <sliceName value="hoursOfOperation" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-ext-hours-of-operation" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Schedule.identifier">
            <path value="Schedule.identifier" />
            <min value="1" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.identifier.system">
            <path value="Schedule.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.identifier.value">
            <path value="Schedule.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.active">
            <path value="Schedule.active" />
            <short value="Whether this schedule is entered-in-error or not" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.actor">
            <path value="Schedule.actor" />
            <short value="Reference to the Location(OR Room) which will be specified by identifier for this Schedule" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Location" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="Schedule.actor.identifier">
            <path value="Schedule.actor.identifier" />
            <short value="indicates the identifier of the Location(OR Room)" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.actor.identifier.system">
            <path value="Schedule.actor.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.actor.identifier.value">
            <path value="Schedule.actor.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.planningHorizon">
            <path value="Schedule.planningHorizon" />
            <short value="Main Schedule Start/Stop Time" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.planningHorizon.start">
            <path value="Schedule.planningHorizon.start" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Schedule.planningHorizon.end">
            <path value="Schedule.planningHorizon.end" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>

Usage

An OR Schedule is represented using the FHIR Schedule Profile. In order to create a Schedule, a prerequisite is to have created the Location (OR Room) first. To create a Schedule, the actor field must reference the Location (OR Room) using the identifier (same identifier used during creation of the OR). If the OR has different nursing shifts, multiple OR Schedules can be created by specifying unique ShiftTypes. By viewing all the Schedules for an OR it will provide the full picture of the OR Room’s schedule. Any updates to an existing Schedule will require using the same Resource identifier during the creation of the Resource. Updates to this Resource represent the most recent state of the Schedule.

Notes

.id

  • used to uniquely identify the resource

.meta.profile

  • used to declare conformance to this profile
  • populate with a fixed value: http://ontariohealth.ca/fhir/StructureDefinition/ca-on-setp-profile-Schedule

.extension:HousrsOfOperation

  • HousrsOfOperation.openingTime - to capture Elective Schedule Start Time (Availability Hours)
  • HousrsOfOperation.closingTime - to capture Elective Schedule Stop Time (Availability Hours)
  • HousrsOfOperation.DaysOfWeek - to identify the day of week for the OR Schedule (eg. Monday,Tuesday, etc)

.extension:shiftType

  • to identify the type of the shift(Main,Second, etc)

.identifier

  • indicates a unique identifier to a schedule resource

.active

  • indicates whether the schedule is entered-in-error or not

.actor

  • .identifier - to capture the Location OR Room using system-value pair

.planningHorizon

  • planningHorizon.start - represents the start of the period of tha time that is covered by schedule.
  • planningHorizon.end - represents the end of the period of tha time that is covered by schedule.