Pan-Canadian Patient Summary (2.2.0-ti-ballot)
ti-ballot - For a full list of available versions, see the Directory of published versions
Releases of the PS-CA Implementation Guide may be found on a table on the Home Page of this Project.
http://hl7.org/fhir/StructureDefinition/MedicationRequest
nystatinCCDD-request-example, simvastatin-request-example
This profile represents the constraints applied to the MedicationRequest resource by the PS-CA project and allows for cross-border and cross-jurisdiction sharing of information record of a medication request information in the patient summary.
| MedicationRequestPSCA (MedicationRequest) | C | MedicationRequest | |
| id | Σ | 0..1 | string |
| meta | Σ | 0..1 | Meta |
| implicitRules | Σ ?! | 0..1 | uri |
| language | 0..1 | codeBinding | |
| text | 0..1 | Narrative | |
| contained | 0..* | Resource | |
| extension | C | 0..* | Extension |
| RenderedDosageInstruction | C | 0..1 | Extension(string) |
| modifierExtension | ?! C | 0..* | Extension |
| identifier | 0..* | Identifier | |
| status | SO Σ ?! | 1..1 | codeBinding |
| statusReason | 0..1 | CodeableConcept | |
| intent | Σ ?! | 1..1 | codeBinding |
| category | 0..* | CodeableConcept | |
| priority | Σ | 0..1 | codeBinding |
| doNotPerform | Σ ?! | 0..1 | booleanPattern |
| reported[x] | Σ | 0..1 | |
| reportedBoolean | boolean | ||
| reportedReference | Reference(Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | ||
| medication[x] | SO Σ | 1..1 | Binding |
| medicationCodeableConcept | CodeableConceptMedicationPSCA | ||
| medicationReference | Reference(MedicationPSCA) | ||
| subject | SO Σ C | 1..1 | Reference(PatientPSCA) |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| reference | SO Σ C | 1..1 | string |
| type | Σ | 0..1 | uriBinding |
| identifier | Σ | 0..1 | Identifier |
| display | Σ | 0..1 | string |
| encounter | C | 0..1 | Reference(Encounter) |
| supportingInformation | C | 0..* | Reference(Resource) |
| authoredOn | SO Σ | 0..1 | dateTime |
| requester | Σ C | 0..1 | Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) |
| performer | C | 0..1 | Reference(CareTeam | Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) |
| performerType | Σ | 0..1 | CodeableConcept |
| recorder | C | 0..1 | Reference(Practitioner | PractitionerRole) |
| reasonCode | 0..* | CodeableConceptBinding | |
| reasonReference | C | 0..* | Reference(Condition | Observation) |
| instantiatesCanonical | Σ | 0..* | canonical |
| instantiatesUri | Σ | 0..* | uri |
| basedOn | Σ C | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | ServiceRequest) |
| groupIdentifier | Σ | 0..1 | Identifier |
| courseOfTherapyType | 0..1 | CodeableConcept | |
| insurance | C | 0..* | Reference(ClaimResponse | Coverage) |
| note | 0..* | Annotation | |
| dosageInstruction | 0..* | Dosage | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| sequence | Σ | 0..1 | integer |
| text | SO Σ | 0..1 | string |
| additionalInstruction | Σ | 0..* | CodeableConcept |
| patientInstruction | Σ | 0..1 | string |
| timing | Σ | 0..1 | Timing |
| asNeeded[x] | Σ | 0..1 | |
| asNeededBoolean | boolean | ||
| asNeededCodeableConcept | CodeableConcept | ||
| site | Σ | 0..1 | CodeableConcept |
| route | Σ | 0..1 | CodeableConceptBinding |
| method | Σ | 0..1 | CodeableConcept |
| doseAndRate | Σ | 0..* | Element |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| type | Σ | 0..1 | CodeableConcept |
| dose[x] | Σ | 0..1 | |
| doseQuantity | SimpleQuantity | ||
| doseRange | Range | ||
| rate[x] | Σ | 0..1 | |
| rateQuantity | SimpleQuantity | ||
| rateRange | Range | ||
| rateRatio | Ratio | ||
| maxDosePerPeriod | Σ C | 0..1 | Ratio |
| maxDosePerAdministration | Σ C | 0..1 | SimpleQuantity |
| maxDosePerLifetime | Σ C | 0..1 | SimpleQuantity |
| dispenseRequest | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| initialFill | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| quantity | C | 0..1 | SimpleQuantity |
| duration | C | 0..1 | Duration |
| dispenseInterval | C | 0..1 | Duration |
| validityPeriod | C | 0..1 | Period |
| numberOfRepeatsAllowed | 0..1 | unsignedInt | |
| quantity | C | 0..1 | SimpleQuantity |
| expectedSupplyDuration | C | 0..1 | Duration |
| performer | C | 0..1 | Reference(Organization) |
| substitution | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| allowed[x] | 1..1 | ||
| allowedBoolean | boolean | ||
| allowedCodeableConcept | CodeableConcept | ||
| reason | 0..1 | CodeableConcept | |
| priorPrescription | C | 0..1 | Reference(MedicationRequest) |
| detectedIssue | C | 0..* | Reference(DetectedIssue) |
| eventHistory | C | 0..* | Reference(Provenance) |
| MedicationRequestPSCA (MedicationRequest) | C | MedicationRequest | |
| id | Σ | 0..1 | string |
| meta | Σ | 0..1 | Meta |
| implicitRules | Σ ?! | 0..1 | uri |
| language | 0..1 | codeBinding | |
| text | 0..1 | Narrative | |
| contained | 0..* | Resource | |
| extension | C | 0..* | Extension |
| RenderedDosageInstruction | C | 0..1 | Extension(string) |
| modifierExtension | ?! C | 0..* | Extension |
| identifier | 0..* | Identifier | |
| status | SO Σ ?! | 1..1 | codeBinding |
| statusReason | 0..1 | CodeableConcept | |
| intent | Σ ?! | 1..1 | codeBinding |
| category | 0..* | CodeableConcept | |
| priority | Σ | 0..1 | codeBinding |
| doNotPerform | Σ ?! | 0..1 | booleanPattern |
| reported[x] | Σ | 0..1 | |
| reportedBoolean | boolean | ||
| reportedReference | Reference(Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) | ||
| medication[x] | SO Σ | 1..1 | Binding |
| medicationCodeableConcept | CodeableConceptMedicationPSCA | ||
| medicationReference | Reference(MedicationPSCA) | ||
| subject | SO Σ C | 1..1 | Reference(PatientPSCA) |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| reference | SO Σ C | 1..1 | string |
| type | Σ | 0..1 | uriBinding |
| identifier | Σ | 0..1 | Identifier |
| display | Σ | 0..1 | string |
| encounter | C | 0..1 | Reference(Encounter) |
| supportingInformation | C | 0..* | Reference(Resource) |
| authoredOn | SO Σ | 0..1 | dateTime |
| requester | Σ C | 0..1 | Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) |
| performer | C | 0..1 | Reference(CareTeam | Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) |
| performerType | Σ | 0..1 | CodeableConcept |
| recorder | C | 0..1 | Reference(Practitioner | PractitionerRole) |
| reasonCode | 0..* | CodeableConceptBinding | |
| reasonReference | C | 0..* | Reference(Condition | Observation) |
| instantiatesCanonical | Σ | 0..* | canonical |
| instantiatesUri | Σ | 0..* | uri |
| basedOn | Σ C | 0..* | Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | ServiceRequest) |
| groupIdentifier | Σ | 0..1 | Identifier |
| courseOfTherapyType | 0..1 | CodeableConcept | |
| insurance | C | 0..* | Reference(ClaimResponse | Coverage) |
| note | 0..* | Annotation | |
| dosageInstruction | 0..* | Dosage | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| sequence | Σ | 0..1 | integer |
| text | SO Σ | 0..1 | string |
| additionalInstruction | Σ | 0..* | CodeableConcept |
| patientInstruction | Σ | 0..1 | string |
| timing | Σ | 0..1 | Timing |
| asNeeded[x] | Σ | 0..1 | |
| asNeededBoolean | boolean | ||
| asNeededCodeableConcept | CodeableConcept | ||
| site | Σ | 0..1 | CodeableConcept |
| route | Σ | 0..1 | CodeableConceptBinding |
| method | Σ | 0..1 | CodeableConcept |
| doseAndRate | Σ | 0..* | Element |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| type | Σ | 0..1 | CodeableConcept |
| dose[x] | Σ | 0..1 | |
| doseQuantity | SimpleQuantity | ||
| doseRange | Range | ||
| rate[x] | Σ | 0..1 | |
| rateQuantity | SimpleQuantity | ||
| rateRange | Range | ||
| rateRatio | Ratio | ||
| maxDosePerPeriod | Σ C | 0..1 | Ratio |
| maxDosePerAdministration | Σ C | 0..1 | SimpleQuantity |
| maxDosePerLifetime | Σ C | 0..1 | SimpleQuantity |
| dispenseRequest | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| initialFill | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| quantity | C | 0..1 | SimpleQuantity |
| duration | C | 0..1 | Duration |
| dispenseInterval | C | 0..1 | Duration |
| validityPeriod | C | 0..1 | Period |
| numberOfRepeatsAllowed | 0..1 | unsignedInt | |
| quantity | C | 0..1 | SimpleQuantity |
| expectedSupplyDuration | C | 0..1 | Duration |
| performer | C | 0..1 | Reference(Organization) |
| substitution | 0..1 | BackboneElement | |
| id | 0..1 | string | |
| extension | C | 0..* | Extension |
| modifierExtension | Σ ?! C | 0..* | Extension |
| allowed[x] | 1..1 | ||
| allowedBoolean | boolean | ||
| allowedCodeableConcept | CodeableConcept | ||
| reason | 0..1 | CodeableConcept | |
| priorPrescription | C | 0..1 | Reference(MedicationRequest) |
| detectedIssue | C | 0..* | Reference(DetectedIssue) |
| eventHistory | C | 0..* | Reference(Provenance) |
| Path | Conformance | ValueSet |
|---|---|---|
| MedicationRequest.medication[x] | preferred | https://fhir.infoway-inforoute.ca/ValueSet/prescriptionmedicinalproduct |
| MedicationRequest.reasonCode | preferred | https://fhir.infoway-inforoute.ca/ValueSet/medicationreasoncode |
| MedicationRequest.dosageInstruction.route | preferred | https://fhir.infoway-inforoute.ca/ValueSet/routeofadministration |
Must Support Differences:
MedicationRequest.dosageInstruction.timing is Must Support in IPS-UV and not in PS-CA.
MedicationRequest.status is not Must Support in IPS-UV but is Must Support in PS-CA.
Note: Systems that support these elements are encouraged to send them in patient summaries
Cardinality Differences:
Vocabulary Differences:
MedicationRequest.medicationCodeableConcept
Medication.code additional bindings Medication (PS-CA)MedicatonRequest.dosageInstruction.route
Terminology Guidance: In Canada, CCDD is the preferred binding type for medication codes. However, for broader international comprehension, it's recommended that, where mappings exist, implementers also include IPS concepts alongside CCDD. This approach aims to balance national preferences with the need for international interoperability. Additionally, systems have the flexibility to send other Canadian codes, such as SNOMED CT CA, DIN, and NPN.
Other differences between the IPS and PS-CA Include: