AU Core Implementation Guide
0.2.2-preview - Preview
This page is part of the Australian Core IG (v0.2.2-preview: AU Core) based on FHIR R4. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-servicerequest | Version: 0.2.2-preview | |||
Standards status: Draft | Maturity Level: 0 | Computable Name: AUCoreServiceRequest | ||
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved. |
This profile sets minimum expectations for a ServiceRequest resource to record, search, and fetch information about requests, plans, or orders for a service for a patient. It is based on the core ServiceRequest resource and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the ServiceRequest when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.
The following are supported usage scenarios for this profile:
A resource conforming to this profile is conformant to:
No equivalent International Patient Access or International Patient Summary profile.
Conformance in reverse is not guaranteed, i.e. a resource conforming to US Core MAY NOT conform to AU Core.
ServiceRequest.category
provides an efficient way of supporting system interactions, e.g. restricting searches. Implementers need to understand that data categorisation is somewhat subjective. The categorisation applied by the source may not align with a receiver’s expectations.ServiceRequest.code.text
and/or ServiceRequest.code.coding.display
so that client applications can at least display the condition even if the client application does not recognise the code supplied.ServiceRequest.reasonCode
, or a reference with ServiceRequest.reasonReference
to a Condition or other resource.
ServiceRequest.performerType
, or a reference with ServiceRequest.performer
to a HealthcareService or other resource.
ServiceRequest.supportingInfo
is broad to accommodate a wide variety of use cases by allowing a reference to any resource.
Specific feedback is sought on whether the bodySite element should be removed from this profile and AU Core only supports information being sent in ServiceRequest.code i.e bodySite is redundant as body site pre-coordinated in ServiceRequest.code or qualifies ServiceRequest.code as body site is not defined in code.
Please comment on au-fhir-core/issues/64.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Other representations of profile: CSV, Excel, Schematron
Below is an overview of the mandatory and optional search parameters and combined search parameters. FHIR search operations and the syntax used to describe the interactions is described here.
Any search parameter defined in FHIR may be ‘allowed’ by the system unless explicitly marked as “SHALL NOT”. A few items are marked as MAY in this implementation guide to highlight their potential relevance.
Parameter(s) | Conformance | Type(s) | Requirements (when used alone or in combination) |
---|---|---|---|
patient | SHALL | reference |
The client SHALL provide at least an id value and MAY provide both the Type and id values. The server SHALL support both. |
patient+category | SHALL | reference +token |
|
patient+category+authored | SHALL | reference +token +date |
|
patient+code | SHALL | reference +token |
|
_id | SHOULD | token |
|
identifier | SHOULD | token |
The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both. |
patient+category+status | SHOULD | reference +token +token |
|
patient.identifier | SHOULD | reference .token |
The client SHALL provide both the system and code values. The server SHALL support both. The client SHOULD support search using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile. The server SHOULD support search using the using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile. |
patient+code+authored | SHOULD | reference +token +date |
|
patient+status | SHOULD | reference +token |
|
category | MAY | token |
The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both. |
code | MAY | token |
The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both. |
authored | MAY | date |
A client SHALL provide a value precise to the second + time offset. A server SHALL support a value precise to the second + time offset. |
status | MAY | token |
The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both. |
The following search parameters and search parameter combinations SHALL be supported:
patient
search parameter:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
GET [base]/ServiceRequest?patient={Type/}[id]
or optionallyGET [base]/ServiceRequest?patient.identifier=[system|][code]
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient (how to search by reference and how to search by token)
patient
and category
search parameters:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
)GET [base]/ServiceRequest?patient={Type/}[id]&category={system|}[code]
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and a category code = 708175003
(how to search by reference and how to search by token)
patient
and category
and authored
search parameters:
_revinclude
parameters: Provenance:target
date
comparators: gt,lt,ge,le
authored
(e.g.authored=[date]&authored=[date]]&...
)GET [base]/ServiceRequest?patient={Type/}[id]&category={system|}[code]&authored={gt|lt|ge|le}[date]{&authored={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and date and a category code = 708175003
(how to search by reference and how to search by token and how to search by date)
patient
and code
search parameters:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
)code
(e.g.code={system|}[code],{system|}[code],...
)GET [base]/ServiceRequest?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and diagnostic request code(s). The ServiceRequest code
parameter searches ServiceRequest.code
only. (how to search by reference and how to search by token)
The following search parameter combinations SHOULD be supported:
_id
search parameter:
_revinclude
parameters: Provenance:target
GET [base]/ServiceRequest/[id]
or GET [base]/ServiceRequest?_id=[id]
Example:
Implementation Notes: Fetches a single ServiceRequest (how to search by the logical id of the resource)
identifier
search parameter:
_revinclude
parameters: Provenance:target
GET [base]/ServiceRequest?identifier={system|}[code]
Example:
Implementation Notes: Fetches a bundle containing any ServiceRequest resources matching the identifier (how to search by token)
patient
and category
and status
search parameters:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
)code
(e.g.code={system|}[code],{system|}[code],...
)status
(e.g.status={system|}[code],{system|}[code],...
)GET [base]/ServiceRequest?patient={Type/}[id]&category={system|}[code]&status={system|}[code]{,{system|}[code],...}
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and category and status (how to search by reference and how to search by token)
patient
and code
and authored
search parameters:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
code
(e.g.code={system|}[code],{system|}[code],...
)date
comparators: gt,lt,ge,le
authored
(e.g.authored=[date]&authored=[date]]&...
)GET [base]/ServiceRequest?patient={Type/}[id]&code={system|}[code]{,{system|}[code],...}&authored={gt|lt|ge|le}[date]{&authored={gt|lt|ge|le}[date]&...}
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and date and request code(s) (how to search by reference and how to search by token and how to search by date)
patient
and status
search parameters:
_revinclude
parameters: Provenance:target
patient.identifier
(e.g. patient.identifier=[system|][code]
)code
(e.g.code={system|}[code],{system|}[code],...
)status
(e.g.status={system|}[code],{system|}[code],...
)GET [base]/ServiceRequest?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}
Example:
Implementation Notes: Fetches a bundle of all ServiceRequest resources for the specified patient and status (how to search by reference and how to search by token)