Difference between revisions of "Current Context"
Brett Esler (Talk | contribs) |
(→Read) |
||
(16 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== | ||
+ | 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=== | ===Read=== | ||
<pre>GET <fhir-host>/Observation/CTX-PROVIDER</pre> | <pre>GET <fhir-host>/Observation/CTX-PROVIDER</pre> | ||
Line 8: | Line 65: | ||
<pre> | <pre> | ||
<Observation xmlns="http://hl7.org/fhir"> | <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> | </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> | ||
==Current Patient Identifier== | ==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=== | ===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=== | ||
<pre> | <pre> | ||
<Observation xmlns="http://hl7.org/fhir"> | <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" /> | |
− | <coding> | + | <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> | </Observation> | ||
</pre> | </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> | + | |
+ | <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> | ||
==Current Organisation Identifier== | ==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=== | ===Read=== | ||
<pre>GET <fhir-host>/Observation/CTX-ORGANISATION</pre> | <pre>GET <fhir-host>/Observation/CTX-ORGANISATION</pre> | ||
+ | |||
+ | ===Example=== | ||
+ | <pre> | ||
+ | <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> | ||
+ | </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> | ||
==Current Application Context== | ==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=== | ===Read=== | ||
<pre>GET <fhir-host>/Observation/CTX-APPLICATION</pre> | <pre>GET <fhir-host>/Observation/CTX-APPLICATION</pre> | ||
Line 71: | Line 210: | ||
<pre> | <pre> | ||
<Observation xmlns="http://hl7.org/fhir"> | <Observation xmlns="http://hl7.org/fhir"> | ||
− | + | <id value="CTX-APPLICATION" /> | |
− | <div xmlns="http://www.w3.org/1999/xhtml"> | + | <meta> |
− | + | <lastUpdated value="2017-12-07T14:57:04.685+11:00" /> | |
− | + | </meta> | |
− | + | <text> | |
− | + | <status value="generated" /> | |
− | <coding> | + | <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> | </Observation> | ||
</pre> | </pre> | ||
Line 95: | Line 238: | ||
* '''IMMUNISATION.LIST''' - immunisations list | * '''IMMUNISATION.LIST''' - immunisations list | ||
* '''INVESTIGATION.LIST''' - investigations list | * '''INVESTIGATION.LIST''' - investigations list | ||
+ | * '''OTHER.LIST''' - unspecified list | ||
* '''PRESCRIBING''' - prescribing medications entry | * '''PRESCRIBING''' - prescribing medications entry | ||
+ | * '''MEDICALHISTORY.ENTRY''' - condition/procedure entry | ||
* '''PATHOLOGY.ORDER''' - ordering pathology entry | * '''PATHOLOGY.ORDER''' - ordering pathology entry | ||
* '''IMAGING.ORDER''' - ordering imaging entry | * '''IMAGING.ORDER''' - ordering imaging entry | ||
+ | * '''LOGIN'' - login prompt | ||
+ | * '''UNKNOWN''' - another window unclassified (app is running) |
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)