Health eData 1 Sandbox
0.1.0 - CI Build

Health eData 1 Sandbox - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Resource Profile: US Core PMO ServiceRequest Profile

Official URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-pmo-servicerequest | Version: 0.1.0
Draft as of 2025-08-26 | Computable Name: USCorePMOServiceRequestProfile

The US Core PMO ServiceRequest Profile inherits from the FHIR ServiceRequest resource; refer to it for scope and usage definitions. This profile represents an order based on a PMO document and references the US Core ADI DocumentReference Profile to communicate the contents of the PMO document, such as POLST, MOLST, or other state-specific forms. PMO documents follow the patient across care settings and are typically stored as scanned images in EMRs/EHRs. Together, these two profiles satisfy the USCDI's PMO Order Data Element's intent to represent orders based on an individual's PMO. The US Core PMO ServiceRequest Profile establishes minimum expectations for recording, searching, and fetching PMO-related ServiceRequest information, specifying core elements, extensions, vocabularies, and value sets that SHALL be present to promote interoperability.

The decision to add the US Core PMO Service Request Profile and to meet the USCDI's PMO Order Data Element definition sparked a healthy debate on whether `ServiceRequest` is necessary for actionable orders or if `DocumentReference` is sufficient for PMO portability and patient access.

The rationale for adding ServiceRequest to represent the USCDI PMO Order includes:

1. Enhancing Patient Access and Care: ServiceRequest enables actionable orders; without it, patient access and care goals are not fully met.
2. Tracking PMO Implementation A derivative order via ServiceRequest is necessary to demonstrate that the PMO has followed the patient.

The concerns include:

1. Incomplete Representation: A `ServiceRequest` reflects only part of a PMO order and may not fully capture the PMO's scope.
2. Scope Creep Beyond USCDI: Concerns that it goes beyond USCDI requirements by including derivative orders.
3. Unnecessary Complexity: `ServiceRequest` could add unnecessary complexity without clear justification.
4. Sufficiency of Current Design: The current `DocumentReference`-based design already meets PMO requirements for USCDI

We request feedback on the clinical utility of this profile and its implications for certification

.

Example Usage Scenarios:

The following are example usage scenarios for this profile:

- Query for a specific procedure
- Query for a category of service request

### Mandatory and Must Support Data Elements

​The following data elements must always be present ([Mandatory] definition) or must be supported if the data is present in the sending system (Must Support definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The [Formal Views] below provides the formal summary, definitions, and terminology requirements.

Each Service Request Must Have:

1. a status
2. an intent code indicating whether the request is a proposal, plan, or order.
3. a code or plain text representation defining what is being requested*
4. a patient

Each Service Request Must Support:

1. a category
2. plain text representation of what is being requested*
3. a code or plain text representation of additional order details*
4. the encounter in which the request was created
5. when the requested service should happen
6. when the request was made
7. the requester*
8. the code for the test, procedure, or service to be performed
9. a reason or indication for referral or consultation

*see guidance below

### Profile Specific Implementation Guidance

This section provides detailed implementation guidance for the US Core Profile to support implementation and certification.

- This profile is intended for use when documenting derived medical orders after reviewing a patient's Portable Medical Order (PMO) — such as POLST, MOLST, or other state-specific forms. It is scoped to facility-based care environments where actionable orders are implemented, including hospitals, skilled nursing facilities, long-term care, and outpatient procedure centers (e.g., surgery centers, dialysis facilities).
  - This profile is not intended for routine ambulatory or office-based practice settings, where PMOs may be reviewed, but new standing orders are not typically derived.
- Although the `ServiceRequest.code` is bound to US Core Procedure Codes, a broadly defined value set that accommodates many healthcare domains, it has several additional bindings based on the PMO categories found in `ServiceRequest.category`. The additional bindings are displayed in `ServiceRequest.code`'s Description and Constrain column in the formal definition below.
- Often, plain text is used instead of codes to define what is being requested/ordered and for additional order details.

resourceType: Location id: hospital meta: extension:

- url: http://hl7.org/fhir/StructureDefinition/instance-name valueString: Hospital Location
- url: http://hl7.org/fhir/StructureDefinition/instance-description valueMarkdown: This is an example hospital location for the US Core Location Profile using three coding type, showing SNOMED CT, HSLOC, and v3-RoleCode concepts. profile:
- http://hl7.org/fhir/us/core/StructureDefinition/us-core-location identifier:
- system: 'http://hl7.org/fhir/sid/us-npi' value: '1234567893' status: active name: Holy Family Hospital type:
- coding:
  - system: 'http://terminology.hl7.org/CodeSystem/v3-RoleCode' code: HOSP display: Hospital
  - system: http://snomed.info/sct code: '22232009' display: Hospital version: http://snomed.info/sct/731000124108
  - system: 'https://www.cdc.gov/nhsn/cdaportal/terminology/codesystem/hsloc.html' code: 1120-5 display: Medical Clinic

  text: Hospital telecom:

- system: phone value: '9786870156' address: line:
  - 70 EAST ST city: METHUEN state: MA postalCode: 01844 country: US managingOrganization: reference: Organization/holy-healthcare display: Holy Healthcare

Usages:

- Examples for this Profile: ServiceRequest/servicerequest-pmo-example1

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
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 | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document Binding: RequestIntent (required): The kind of service request.
Slices for category | S Σ | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
category:us-core-pmo | S Σ | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
doNotPerform | ?!Σ | 0..1 | boolean | True if service/procedure should not be performed
code | S Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
text | S Σ | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S Σ C | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
text | S Σ | 0..1 | string | Plain text representation to capture additional PMO order details.
subject | S Σ | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S Σ | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S Σ | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 0..1 | dateTime | Date Order signed vs date of PMO document - same if part of PMO document
requester | S Σ | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
reasonCode | S Σ | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: US Core Condition Codes (extensible)
reasonReference | S Σ | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | ServiceRequest | 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 | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present | `orderDetail.empty() or code.exists()`

This structure is derived from ServiceRequest

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest |  | 0..* | ServiceRequest | A request for a service to be performed
status | S | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown
intent | S | 1..1 | code | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document
Slices for category | S | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this
category:us-core-pmo | S | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
code | S | 1..1 | CodeableConcept | What is being requested/ordered Binding: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
text | S | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S | 0..* | CodeableConcept | Additional order information
text | S | 0..1 | string | Plain text representation to capture additional PMO order details.
subject | S | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
occurrenceTiming |  |  | Timing |
authoredOn | S | 0..1 | dateTime | Date Order signed vs date of PMO document - same if part of PMO document
requester | S | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
reasonCode | S | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: US Core Condition Codes (extensible)
reasonReference | S | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1
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.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 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 | Σ | 0..* | Reference(CarePlan | ServiceRequest | MedicationRequest) | 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 | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document Binding: RequestIntent (required): The kind of service request.
Slices for category | S Σ | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
category:us-core-pmo | S Σ | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
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: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S Σ C | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation to capture additional PMO order details.
quantity[x] | Σ | 0..1 |  | Service amount
quantityQuantity |  |  | Quantity |
quantityRatio |  |  | Ratio |
quantityRange |  |  | Range |
subject | S Σ | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S Σ | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S Σ | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
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 Order signed vs date of PMO document - same if part of PMO document
requester | S Σ | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
performerType | Σ | 0..1 | CodeableConcept | Performer role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | 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: US Core Condition Codes (extensible)
reasonReference | S Σ | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
supportingInfo |  | 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

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std.
ServiceRequest.locationCode | Base | example | ServiceDeliveryLocationRoleType | 📦3.0.0 | THO v6.5
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org
ServiceRequest.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | ServiceRequest | 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 | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present | `orderDetail.empty() or code.exists()`

This structure is derived from ServiceRequest

Summary

Mandatory: 1 element
Must-Support: 15 elements

Structures

This structure refers to these other structures:

- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient)
- US Core Encounter Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter)
- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner)
- US Core Organization Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization)
- US Core ADI DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-adi-documentreference)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-condition (no profile found)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-observation (no profile found)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-diagnosticreport (no profile found)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of ServiceRequest.category

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
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 | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document Binding: RequestIntent (required): The kind of service request.
Slices for category | S Σ | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
category:us-core-pmo | S Σ | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
doNotPerform | ?!Σ | 0..1 | boolean | True if service/procedure should not be performed
code | S Σ | 1..1 | CodeableConcept | What is being requested/ordered Binding: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
text | S Σ | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S Σ C | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
text | S Σ | 0..1 | string | Plain text representation to capture additional PMO order details.
subject | S Σ | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S Σ | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S Σ | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 0..1 | dateTime | Date Order signed vs date of PMO document - same if part of PMO document
requester | S Σ | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
reasonCode | S Σ | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: US Core Condition Codes (extensible)
reasonReference | S Σ | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | ServiceRequest | 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 | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present | `orderDetail.empty() or code.exists()`

Differential View

This structure is derived from ServiceRequest

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest |  | 0..* | ServiceRequest | A request for a service to be performed
status | S | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown
intent | S | 1..1 | code | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document
Slices for category | S | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this
category:us-core-pmo | S | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
code | S | 1..1 | CodeableConcept | What is being requested/ordered Binding: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
text | S | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S | 0..* | CodeableConcept | Additional order information
text | S | 0..1 | string | Plain text representation to capture additional PMO order details.
subject | S | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
occurrenceTiming |  |  | Timing |
authoredOn | S | 0..1 | dateTime | Date Order signed vs date of PMO document - same if part of PMO document
requester | S | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
reasonCode | S | 0..* | CodeableConcept | Explanation/Justification for procedure or service Binding: US Core Condition Codes (extensible)
reasonReference | S | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
ServiceRequest | C | 0..* | ServiceRequest | A request for a service to be performed Constraints: prr-1
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.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 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 | Σ | 0..* | Reference(CarePlan | ServiceRequest | MedicationRequest) | 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 | Note: To allow for the resource life cycle, no constraint on intent, use "directive" in PMO document Binding: RequestIntent (required): The kind of service request.
Slices for category | S Σ | 0..* | CodeableConcept | Classification of service Slice: Unordered, Open by value:$this Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
category:us-core-pmo | S Σ | 0..* | CodeableConcept | Multiple portable medical order categories vs a single "PMO" category (2 vs 3 level code heirarchy)? Binding: US Core Portable Medical Orders (extensible)
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: http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code (extensible): Portable Medical Order panel answers - mostly free-text
Additional Bindings | Purpose | Documentation
Cardiopulmonary Resuscitation Procedures Grouping | Extensible | SeviceRequest.category = Cardiopulmonary resuscitation orders
Initial Treatment Portable Medical Order Procedures Grouping | Extensible | SeviceRequest.category = Initial portable medical treatment orders
Additional Portable Medical Order Procedures | Extensible | SeviceRequest.category = Additional portable medical orders or instructions
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation of the PMO procedure or service.
orderDetail | S Σ C | 0..* | CodeableConcept | Additional order information Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | S Σ | 0..1 | string | Plain text representation to capture additional PMO order details.
quantity[x] | Σ | 0..1 |  | Service amount
quantityQuantity |  |  | Quantity |
quantityRatio |  |  | Ratio |
quantityRange |  |  | Range |
subject | S Σ | 1..1 | Reference(US Core Patient Profile) | limited to Patient
encounter | S Σ | 0..1 | Reference(US Core Encounter Profile) | **NOT USED WHEN PART OF A PMO DOCUMENT**
occurrence[x] | S Σ | 0..1 |  | Often just a start date
occurrencePeriod |  |  | Period S |
occurrenceDateTime |  |  | dateTime |
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 Order signed vs date of PMO document - same if part of PMO document
requester | S Σ | 0..1 | Reference(US Core Practitioner Profile S | US Core Organization Profile | PractitionerRole) | Authored only by Practitioner
performerType | Σ | 0..1 | CodeableConcept | Performer role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
performer | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | 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: US Core Condition Codes (extensible)
reasonReference | S Σ | 0..* | ​Reference(US Core ADI DocumentReference Profile S | us-core-condition | us-core-observation | us-core-diagnosticreport) | US Core ADI DocumentReference Profile or other US Core profiles that support the requested PMO service.
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
supportingInfo |  | 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

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
ServiceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
ServiceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
ServiceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
ServiceRequest.category | Base | example | Service Request Category Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.category:us-core-pmo | Base | extensible | US Core Portable Medical Orders | 📦0.1.0 | This IG
ServiceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
ServiceRequest.code | Base | extensible | http://hl7.org/fhir/us/core/ValueSet/us-core-pmo-procedure-code | Not Stated | Unknown
ServiceRequest.orderDetail | Base | example | Service Request Order Details Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.asNeeded[x] | Base | example | SNOMED CT Medication As Needed Reason Codes | 📍4.0.1 | FHIR Std.
ServiceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std.
ServiceRequest.locationCode | Base | example | ServiceDeliveryLocationRoleType | 📦3.0.0 | THO v6.5
ServiceRequest.reasonCode | Base | extensible | US Core Condition Codes | ⏿8.0.0-ballot | tx.fhir.org
ServiceRequest.bodySite | Base | example | SNOMED CT Body Structures | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | ServiceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | ServiceRequest | 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 | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | ServiceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | ServiceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
prr-1 | error | ServiceRequest | orderDetail SHALL only be present if code is present | `orderDetail.empty() or code.exists()`

This structure is derived from ServiceRequest

Summary

Mandatory: 1 element
Must-Support: 15 elements

Structures

This structure refers to these other structures:

- US Core Patient Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient)
- US Core Encounter Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter)
- US Core Practitioner Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner)
- US Core Organization Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization)
- US Core ADI DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-adi-documentreference)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-condition (no profile found)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-observation (no profile found)
- Unable to summarise profile http://hl7.org/fhir/StructureDefinition/us-core-diagnosticreport (no profile found)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of ServiceRequest.category

Other representations of profile: CSV, Excel, Schematron