Newer Version Available
ServiceRequest
FHIR V4.0 - Clinical Data Model Mapping
Here’s how the fields defined by FHIR for serviceRequest map to the fields in Salesforce.
| Service Request Resource | Salesforce Field | Type | Salesforce Cardinality | Notes |
|---|---|---|---|---|
| identifier | Identifier | Object | 0.M | The identifier information for a service request is represented as Identifier records that reference the ClinicalServiceRequest record using their Identifier.ParentRecordId field. |
| instantiatesCanonical | N/A | N/A | N/A | Not Supported |
| instantiatesCanonical | N/A | N/A | N/A | Not Supported |
| basedOn | ClinicalServiceRequestDetail | Object | 0.M |
The information about the service request or medication request that a service request is based on is represented as ClinicalServiceRequestDetail records that reference the ClinicalServiceRequest record using their ClinicalServiceRequestDetail.ClinicalServiceRequestId field. The Salesforce implementation of serviceRequest.basedOn doesn’t support references to care plans. |
| ClinicalServiceRequestDetail.DetailRecordId | Polymorphic Lookup: ClinicalServiceRequest, MedicationRequest | 0.1 | For serviceRequest.basedOn information, ClinicalServiceRequestDetail.DetailRecordId must reference a ClinicalServiceRequest or MedicationRequest record. | |
| ClinicalServiceRequestDetail.DetailType |
Picklist Value: Based On |
0.1 | For serviceRequest.basedOn information, ClinicalServiceRequestDetail.DetailType must use the value Based On. | |
| replaces | ClinicalServiceRequest.OriginalRequestId | Lookup: ClinicalServiceRequest | 0.1 | While FHIR defines serviceRequest.replaces as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| requisition | ClinicalServiceRequest.ServiceRequestGroupIdentifierId | Lookup: Identifier | 0.1 | N/A |
| status | ClinicalServiceRequest.Status | Picklist | 1.1 | While FHIR defines serviceRequest.status as a code set bundle, the Salesforce implementation of ClinicalServiceRequest.Status is picklist. |
| intent | ClinicalServiceRequest.Type | Picklist | 1.1 | While FHIR defines serviceRequest.intent as a code set bundle, the Salesforce implementation of ClinicalServiceRequest.Type is picklist. |
| category | ClinicalServiceRequest.CategoryId | Lookup: CodeSetBundle | 0.1 | N/A |
| priority | ClinicalServiceRequest.Priority | Picklist | 0.1 | While FHIR defines serviceRequest.priority as a code set bundle, the Salesforce implementation of ClinicalServiceRequest.Priority is picklist. |
| doNotPerform | ClinicalServiceRequest.IsIgnored | Boolean | 0.1 | N/A |
| code | ClinicalServiceRequest.RequestCodeId | Lookup: CodeSetBundle | 0.1 | N/A |
| orderDetail | N/A | N/A | N/A | Not Supported |
| quantity.quantityQuantity | ClinicalServiceRequest.QuantityNumerator | Double | 0.1 | Because Salesforce doesn’t support a native quantity data type, the implementation of serviceRequest.quantity.quantityQuantity is flattened into a set of quantity and unit fields. |
| ClinicalServiceRequest.QuantityNumeratorUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| quantity.quantityRatio | ClinicalServiceRequest.QuantityNumerator | Double | 0.1 | Because Salesforce doesn’t support a native ratio data type, the implementation of serviceRequest.quantity.quantityRatio is flattened into a set of numerator, denominator and unit fields. |
| ClinicalServiceRequest.QuantityDenominator | Double | 0.1 | ||
| ClinicalServiceRequest.QuantityNumeratorUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| ClinicalServiceRequest.QuantityType |
Picklist Value: Ratio |
0.1 | For serviceRequest.quantity.quantityRatio information, ClinicalServiceRequest.QuantityType must use the value Ratio. | |
| quantity.quantityRange | ClinicalServiceRequest.QuantityNumerator | Double | 0.1 | Because Salesforce doesn’t support a native range data type, the implementation of serviceRequest.quantity.quantityRange is flattened into a set of numerator, denominator and unit fields. |
| ClinicalServiceRequest.QuantityDenominator | Double | 0.1 | ||
| ClinicalServiceRequest.QuantityNumeratorUnitId | Lookup: UnitOfMeasure | 0.1 | ||
| ClinicalServiceRequest.QuantityType |
Picklist Value: Range |
0.1 | For serviceRequest.quantity.quantityRange information, ClinicalServiceRequest.QuantityType must use the value Range. | |
| subject | ClinicalServiceRequest.PatientId | Master-Detail Reference: Account | 1.1 | Only references to patients are supported. |
| encounter | ClinicalServiceRequest.ClinicalEncounterId | Lookup: ClinicalEncounter | 0.1 | N/A |
| occurrence.occurrenceDateTime | ClinicalServiceRequest.StartDate | DateTime | 0.1 | ClinicalServiceRequest.StartDate is used for both serviceRequest.occurrence.occurrenceDateTime and serviceRequest.occurrence.occurrencePeriod. For the latter, the field is used to represent the start date of the period. |
| occurrence.occurrencePeriod | ClinicalServiceRequest.StartDate | DateTime | 0.1 | Because Salesforce doesn’t support a native period data type, the serviceRequest.occurrence.occurrencePeriod is flattened into a set of start date and end date fields. |
| ClinicalServiceRequest.EndDate | DateTime | 0.1 | ||
| occurrence.occurrenceTiming | N/A | N/A | N/A | Not supported |
| asNeeded.asNeededBoolean | ClinicalServiceRequest.HasPrerequisites | Boolean | 0.1 | N/A |
| asNeeded.asNeededCodeableConcept | ClinicalServiceRequest.PrerequisiteCodeId | Lookup: CodeSetBundle | 0.1 | 0.1 |
| authoredOn | ClinicalServiceRequest.DateSigned | DateTime | 0.1 | N/A |
| requester | ClinicalServiceRequest.RequesterId | Polymorphic Lookup: Account, Asset, CareRegisteredDevice, and HealthcareProvider | 0.1 | N/A |
| performerType | ClinicalServiceRequest.PerformerTypeId | Lookup: CodeSetBundle | 0.1 | N/A |
| performer | ClinicalServiceRequest.PerformerId | Polymorphic Lookup: Account, Asset, CareRegisteredDevice, and HealthcareProvider | 0.1 |
References to care teams and healthcare services are not supported. While FHIR defines serviceRequest.performer as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| locationCode | ClinicalServiceRequest.FacilityCodeId | Lookup: CodeSetBundle | 0.1 | While FHIR defines serviceRequest.locationCode as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| locationReference | ClinicalServiceRequest.FacilityId | Lookup: HealthcareFacility | 0.1 | While FHIR defines serviceRequest.locationReference as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| reasonCode | ClinicalServiceRequest.ReasonCodeId | Lookup: CodeSetBundle | 0.1 | While FHIR defines serviceRequest.reasonCode as a zero-to-many resource, the Salesforce implementation is zero-to-one. |
| reasonReference | ClinicalServiceRequest.DiagnosticReportId | Lookup: DiagnosticSummary | 0.1 | N/A |
| ClinicalServiceRequest.ConditionId | Lookup: HealthCondition | 0.1 | To support zero-to-many values, use the child object instead. | |
| ClinicalServiceRequest.ObservationId | Lookup: CareObservation | 0.1 | To support zero-to-many values, use the child object instead. | |
| ClinicalServiceRequestDetail | Object | 0.M |
The records referencing the reasons for a service request are represented as ClinicalServiceRequestDetail records that reference the ClinicalServiceRequest record using their ClinicalServiceRequestDetail.ClinicalServiceRequestId field. |
|
| ClinicalServiceRequestDetail.DetailRecordId | Polymorphic Lookup: HealthCondition, CareObservation, DiagnosticSummary | 0.1 | For serviceRequest.reasonReference information, ClinicalServiceRequestDetail.DetailRecordId must reference a HealthCondition or CareObservation record. | |
| ClinicalServiceRequestDetail.DetailType |
Picklist Value: Reason Reference |
0.1 | For serviceRequest.reasonReference information, ClinicalServiceRequestDetail.DetailType must use the value Reason Reference. | |
| insurance | N/A | N/A | N/A | Not supported |
| supportingInfo | N/A | N/A | N/A | Not supported |
| specimen | N/A | N/A | N/A | Not supported |
| bodySite | ClinicalServiceRequestDetail | Object | 0.M |
The body site information of a serviceRequest is represented as ClinicalServiceRequestDetail records that reference the ClinicalServiceRequest record using their ClinicalServiceRequestDetail.ClinicalServiceRequestId field. |
| ClinicalServiceRequestDetail.DetailCodeId | Polymorphic Lookup: CodeSet, CodeSetBundle | 0.1 | For serviceRequest.bodySite information, ClinicalServiceRequestDetail.DetailCodeId must reference a CodeSet or CodeSetBundle record. | |
| ClinicalServiceRequestDetail.DetailType |
Picklist Value: Body Site |
0.1 | For serviceRequest.bodySite information, ClinicalServiceRequestDetail.DetailType must use the value Body Site. | |
| Note | N/A | N/A | N/A | Not supported |
| patientInstruction | ClinicalServiceRequest.PatientInstruction | Text | 0.1 | N/A |
| relevantHistory | N/A | N/A | N/A | Not supported |
Sample Record Diagram
Here's a diagram that shows an example of how this resource is represented in Salesforce.