FHIR Slot
Under etablering- dokumentasjon ikke ferdig
FHIR Slot er foreslått tatt i bruk for timevalg. Annen bruk er relevant på sikt.
Profilen er basert på R4 Slot - FHIR v4.0.1 (hl7.org)
Gjenerelt om Slot
Slot ressurser brukes til å tilby tidsrom som kan bookes ved hjelp av en avtale. De gir ikke informasjon om tilgjengelige avtaler, bare tiden, og eventuelt hva tiden kan brukes til. Dette er effektivt tidsrom med ledig/opptatt tid. Slotter kan også merkes som opptatt uten å ha tilknyttede avtaler.
En slot kan ha mer enn én avtale tildelt seg. Et planleggingssystem kan tillate flere tildelinger opp til et spesifikt antall plasser. En slot kan merkes som overbooket, noe som indikerer at det er for mange avtaler tildelt den.
I noen situasjoner kan en tjeneste ha et spesifikt sett med slotter reservert for spesifikke formål, som "drop-in" eller en spesifikk organisasjon har en "fast booking" for torsdag morgener. Dette bør representeres ved hjelp av feltet appointmentType med en spesifisert og avtalt verdi.
Sikkerhetstillatelser eller spesifikke forretningsregler på systemet kan håndheve at kun berettigede avtaler blir tildelt dem.
Profil for Slot
Hvordan feltene benyttes er angitt i figuren og beskrivelse under. For bruk av metadata, id, indentifier og generelt bruk af FHIR på Helsenorge se Bruk av FHIR på Helsenorge - Helsenorge - Confluence (atlassian.net)
Det er også definert invarianter som gjelder for profilen - se egen tabell.
|
|
---|---|
Todo: Legg inn figur | identifier (mandatory): En identifikator som identifiserer slot uavhengig av ressursens id på en FHIR-server bør hvis mulig være en UUID . Identifier er profilert til å ha kardinalatet 1..1 og det er mandatory å legge til både system og value. "identifier": [
{
"system": "urn:ietf:rfc:3986",
"value": "urn:uuid:123e4567-e89b-12d3-a456-426614174000"
}
], |
meta.profile (mandatory): Meta.profile forteller hvilken profil instans er basert på. Dette er for å forenkle implementering når det er flere profiler som er aktuelle for Helsenorge. "meta": {
"profile": ["http://helsenorge.no/fhir/StructureDefinition/hn-basis-slot"]
}, | |
status (mandatory): Status på Sloti henhold til FHIR valueset. Valueset-slotstatus - FHIR v4.0.1 <status value="free" /> | |
schedule (mandatory): referense til den aktuelle time boken. Profil støtter både litteral og logisk referanse | |
serviceCategory (mandatory): En bred kategorisering av tjenesten som skal utføres i den perioden som slot har definert. Valueset hn-appointment-ServiceCategory-code-vs skal brukes for denne kategoriseringen. hn-appointment-ServiceCategory-code-vs - v0.1.0 (norskhelsenett.github.io). I denne profilen er kardinalitet satt til 1..1 | |
| appointmentType (optional): Type appointment som er ment for slot. Feltet er ikke påkrevd men det er ønskelig at det brukes i instanser som er basert på profilen. Følgende valueset er påkrevd.: hn-appointment-AppointmentType-code-vs - v0.1.0 (norskhelsenett.github.io) |
| start (mandatory): Date/time når slot starter |
| end (mandatory): Date/time når slot avsluttes |
Terminology Bindinger
Path | Conformance | ValueSet |
Slot.identifier.use | ||
Slot.serviceCategory | ||
Slot.serviceType | ||
Slot.appointmentType | ||
Slot.status |
Invarianter (Regler)
Id | Grade | Path(s) | Details |
dom-2 | error | Slot | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
dom-3 | error | Slot | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
dom-4 | error | Slot | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
dom-5 | error | Slot | If a resource is contained in another resource, it SHALL NOT have a security label |
dom-6 | best practice | Slot | A resource should have narrative for robust management |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
ext-1 | error | **ALL** elements | Must have either extensions or value[x], not both |
inv-4 | error | Slot.serviceCategory.coding, Slot.serviceType.coding, Slot.specialty.coding | If code is used in a codable consept the system must be used |
per-1 | error | Slot.identifier.period | If present, start SHALL have a lower value than end |
ref-1 | error | Slot.identifier.assigner, Slot.schedule | SHALL have a contained resource if a local reference is provided |
Søkeparameter
Søkeparametere vil utvides for å støtte representasjon men det er ikke lagt inn i vedlagt er liste. Listen viser hvilken søk er definert. Se Search - FHIR v4.0.1 (hl7.org) og Search - FHIR v4.0.1 (hl7.org)
Name | Type | Description | Expression |
appointment-type | The style of appointment or patient that may be booked in the slot (not service type) | Slot.appointmentType | |
identifier | A Slot Identifier | Slot.identifier | |
schedule | The Schedule Resource that we are seeking a slot within | Slot.schedule | |
service-category | A broad categorization of the service that is to be performed during this appointment | Slot.serviceCategory | |
service-type | The type of appointments that can be booked into the slot | Slot.serviceType | |
specialty | The specialty of a practitioner that would be required to perform the service requested in this appointment | Slot.specialty | |
start | Appointment date/time. | Slot.start | |
status | The free/busy status of the appointment | Slot.status |
Mapping til og delvis fra iCal
BEGIN:VCALENDAR
ogEND:VCALENDAR
: Disse taggene indikerer starten og slutten på kalenderdataene.VERSION:2.0
: Angir hvilken versjon av iCal som brukes.PRODID
: Identifiserer produktet som opprettet iCal-dataene.BEGIN:VEVENT
ogEND:VEVENT
: Omslutter en individuell kalenderhendelse.UID
: En unik identifikator for hendelsen. I dette tilfellet brukes UUID for FHIR Slot og organisasjons part av identifier.systemDTSTAMP
: Dato/tidsstempel for når iCal-dataene ble opprettet.DTSTART
ogDTEND
: Start- og sluttidspunkt for hendelsen i UTC.SUMMARY
: En kort oppsummering eller tittel på hendelsen.DESCRIPTION
: En detaljert beskrivelse av hendelsen.CATEGORIES
: Kategorier eller merkelapper for hendelsen.LOCATION
: En referanse til den tilknyttede timeplanen (fra FHIR Slot-ressursen).
Denne representasjonen er en grunnleggende oversettelse av FHIR Slot til en iCal-hendelse. Ytterligere iCal-egenskaper kan brukes til å representere flere detaljer etter behov. Det er også viktig å merke seg at iCal primært er et format for kalenderføring og planlegging og kanskje ikke kan fullt ut representere alle detaljer og nyanser i en FHIR Slot-ressurs.
Å bruke LOCATION
-feltet i iCalendar (iCal)-formatet for å referere til den tilknyttede timeplanen (som angitt ved Schedule/example-schedule-uuid
i vårt eksempel) er litt uvanlig. Vanligvis er LOCATION
-feltet i en iCal-hendelse ment å representere den fysiske eller virtuelle plasseringen der hendelsen finner sted, som en adresse eller en videokonferanselenke.
Men i sammenhengen med å konvertere en FHIR Slot-ressurs til iCal-format, står vi overfor en utfordring: iCal har ikke et direkte ekvivalent for alle konseptene og feltene som finnes i FHIR. FHIRs Slot-ressurs inkluderer en referanse til en Schedule-ressurs, som er kritisk informasjon for å forstå konteksten til sloten. Siden iCal mangler et dedikert felt for denne typen referanse, kan LOCATION
-feltet omformuleres for å formidle denne informasjonen.
Denne omformuleringen er i bunn og grunn en nødløsning for å inkludere viktig informasjon fra FHIR-ressursen i iCal-formatet, som er mer begrenset i sin evne til å beskrive komplekse planleggingsscenarioer. Ved implementering er det viktig å ha en klar avtale slik bruk av LOCATION.
I tilfelle schedule er logisk referanse brukes X-SCHEDULE-REFERENCE
: [slot.schedule.system]|[slot.schedule.value]
Eksempel: