Profiles & Operations > Profile: Slot

Profile: Slot

Canonical URL:http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-profile-Slot

Simplifier project page: Slot

Derived from: Slot (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)
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
slotNameS I0..1Extension(string)
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
adjustmentReasonS I0..1Extension(CodeableConcept)
isRemovedS I0..1Extension(boolean)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
appointmentTypeΣ0..1CodeableConceptBinding
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
statusS Σ1..1codeBinding
startS Σ1..1instant
endS Σ1..1instant
overbooked0..1boolean
comment0..1string

Hybrid View

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
slotNameS I0..1Extension(string)
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
adjustmentReasonS I0..1Extension(CodeableConcept)
isRemovedS I0..1Extension(boolean)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
appointmentTypeΣ0..1CodeableConceptBinding
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
statusS Σ1..1codeBinding
startS Σ1..1instant
endS Σ1..1instant
overbooked0..1boolean
comment0..1string

Snapshot View

idΣ0..1string
id0..1string
extensionI0..*Extension
versionIdΣ0..1id
lastUpdatedΣ0..1instant
sourceΣ0..1uri
profileS Σ1..*canonical(StructureDefinition)
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
tagΣ0..*Coding
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
slotNameS I0..1Extension(string)
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueDateTimedateTime
url1..1uriFixed Value
id0..1string
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueStringstring
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
valueIntegerinteger
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ0..1uri
valueS Σ0..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
id0..1string
extensionI0..*Extension
url1..1uriFixed Value
id0..1string
extensionI0..*Extension
id0..1string
extensionI0..*Extension
systemS Σ0..1uriFixed Value
versionΣ0..1string
codeS Σ0..1codeBinding
displayS Σ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
url1..1uriFixed Value
adjustmentReasonS I0..1Extension(CodeableConcept)
isRemovedS I0..1Extension(boolean)
modifierExtension?! I0..*Extension
id0..1string
extensionI0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemS Σ1..1uri
valueΣ1..1string
periodΣ I0..1Period
assignerΣ I0..1Reference(Organization)
serviceCategoryΣ0..*CodeableConcept
serviceTypeΣ0..*CodeableConcept
specialtyΣ0..*CodeableConceptBinding
appointmentTypeΣ0..1CodeableConceptBinding
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
statusS Σ1..1codeBinding
startS Σ1..1instant
endS Σ1..1instant
overbooked0..1boolean
comment0..1string

Table View

Slot..
Slot.meta1..
Slot.meta.profile1..
Slot.meta.security..1
Slot.meta.security.system..
Slot.meta.security.code..
Slot.extensionExtension..
Slot.extensionExtension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extensionExtension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extensionExtension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension..
Slot.extension.extension.value[x]..
Slot.extension.extension.value[x].coding..
Slot.extension.extension.value[x].coding.code..
Slot.extensionExtension..
Slot.extensionExtension..
Slot.identifier1..1
Slot.identifier.system1..
Slot.identifier.value1..
Slot.schedule..
Slot.schedule.identifier1..
Slot.schedule.identifier.system1..
Slot.schedule.identifier.value1..
Slot.status..
Slot.start..
Slot.end..
Slot.comment..

JSON View

{
    "resourceType": "StructureDefinition",
    "id": "ca-on-seris-profile-Slot",
    "url": "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-profile-Slot",
    "version": "1.0.0",
    "name": "Slot",
    "title": "Slot",
    "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": "SERIS Slot 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"
        },
        {
            "identity": "SERIS-MDS-Mapping",
            "name": "SERIS MDS Mapping"
        }
    ],
    "kind": "resource",
    "abstract": false,
    "type": "Slot",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Slot",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "Slot.meta",
                "path": "Slot.meta",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Slot.meta.profile",
                "path": "Slot.meta.profile",
                "comment": "#### **_` FOR SERIS USAGE: The meta.profile = http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-profile-Slot|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": "Slot.meta.security",
                "path": "Slot.meta.security",
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "Slot.meta.security.system",
                "path": "Slot.meta.security.system",
                "fixedUri": "http://terminology.hl7.org/CodeSystem/v3-ActReason",
                "mustSupport": true
            },
            {
                "id": "Slot.meta.security.code",
                "path": "Slot.meta.security.code",
                "fixedCode": "HTEST",
                "mustSupport": true
            },
            {
                "id": "Slot.extension:slotName",
                "path": "Slot.extension",
                "sliceName": "slotName",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-slot-name"
                        ]
                    }
                ],
                "isModifier": false,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Slot Name"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockChange",
                "path": "Slot.extension",
                "sliceName": "blockChange",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-blockchange"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Slot.extension:blockChange.extension:changeDate",
                "path": "Slot.extension.extension",
                "sliceName": "changeDate",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Change Request Date"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockChange.extension:changeAuthority",
                "path": "Slot.extension.extension",
                "sliceName": "changeAuthority",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Change Authority"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockChange.extension:changeReason",
                "path": "Slot.extension.extension",
                "sliceName": "changeReason",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Change Reason"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockRelease",
                "path": "Slot.extension",
                "sliceName": "blockRelease",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-block-release"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Slot.extension:blockRelease.extension:releaseMinutes",
                "path": "Slot.extension.extension",
                "sliceName": "releaseMinutes",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Release Minutes"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockRelease.extension:releaseReason",
                "path": "Slot.extension.extension",
                "sliceName": "releaseReason",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Reason for Release"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockRelease.extension:releaseDate",
                "path": "Slot.extension.extension",
                "sliceName": "releaseDate",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Release Date"
                    }
                ]
            },
            {
                "id": "Slot.extension:blockRelease.extension:releaseRequestDate",
                "path": "Slot.extension.extension",
                "sliceName": "releaseRequestDate",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Release Request DateTime"
                    }
                ]
            },
            {
                "id": "Slot.extension:block",
                "path": "Slot.extension",
                "sliceName": "block",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-block"
                        ]
                    }
                ],
                "isModifier": false
            },
            {
                "id": "Slot.extension:block.extension:blockFrequency",
                "path": "Slot.extension.extension",
                "sliceName": "blockFrequency",
                "short": "Block Frequency",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Frequency"
                    }
                ]
            },
            {
                "id": "Slot.extension:block.extension:blockAutoRelease",
                "path": "Slot.extension.extension",
                "sliceName": "blockAutoRelease",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Auto Release (Hours)"
                    }
                ]
            },
            {
                "id": "Slot.extension:block.extension:blockSurgeons",
                "path": "Slot.extension.extension",
                "sliceName": "blockSurgeons",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Surgeon"
                    }
                ]
            },
            {
                "id": "Slot.extension:block.extension:blockService",
                "path": "Slot.extension.extension",
                "sliceName": "blockService",
                "short": "Block Service",
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Service"
                    }
                ]
            },
            {
                "id": "Slot.extension:block.extension:blockService.value[x]",
                "path": "Slot.extension.extension.value[x]",
                "binding": {
                    "strength": "extensible"
                }
            },
            {
                "id": "Slot.extension:block.extension:blockService.value[x].coding",
                "path": "Slot.extension.extension.value[x].coding",
                "binding": {
                    "strength": "extensible"
                }
            },
            {
                "id": "Slot.extension:block.extension:blockService.value[x].coding.code",
                "path": "Slot.extension.extension.value[x].coding.code",
                "binding": {
                    "strength": "extensible"
                }
            },
            {
                "id": "Slot.extension:adjustmentReason",
                "path": "Slot.extension",
                "sliceName": "adjustmentReason",
                "short": "Adjustment Reason",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-adjustment-reason"
                        ]
                    }
                ],
                "isModifier": false,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Adjustment Reason"
                    }
                ]
            },
            {
                "id": "Slot.extension:isRemoved",
                "path": "Slot.extension",
                "sliceName": "isRemoved",
                "short": "If block is removed or not",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-is-removed"
                        ]
                    }
                ],
                "isModifier": false,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Block Removed (Y/N)"
                    }
                ]
            },
            {
                "id": "Slot.identifier",
                "path": "Slot.identifier",
                "min": 1,
                "max": "1",
                "mustSupport": true
            },
            {
                "id": "Slot.identifier.system",
                "path": "Slot.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Slot.identifier.value",
                "path": "Slot.identifier.value",
                "min": 1
            },
            {
                "id": "Slot.schedule",
                "path": "Slot.schedule",
                "short": "Schedule this block/slot belongs to which will be specified by identifier of the block/slot",
                "mustSupport": true
            },
            {
                "id": "Slot.schedule.identifier",
                "path": "Slot.schedule.identifier",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Slot.schedule.identifier.system",
                "path": "Slot.schedule.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Slot.schedule.identifier.value",
                "path": "Slot.schedule.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "Slot.status",
                "path": "Slot.status",
                "short": "Block Type",
                "mustSupport": true,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "slot status (busy, free, busy-unavailable, removed)"
                    }
                ]
            },
            {
                "id": "Slot.start",
                "path": "Slot.start",
                "short": "Block Start Date/Time",
                "mustSupport": true,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Slot/Block Start Date Time"
                    }
                ]
            },
            {
                "id": "Slot.end",
                "path": "Slot.end",
                "short": "Block Stop Date/Time",
                "definition": "For blocks that are ending this would be used in calculating block utilization",
                "mustSupport": true,
                "mapping":  [
                    {
                        "identity": "SERIS-MDS-Mapping",
                        "map": "Slot/Block Stop Date Time"
                    }
                ]
            },
            {
                "id": "Slot.comment",
                "path": "Slot.comment",
                "short": "Block Change Description",
                "mustSupport": false
            }
        ]
    }
}

XML View

<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="ca-on-seris-profile-Slot" />
    <url value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-profile-Slot" />
    <version value="1.0.0" />
    <name value="Slot" />
    <title value="Slot" />
    <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="SERIS Slot 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>
    <mapping>
        <identity value="SERIS-MDS-Mapping" />
        <name value="SERIS MDS Mapping" />
    </mapping>
    <kind value="resource" />
    <abstract value="false" />
    <type value="Slot" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Slot" />
    <derivation value="constraint" />
    <differential>
        <element id="Slot.meta">
            <path value="Slot.meta" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.meta.profile">
            <path value="Slot.meta.profile" />
            <comment value="#### **_` FOR SERIS USAGE: The meta.profile = http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-profile-Slot|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="Slot.meta.security">
            <path value="Slot.meta.security" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.meta.security.system">
            <path value="Slot.meta.security.system" />
            <fixedUri value="http://terminology.hl7.org/CodeSystem/v3-ActReason" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.meta.security.code">
            <path value="Slot.meta.security.code" />
            <fixedCode value="HTEST" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.extension:slotName">
            <path value="Slot.extension" />
            <sliceName value="slotName" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-slot-name" />
            </type>
            <isModifier value="false" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Slot Name" />
            </mapping>
        </element>
        <element id="Slot.extension:blockChange">
            <path value="Slot.extension" />
            <sliceName value="blockChange" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-blockchange" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Slot.extension:blockChange.extension:changeDate">
            <path value="Slot.extension.extension" />
            <sliceName value="changeDate" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Change Request Date" />
            </mapping>
        </element>
        <element id="Slot.extension:blockChange.extension:changeAuthority">
            <path value="Slot.extension.extension" />
            <sliceName value="changeAuthority" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Change Authority" />
            </mapping>
        </element>
        <element id="Slot.extension:blockChange.extension:changeReason">
            <path value="Slot.extension.extension" />
            <sliceName value="changeReason" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Change Reason" />
            </mapping>
        </element>
        <element id="Slot.extension:blockRelease">
            <path value="Slot.extension" />
            <sliceName value="blockRelease" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-block-release" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Slot.extension:blockRelease.extension:releaseMinutes">
            <path value="Slot.extension.extension" />
            <sliceName value="releaseMinutes" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Release Minutes" />
            </mapping>
        </element>
        <element id="Slot.extension:blockRelease.extension:releaseReason">
            <path value="Slot.extension.extension" />
            <sliceName value="releaseReason" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Reason for Release" />
            </mapping>
        </element>
        <element id="Slot.extension:blockRelease.extension:releaseDate">
            <path value="Slot.extension.extension" />
            <sliceName value="releaseDate" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Release Date" />
            </mapping>
        </element>
        <element id="Slot.extension:blockRelease.extension:releaseRequestDate">
            <path value="Slot.extension.extension" />
            <sliceName value="releaseRequestDate" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Release Request DateTime" />
            </mapping>
        </element>
        <element id="Slot.extension:block">
            <path value="Slot.extension" />
            <sliceName value="block" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-block" />
            </type>
            <isModifier value="false" />
        </element>
        <element id="Slot.extension:block.extension:blockFrequency">
            <path value="Slot.extension.extension" />
            <sliceName value="blockFrequency" />
            <short value="Block Frequency" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Frequency" />
            </mapping>
        </element>
        <element id="Slot.extension:block.extension:blockAutoRelease">
            <path value="Slot.extension.extension" />
            <sliceName value="blockAutoRelease" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Auto Release (Hours)" />
            </mapping>
        </element>
        <element id="Slot.extension:block.extension:blockSurgeons">
            <path value="Slot.extension.extension" />
            <sliceName value="blockSurgeons" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Surgeon" />
            </mapping>
        </element>
        <element id="Slot.extension:block.extension:blockService">
            <path value="Slot.extension.extension" />
            <sliceName value="blockService" />
            <short value="Block Service" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Service" />
            </mapping>
        </element>
        <element id="Slot.extension:block.extension:blockService.value[x]">
            <path value="Slot.extension.extension.value[x]" />
            <binding>
                <strength value="extensible" />
            </binding>
        </element>
        <element id="Slot.extension:block.extension:blockService.value[x].coding">
            <path value="Slot.extension.extension.value[x].coding" />
            <binding>
                <strength value="extensible" />
            </binding>
        </element>
        <element id="Slot.extension:block.extension:blockService.value[x].coding.code">
            <path value="Slot.extension.extension.value[x].coding.code" />
            <binding>
                <strength value="extensible" />
            </binding>
        </element>
        <element id="Slot.extension:adjustmentReason">
            <path value="Slot.extension" />
            <sliceName value="adjustmentReason" />
            <short value="Adjustment Reason" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-adjustment-reason" />
            </type>
            <isModifier value="false" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Adjustment Reason" />
            </mapping>
        </element>
        <element id="Slot.extension:isRemoved">
            <path value="Slot.extension" />
            <sliceName value="isRemoved" />
            <short value="If block is removed or not" />
            <type>
                <code value="Extension" />
                <profile value="http://ontariohealth.ca/fhir/StructureDefinition/ca-on-seris-ext-is-removed" />
            </type>
            <isModifier value="false" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Block Removed (Y/N)" />
            </mapping>
        </element>
        <element id="Slot.identifier">
            <path value="Slot.identifier" />
            <min value="1" />
            <max value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.identifier.system">
            <path value="Slot.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.identifier.value">
            <path value="Slot.identifier.value" />
            <min value="1" />
        </element>
        <element id="Slot.schedule">
            <path value="Slot.schedule" />
            <short value="Schedule this block/slot belongs to which will be specified by identifier of the block/slot" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.schedule.identifier">
            <path value="Slot.schedule.identifier" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.schedule.identifier.system">
            <path value="Slot.schedule.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.schedule.identifier.value">
            <path value="Slot.schedule.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="Slot.status">
            <path value="Slot.status" />
            <short value="Block Type" />
            <mustSupport value="true" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="slot status (busy, free, busy-unavailable, removed)" />
            </mapping>
        </element>
        <element id="Slot.start">
            <path value="Slot.start" />
            <short value="Block Start Date/Time" />
            <mustSupport value="true" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Slot/Block Start Date Time" />
            </mapping>
        </element>
        <element id="Slot.end">
            <path value="Slot.end" />
            <short value="Block Stop Date/Time" />
            <definition value="For blocks that are ending this would be used in calculating block utilization" />
            <mustSupport value="true" />
            <mapping>
                <identity value="SERIS-MDS-Mapping" />
                <map value="Slot/Block Stop Date Time" />
            </mapping>
        </element>
        <element id="Slot.comment">
            <path value="Slot.comment" />
            <short value="Block Change Description" />
            <mustSupport value="false" />
        </element>
    </differential>
</StructureDefinition>

Usage

A time Slot in a Schedule is represented using the FHIR Slot Profile. In order to create a Slot, a prerequisite is to have created the OR Schedule first. To create a Slot, the schedule field must reference the OR Schedule using the identifier (same identifier during creation of the OR Schedule).

Blocks:

When Slots have a Surgeon(s) and/or Service assigned, it is now considered a “block”. For blocks, block-metadata (e.g. blockFrequency, blockAutoRelease) shall be provided. When blocks are updated, the blockChange extension data shall be provided.A block can be unassigned/released by clearing the Surgeon(s) and/or Service fields under the block extension. The blockRelease extension data shall be provided whenever a block is released.

Unavailable Slots:

When time slots are being marked as unavailable (e.g. Staff Meeting), the slot’s status shall be set to busy-unavailable. Moreover, an adjustmentReason shall be provided. When an unavailable time slot is free again, an Update shall be sent for that Slot with the slot’s status set to free and adjustmentReason shall be set to Opening.

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-seris-profile-Slot

.extension:slotName

  • name of the slot

.extension:isRemoved

  • indicates if the Slot has been removed or not.

.extension:adjustmentReason

  • used to capture the reason for the adjustment of a slot

.extension:block

  • block.blockFrequency - indicates the recurring time intervals/patterns during which the slots are blocked
  • block.blockAutoRelease - represents the automatic release of blocks after a specifier number of hours
  • block.blockSurgeons - indicates Surgeon(s) that have a time slot reserved for them (CPSO|RCDSO)
  • block.blockService - the Service Category assigned to the block

.extension:blockChange

  • block.blockChange.changeDate - indicates the date and time the block was changed
  • block.blockChange.changeAuthority - identifies who has the authority to make changes to the blocks
  • block.blockChange.changeReason - indicates the reason why Block was changed

.extension:blockRelease

  • block.blockRelease.releaseMinutes - used to capture number of minutes before a block was released
  • block.blockRelease.releaseReason - indicates the reason why the block was released
  • block.blockRelease.releaseDate - indicates the date and time when the block was released
  • block.blockRelease.releaseRequestDate - indicates the date when a reserved block is requested to be released

.identifier

  • used to uniquely identify the slot

.schedule

  • The schedule that the block/slot belongs to

.status

  • the state of the Block/slot (free)

.start

  • Block Start Date/Time the start time for the block

.end

  • Block Stop Date/Time the stop time for the block

.comment

  • Block Change Description of change to the block