Difference between revisions of "Current Context"
Brett Esler (Talk | contribs) |
(→Read) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
Current application context can be queried using well known ''Observation'' resource identifiers. | Current application context can be queried using well known ''Observation'' resource identifiers. | ||
+ | |||
+ | ==Current PractitionerRole Identifier== | ||
+ | Will return a resource <id> valueString value when a user is currently logged into the clinical system. | ||
+ | |||
+ | This can be used to obtain practitioner role details via <fhir-host>/PractitionerRole/<id> | ||
+ | |||
+ | Note: FHIR STU3 service now had globally (rather than locally) unique identifiers | ||
+ | |||
+ | ===Read=== | ||
+ | <pre>GET <fhir-host>/Observation/CTX-PRACTITIONERROLE</pre> | ||
+ | |||
+ | for JSON format add ?_format=json | ||
+ | |||
+ | ===Example=== | ||
+ | <pre> | ||
+ | <Observation xmlns="http://hl7.org/fhir"> | ||
+ | <id value="CTX-PRACTITIONERROLE" /> | ||
+ | <meta> | ||
+ | <lastUpdated value="2017-12-07T14:54:42.49+11:00" /> | ||
+ | </meta> | ||
+ | <text> | ||
+ | <status value="generated" /> | ||
+ | <div xmlns="http://www.w3.org/1999/xhtml"> | ||
+ | <p> Context: PRACTITIONERROLE - CEBD70498A0C2465B2808432371E6571.1-1</p> | ||
+ | </div> | ||
+ | </text> | ||
+ | <status value="final" /> | ||
+ | <code> | ||
+ | <coding> | ||
+ | <system value="http://oridashi.com.au/system/code/context" /> | ||
+ | <code value="PRACTITIONERROLE" /> | ||
+ | <display value="Provider Context" /> | ||
+ | </coding> | ||
+ | </code> | ||
+ | <effectiveDateTime value="2017-12-07T14:54:42.4906904+11:00" /> | ||
+ | <valueString value="CEBD70498A0C2465B2808432371E6571.1-1" /> | ||
+ | </Observation> | ||
+ | </pre> | ||
+ | |||
+ | ===Direct DLL Call=== | ||
+ | When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain logged in practitioner role context: | ||
+ | |||
+ | <pre> | ||
+ | Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); | ||
+ | |||
+ | // start-up the host | ||
+ | |||
+ | Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; | ||
+ | |||
+ | string practitionerId = server.ContextPractitionerRole; | ||
+ | </pre> | ||
==Current Provider Identifier== | ==Current Provider Identifier== | ||
Line 5: | Line 56: | ||
This can be used to obtain practitioner details via <fhir-host>/Practitioner/<id> | This can be used to obtain practitioner details via <fhir-host>/Practitioner/<id> | ||
+ | |||
+ | Note: FHIR STU3 service now had globally (rather than locally) unique identifiers | ||
===Read=== | ===Read=== | ||
Line 33: | Line 86: | ||
<valueString value="CEBD70498A0C2465B2808432371E6571.1" /> | <valueString value="CEBD70498A0C2465B2808432371E6571.1" /> | ||
</Observation> | </Observation> | ||
+ | </pre> | ||
+ | |||
+ | ===Direct DLL Call=== | ||
+ | When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain logged in practitioner context: | ||
+ | |||
+ | <pre> | ||
+ | Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); | ||
+ | |||
+ | // start-up the host | ||
+ | |||
+ | Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; | ||
+ | |||
+ | string practitionerId = server.ContextPractitioner; | ||
</pre> | </pre> | ||
Line 39: | Line 105: | ||
This can be used to obtain current patient details via <fhir-host>/Patient/<id> | This can be used to obtain current patient details via <fhir-host>/Patient/<id> | ||
+ | |||
+ | Note: FHIR STU3 service now had globally (rather than locally) unique identifiers | ||
===Read=== | ===Read=== | ||
<pre>GET <fhir-host>/Observation/CTX-PATIENT</pre> | <pre>GET <fhir-host>/Observation/CTX-PATIENT</pre> | ||
+ | |||
+ | for JSON format add ?_format=json | ||
===Example=== | ===Example=== | ||
Line 67: | Line 137: | ||
<valueString value="CEBD70498A0C2465B2808432371E6571.5" /> | <valueString value="CEBD70498A0C2465B2808432371E6571.5" /> | ||
</Observation> | </Observation> | ||
+ | </pre> | ||
+ | |||
+ | ===Direct DLL Call=== | ||
+ | When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain active/in focus patient context: | ||
+ | |||
+ | <pre> | ||
+ | Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); | ||
+ | |||
+ | // start-up the host | ||
+ | |||
+ | Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; | ||
+ | |||
+ | string patientId = server.ContextPatient; | ||
</pre> | </pre> | ||
Line 73: | Line 156: | ||
This can be used to obtain organization/clinic details via <fhir-host>/Organization/<id> | This can be used to obtain organization/clinic details via <fhir-host>/Organization/<id> | ||
+ | |||
+ | Note: FHIR STU3 service now had globally (rather than locally) unique identifiers | ||
===Read=== | ===Read=== | ||
Line 101: | Line 186: | ||
<valueString value="CEBD70498A0C2465B2808432371E6571.1" /> | <valueString value="CEBD70498A0C2465B2808432371E6571.1" /> | ||
</Observation> | </Observation> | ||
+ | </pre> | ||
+ | |||
+ | ===Direct DLL Call=== | ||
+ | When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain current organization/clinic context: | ||
+ | |||
+ | <pre> | ||
+ | Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); | ||
+ | |||
+ | // start-up the host | ||
+ | |||
+ | Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; | ||
+ | |||
+ | string organizationId = server.ContextOrganization; | ||
</pre> | </pre> | ||
Latest revision as of 18:33, 30 August 2022
Current application context can be queried using well known Observation resource identifiers.
Contents
Current PractitionerRole Identifier
Will return a resource <id> valueString value when a user is currently logged into the clinical system.
This can be used to obtain practitioner role details via <fhir-host>/PractitionerRole/<id>
Note: FHIR STU3 service now had globally (rather than locally) unique identifiers
Read
GET <fhir-host>/Observation/CTX-PRACTITIONERROLE
for JSON format add ?_format=json
Example
<Observation xmlns="http://hl7.org/fhir"> <id value="CTX-PRACTITIONERROLE" /> <meta> <lastUpdated value="2017-12-07T14:54:42.49+11:00" /> </meta> <text> <status value="generated" /> <div xmlns="http://www.w3.org/1999/xhtml"> <p> Context: PRACTITIONERROLE - CEBD70498A0C2465B2808432371E6571.1-1</p> </div> </text> <status value="final" /> <code> <coding> <system value="http://oridashi.com.au/system/code/context" /> <code value="PRACTITIONERROLE" /> <display value="Provider Context" /> </coding> </code> <effectiveDateTime value="2017-12-07T14:54:42.4906904+11:00" /> <valueString value="CEBD70498A0C2465B2808432371E6571.1-1" /> </Observation>
Direct DLL Call
When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain logged in practitioner role context:
Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); // start-up the host Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; string practitionerId = server.ContextPractitionerRole;
Current Provider Identifier
Will return a resource <id> valueString value when a user is currently logged into the clinical system.
This can be used to obtain practitioner details via <fhir-host>/Practitioner/<id>
Note: FHIR STU3 service now had globally (rather than locally) unique identifiers
Read
GET <fhir-host>/Observation/CTX-PROVIDER
Example
<Observation xmlns="http://hl7.org/fhir"> <id value="CTX-PROVIDER" /> <meta> <lastUpdated value="2017-12-07T14:54:42.49+11:00" /> </meta> <text> <status value="generated" /> <div xmlns="http://www.w3.org/1999/xhtml"> <p> Context: PROVIDER - CEBD70498A0C2465B2808432371E6571.1</p> </div> </text> <status value="final" /> <code> <coding> <system value="http://oridashi.com.au/system/code/context" /> <code value="PROVIDER" /> <display value="Provider Context" /> </coding> </code> <effectiveDateTime value="2017-12-07T14:54:42.4906904+11:00" /> <valueString value="CEBD70498A0C2465B2808432371E6571.1" /> </Observation>
Direct DLL Call
When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain logged in practitioner context:
Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); // start-up the host Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; string practitionerId = server.ContextPractitioner;
Current Patient Identifier
Will return a resource <id> valueString value when a user is currently logged into the clinical system and a patient record is open and in focus. NOTE: mulitple patients can be open in the clinical system at one time this call indicates the patient record that in the active (current focus) window on screen.
This can be used to obtain current patient details via <fhir-host>/Patient/<id>
Note: FHIR STU3 service now had globally (rather than locally) unique identifiers
Read
GET <fhir-host>/Observation/CTX-PATIENT
for JSON format add ?_format=json
Example
<Observation xmlns="http://hl7.org/fhir"> <id value="CTX-PATIENT" /> <meta> <lastUpdated value="2017-12-07T14:55:05.463+11:00" /> </meta> <text> <status value="generated" /> <div xmlns="http://www.w3.org/1999/xhtml"> <p> Context: PATIENT - CEBD70498A0C2465B2808432371E6571.5</p> </div> </text> <status value="final" /> <code> <coding> <system value="http://oridashi.com.au/system/code/context" /> <code value="PATIENT" /> <display value="Patient Context" /> </coding> </code> <effectiveDateTime value="2017-12-07T14:55:05.4636076+11:00" /> <valueString value="CEBD70498A0C2465B2808432371E6571.5" /> </Observation>
Direct DLL Call
When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain active/in focus patient context:
Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); // start-up the host Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; string patientId = server.ContextPatient;
Current Organisation Identifier
Will return a resource <id> valueString value if a user is currently logged into the clinical system.
This can be used to obtain organization/clinic details via <fhir-host>/Organization/<id>
Note: FHIR STU3 service now had globally (rather than locally) unique identifiers
Read
GET <fhir-host>/Observation/CTX-ORGANISATION
Example
<Observation xmlns="http://hl7.org/fhir"> <id value="CTX-ORGANISATION" /> <meta> <lastUpdated value="2017-12-07T14:56:07.318+11:00" /> </meta> <text> <status value="generated" /> <div xmlns="http://www.w3.org/1999/xhtml"> <p> Context: ORGANISATION - CEBD70498A0C2465B2808432371E6571.1</p> </div> </text> <status value="final" /> <code> <coding> <system value="http://oridashi.com.au/system/code/context" /> <code value="ORGANISATION" /> <display value="Organisation Context" /> </coding> </code> <effectiveDateTime value="2017-12-07T14:56:07.3189622+11:00" /> <valueString value="CEBD70498A0C2465B2808432371E6571.1" /> </Observation>
Direct DLL Call
When hosing your own FHIR service using the FHIR-SERVER.dll you may call the library interface directly to obtain current organization/clinic context:
Oridashi.Fhir.Host.FhirHost host = new Oridashi.Fhir.Host.FhirHost(); // start-up the host Oridashi.Fhir.Host.Dstu3.FhirServer server = host.AutoHost; string organizationId = server.ContextOrganization;
Current Application Context
Will return a valueString value if a user is currently logged into the clinical system, represents the currently active view on screen.
Read
GET <fhir-host>/Observation/CTX-APPLICATION
Example
<Observation xmlns="http://hl7.org/fhir"> <id value="CTX-APPLICATION" /> <meta> <lastUpdated value="2017-12-07T14:57:04.685+11:00" /> </meta> <text> <status value="generated" /> <div xmlns="http://www.w3.org/1999/xhtml"> <p> Context: APPLICATION - MEDICATION.LIST</p> </div> </text> <status value="final" /> <code> <coding> <system value="http://oridashi.com.au/system/code/context" /> <code value="APPLICATION" /> <display value="Application Context" /> </coding> </code> <effectiveDateTime value="2017-12-07T14:57:04.6857468+11:00" /> <valueString value="MEDICATION.LIST" /> </Observation>
Value Set
- MEDICATION.LIST - current medications list
- MEDICALHISTORY.LIST - past medical history list
- IMMUNISATION.LIST - immunisations list
- INVESTIGATION.LIST - investigations list
- OTHER.LIST - unspecified list
- PRESCRIBING - prescribing medications entry
- MEDICALHISTORY.ENTRY - condition/procedure entry
- PATHOLOGY.ORDER - ordering pathology entry
- IMAGING.ORDER - ordering imaging entry
- 'LOGIN - login prompt
- UNKNOWN - another window unclassified (app is running)