Skip to content

Commit

Permalink
Merge branch 'feature/CIFMM-4157-derive-adha-core-medicationrequest-f…
Browse files Browse the repository at this point in the history
…rom-au-core-medicationrequest'
  • Loading branch information
charlie-chen-adha committed Apr 18, 2024
2 parents d737834 + e6ba486 commit 6ea6db0
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 126 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@ This profile identifies the additional constraints, extensions, and value sets t

Where a more specific MedicationRequest profile is applicable, e.g. prescription, an implementation **SHALL** ensure the resource conforms to that specific profile.

This profile is designed to set a core MedicationRequest standard for:
* Query medication orders or prescriptions for a patient (current and historical)
* Record or update medication orders or prescriptions for a patient

This profile may be referred to by APIs, which will be listed here when available.


Expand Down
127 changes: 5 additions & 122 deletions input/resources/Profile/dh-medicationrequest-core-1.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,84 +23,18 @@
<kind value="resource"/>
<abstract value="false"/>
<type value="MedicationRequest"/>
<baseDefinition value="http://hl7.org.au/fhir/StructureDefinition/au-medicationrequest"/>
<baseDefinition value="http://hl7.org.au/fhir/core/StructureDefinition/au-core-medicationrequest"/>
<derivation value="constraint"/>
<differential>
<element id="MedicationRequest">
<path value="MedicationRequest"/>
</element>
<element id="MedicationRequest.identifier">
<path value="MedicationRequest.identifier"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.status">
<path value="MedicationRequest.status"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.intent">
<path value="MedicationRequest.intent"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.category">
<path value="MedicationRequest.category"/>
<mustSupport value="true"/>
<binding>
<strength value="extensible"/>
<valueSet value="http://hl7.org/fhir/ValueSet/medicationrequest-category"/>
</binding>
</element>
<element id="MedicationRequest.medication[x]">
<path value="MedicationRequest.medication[x]"/>
<slicing>
<discriminator>
<type value="type"/>
<path value="$this"/>
</discriminator>
<rules value="closed"/>
</slicing>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.medication[x]:medicationCodeableConcept">
<path value="MedicationRequest.medication[x]"/>
<sliceName value="medicationCodeableConcept"/>
<type>
<code value="CodeableConcept"/>
</type>
</element>
<element id="MedicationRequest.medication[x]:medicationCodeableConcept.coding">
<path value="MedicationRequest.medication[x].coding"/>
<slicing>
<discriminator>
<type value="value"/>
<path value="system"/>
</discriminator>
<rules value="open"/>
</slicing>
</element>
<element id="MedicationRequest.medication[x]:medicationCodeableConcept.coding:pbs">
<path value="MedicationRequest.medication[x].coding"/>
<sliceName value="pbs"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.medication[x]:medicationCodeableConcept.coding:amt">
<path value="MedicationRequest.medication[x].coding"/>
<sliceName value="amt"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.medication[x]:medicationReference">
<path value="MedicationRequest.medication[x]"/>
<sliceName value="medicationReference"/>
<type>
<code value="Reference"/>
<targetProfile value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-medication-core-1"/>
</type>
</element>
<element id="MedicationRequest.subject">
<path value="MedicationRequest.subject"/>
<type>
<code value="Reference"/>
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-patient-core-1"/>
value="http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient"/>
</type>
<condition value="inv-dh-medreq-01"/>
<constraint>
Expand All @@ -118,24 +52,10 @@
<type>
<code value="Reference"/>
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-encounter-core-1"/>
value="http://hl7.org.au/fhir/core/StructureDefinition/au-core-encounter"/>
</type>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.authoredOn">
<path value="MedicationRequest.authoredOn"/>
<min value="1"/>
<condition value="inv-dh-medreq-03"/>
<constraint>
<key value="inv-dh-medreq-03"/>
<severity value="error"/>
<human value="Date shall be at least to day"/>
<expression value="toString().length() &gt;= 10"/>
<xpath value="f:effectiveDateTime[matches(@value, '^\d{4}-\d{2}-\d{2}')]"/>
<source value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-medicationrequest-core-1"/>
</constraint>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.requester">
<path value="MedicationRequest.requester"/>
<min value="1"/>
Expand All @@ -144,9 +64,9 @@
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-practitionerrole-author-1"/>
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-organization-core-1"/>
value="http://hl7.org.au/fhir/core/StructureDefinition/au-core-organization"/>
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-patient-core-1"/>
value="http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient"/>
<targetProfile
value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-relatedperson-author-1"
/>
Expand All @@ -161,42 +81,5 @@
</constraint>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.reasonCode">
<path value="MedicationRequest.reasonCode"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.note">
<path value="MedicationRequest.note"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.dosageInstruction">
<path value="MedicationRequest.dosageInstruction"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.dispenseRequest">
<path value="MedicationRequest.dispenseRequest"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.dispenseRequest.validityPeriod">
<path value="MedicationRequest.dispenseRequest.validityPeriod"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.dispenseRequest.numberOfRepeatsAllowed">
<path value="MedicationRequest.dispenseRequest.numberOfRepeatsAllowed"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.dispenseRequest.quantity">
<path value="MedicationRequest.dispenseRequest.quantity"/>
<mustSupport value="true"/>
</element>

<element id="MedicationRequest.substitution">
<path value="MedicationRequest.substitution"/>
<mustSupport value="true"/>
</element>
<element id="MedicationRequest.substitution.allowed[x]">
<path value="MedicationRequest.substitution.allowed[x]"/>
<mustSupport value="true"/>
</element>
</differential>
</StructureDefinition>

0 comments on commit 6ea6db0

Please sign in to comment.