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.
This structure is derived from ServiceRequest
Path | Conformance | ValueSet |
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 |
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 |
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 |
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 |
Path | Conformance | ValueSet |
ServiceRequest.status | required | RequestStatus |
ServiceRequest.intent | required | RequestIntent |
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 |
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 |
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 |
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | SΣ | 0..* | Identifier | Identifiers assigned to this order | ||||
instantiatesCanonical | Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition | ||||
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | ||||
basedOn | SΣ | 0..* | Reference(AU Core MedicationRequest | AU Core ServiceRequest) | What request fulfills | ||||
replaces | Σ | 0..* | Reference(ServiceRequest) | What request replaces | ||||
requisition | Σ | 0..1 | Identifier | Composite Request ID | ||||
status | ?!SΣ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. | ||||
intent | ?!SΣ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. | ||||
category | SΣ | 0..* | CodeableConcept | Classification of service Binding: https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 (example) | ||||
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. | ||||
doNotPerform | ?!Σ | 0..1 | boolean | True if service/procedure should not be performed | ||||
code | SΣ | 1..1 | CodeableConcept | What is being requested/ordered Binding: https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 (preferred) | ||||
orderDetail | ΣC | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context. | ||||
quantity[x] | Σ | 0..1 | Service amount | |||||
quantityQuantity | Quantity | |||||||
quantityRatio | Ratio | |||||||
quantityRange | Range | |||||||
subject | SΣ | 1..1 | Reference(AU Core Patient) | Individual or Entity the service is ordered for | ||||
encounter | SΣ | 0..1 | Reference(AU Core Encounter) | Encounter in which the request was created | ||||
occurrence[x] | Σ | 0..1 | When service should occur | |||||
occurrenceDateTime | dateTime | |||||||
occurrencePeriod | Period | |||||||
occurrenceTiming | Timing | |||||||
asNeeded[x] | Σ | 0..1 | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |||||
asNeededBoolean | boolean | |||||||
asNeededCodeableConcept | CodeableConcept | |||||||
authoredOn | SΣ | 0..1 | dateTime | Date request signed | ||||
requester | SΣ | 1..1 | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Organization | AU Core Patient | AU Core RelatedPerson | AU Core System Device) | Who/what is requesting service | ||||
performerType | SΣ | 0..1 | CodeableConcept | Performer role Binding: https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 (preferred) | ||||
performer | SΣ | 0..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Organization | AU Core CareTeam | AU Core HealthcareService | AU Core Patient | AU Core RelatedPerson) | Requested performer | ||||
locationCode | Σ | 0..* | CodeableConcept | Requested location Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered. | ||||
locationReference | Σ | 0..* | Reference(Location) | Requested location | ||||
reasonCode | SΣ | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 (preferred) | ||||
reasonReference | SΣ | 0..* | Reference(AU Core Condition | AU Core Observation | AU Core DiagnosticReport | AU Core DocumentReference) | Explanation/Justification for service or service | ||||
insurance | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
supportingInfo | S | 0..* | Reference(Resource) | Additional clinical information | ||||
specimen | Σ | 0..* | Reference(Specimen) | Procedure Samples | ||||
bodySite | Σ | 0..* | CodeableConcept | Location on Body Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
note | 0..* | Annotation | Comments | |||||
patientInstruction | Σ | 0..1 | string | Patient or consumer-oriented instructions | ||||
relevantHistory | 0..* | Reference(Provenance) | Request provenance | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
ServiceRequest.language | preferred | CommonLanguages
| ||||
ServiceRequest.status | required | RequestStatus | ||||
ServiceRequest.intent | required | RequestIntent | ||||
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 | ||||
ServiceRequest.priority | required | RequestPriority | ||||
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 | ||||
ServiceRequest.orderDetail | example | ServiceRequestOrderDetailsCodes | ||||
ServiceRequest.asNeeded[x] | example | SNOMEDCTMedicationAsNeededReasonCodes | ||||
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 | ||||
ServiceRequest.locationCode | example | ServiceDeliveryLocationRoleType | ||||
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 | ||||
ServiceRequest.bodySite | example | SNOMEDCTBodyStructures |
This structure is derived from ServiceRequest
Summary
Mandatory: 3 elements
Must-Support: 15 elements
Structures
This structure refers to these other structures:
Maturity: 0
Differential View
This structure is derived from ServiceRequest
Path | Conformance | ValueSet |
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 |
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 |
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 |
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 |
Key Elements View
Path | Conformance | ValueSet |
ServiceRequest.status | required | RequestStatus |
ServiceRequest.intent | required | RequestIntent |
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 |
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 |
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 |
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | SΣ | 0..* | Identifier | Identifiers assigned to this order | ||||
instantiatesCanonical | Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition | ||||
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition | ||||
basedOn | SΣ | 0..* | Reference(AU Core MedicationRequest | AU Core ServiceRequest) | What request fulfills | ||||
replaces | Σ | 0..* | Reference(ServiceRequest) | What request replaces | ||||
requisition | Σ | 0..1 | Identifier | Composite Request ID | ||||
status | ?!SΣ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): The status of a service order. | ||||
intent | ?!SΣ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of service request. | ||||
category | SΣ | 0..* | CodeableConcept | Classification of service Binding: https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 (example) | ||||
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request. | ||||
doNotPerform | ?!Σ | 0..1 | boolean | True if service/procedure should not be performed | ||||
code | SΣ | 1..1 | CodeableConcept | What is being requested/ordered Binding: https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 (preferred) | ||||
orderDetail | ΣC | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context. | ||||
quantity[x] | Σ | 0..1 | Service amount | |||||
quantityQuantity | Quantity | |||||||
quantityRatio | Ratio | |||||||
quantityRange | Range | |||||||
subject | SΣ | 1..1 | Reference(AU Core Patient) | Individual or Entity the service is ordered for | ||||
encounter | SΣ | 0..1 | Reference(AU Core Encounter) | Encounter in which the request was created | ||||
occurrence[x] | Σ | 0..1 | When service should occur | |||||
occurrenceDateTime | dateTime | |||||||
occurrencePeriod | Period | |||||||
occurrenceTiming | Timing | |||||||
asNeeded[x] | Σ | 0..1 | Preconditions for service Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc. | |||||
asNeededBoolean | boolean | |||||||
asNeededCodeableConcept | CodeableConcept | |||||||
authoredOn | SΣ | 0..1 | dateTime | Date request signed | ||||
requester | SΣ | 1..1 | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Organization | AU Core Patient | AU Core RelatedPerson | AU Core System Device) | Who/what is requesting service | ||||
performerType | SΣ | 0..1 | CodeableConcept | Performer role Binding: https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 (preferred) | ||||
performer | SΣ | 0..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Organization | AU Core CareTeam | AU Core HealthcareService | AU Core Patient | AU Core RelatedPerson) | Requested performer | ||||
locationCode | Σ | 0..* | CodeableConcept | Requested location Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered. | ||||
locationReference | Σ | 0..* | Reference(Location) | Requested location | ||||
reasonCode | SΣ | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 (preferred) | ||||
reasonReference | SΣ | 0..* | Reference(AU Core Condition | AU Core Observation | AU Core DiagnosticReport | AU Core DocumentReference) | Explanation/Justification for service or service | ||||
insurance | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage | |||||
supportingInfo | S | 0..* | Reference(Resource) | Additional clinical information | ||||
specimen | Σ | 0..* | Reference(Specimen) | Procedure Samples | ||||
bodySite | Σ | 0..* | CodeableConcept | Location on Body Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality. | ||||
note | 0..* | Annotation | Comments | |||||
patientInstruction | Σ | 0..1 | string | Patient or consumer-oriented instructions | ||||
relevantHistory | 0..* | Reference(Provenance) | Request provenance | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
ServiceRequest.language | preferred | CommonLanguages
| ||||
ServiceRequest.status | required | RequestStatus | ||||
ServiceRequest.intent | required | RequestIntent | ||||
ServiceRequest.category | example | https://healthterminologies.gov.au/fhir/ValueSet/service-type-1 | ||||
ServiceRequest.priority | required | RequestPriority | ||||
ServiceRequest.code | preferred | https://healthterminologies.gov.au/fhir/ValueSet/procedure-1 | ||||
ServiceRequest.orderDetail | example | ServiceRequestOrderDetailsCodes | ||||
ServiceRequest.asNeeded[x] | example | SNOMEDCTMedicationAsNeededReasonCodes | ||||
ServiceRequest.performerType | preferred | https://healthterminologies.gov.au/fhir/ValueSet/practitioner-role-1 | ||||
ServiceRequest.locationCode | example | ServiceDeliveryLocationRoleType | ||||
ServiceRequest.reasonCode | preferred | https://healthterminologies.gov.au/fhir/ValueSet/reason-for-request-1 | ||||
ServiceRequest.bodySite | example | SNOMEDCTBodyStructures |
This structure is derived from ServiceRequest
Summary
Mandatory: 3 elements
Must-Support: 15 elements
Structures
This structure refers to these other structures:
Maturity: 0
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)