AU Base Implementation Guide
4.2.1-ci-build - CI Build Australia flag

AU Base Implementation Guide, published by HL7 Australia. This guide is not an authorized publication; it is the continuous build for version 4.2.1-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7au/au-fhir-base/ and changes regularly. See the Directory of published versions

Resource Profile: AU Medicine List

Official URL: http://hl7.org.au/fhir/StructureDefinition/au-medlist Version: 4.2.1-ci-build
Standards status: Trial-use Maturity Level: 1 Computable Name: AUMedicineList

Copyright/Legal: HL7 Australia© 2018+; Licensed Under Creative Commons No Rights Reserved.

This profile defines a list structure that localises core concepts for use as a medicines list in an Australian context. This profile is intended to offer a common structure and expectations for a list of medications associated with a patient in an Australian healthcare context.

Usage Notes

Profile specific implementation guidance:

  • It is important to clearly differentiate between representing the extent of a system’s information for a patient versus clinical judgement of no relevant finding:
    • When asserting clinical judgement that there are no items of specific interest, (e.g. no current medications or no history of vaccination), List.entry.item with a reference to a supported FHIR resource containing the record of assertion should be sent. AU Assertion of No Relevant Finding is defined in this implementation guide for this concept.
    • When a statement is about the nature or extent of the information the system has access to or is permitted to share, (e.g. not asked or information withheld), List.emptyReason should be sent with an appropriate code from the ListEmptyReasons value set.
  • When a related person is the author of the list, the Author as a RelatedPerson extension is used and List.source is not included.

Usage:

Formal Views of Profile Content

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

This structure is derived from List

NameFlagsCard.TypeDescription & Constraintsdoco
.. List 0..*ListA list of medications in an Australian healthcare context
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... entry 0..*BackboneElementEntries in the list
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription D0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG
NameFlagsCard.TypeDescription & Constraintsdoco
.. List C0..*ListA list of medications in an Australian healthcare context
lst-1: A list can only have an emptyReason if it is empty
lst-2: The deleted flag can only be used if the mode of the list is "changes"
lst-3: An entry date can only be used if the mode of the list is "working"
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... status ?!Σ1..1codecurrent | retired | entered-in-error
Binding: ListStatus (required): The current state of the list.

... mode ?!Σ1..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this list.

... entry C0..*BackboneElementEntries in the list
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription 0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... deleted ?!C0..1booleanIf this item is actually marked as deleted
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
List.statusrequiredListStatus
http://hl7.org/fhir/ValueSet/list-status|4.0.1
from the FHIR Standard
List.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
from the FHIR Standard
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorListIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorListIf 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-4errorListIf 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-5errorListIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceListA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
lst-1errorListA list can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
lst-2errorListThe deleted flag can only be used if the mode of the list is "changes"
: mode = 'changes' or entry.deleted.empty()
lst-3errorListAn entry date can only be used if the mode of the list is "working"
: mode = 'working' or entry.date.empty()
NameFlagsCard.TypeDescription & Constraintsdoco
.. List C0..*ListA list of medications in an Australian healthcare context
lst-1: A list can only have an emptyReason if it is empty
lst-2: The deleted flag can only be used if the mode of the list is "changes"
lst-3: An entry date can only be used if the mode of the list is "working"
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierBusiness identifier
... status ?!Σ1..1codecurrent | retired | entered-in-error
Binding: ListStatus (required): The current state of the list.

... mode ?!Σ1..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this list.

... title Σ0..1stringDescriptive name for the list
Example General: Dr. Jane's Patients
... code Σ0..1CodeableConceptWhat the purpose of this list is
Binding: ExampleUseCodesForList (example): What the purpose of a list is.

... subject Σ0..1Reference(Patient | Group | Device | Location)If all resources have the same subject
... encounter 0..1Reference(Encounter)Context in which list created
... date Σ0..1dateTimeWhen the list was prepared
... source Σ0..1Reference(Practitioner | PractitionerRole | Patient | Device)Who and/or what defined the list contents (aka Author)
... orderedBy 0..1CodeableConceptWhat order the list has
Binding: ListOrderCodes (preferred): What order applies to the items in a list.

... note 0..*AnnotationComments about the list
... entry C0..*BackboneElementEntries in the list
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription 0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... deleted ?!C0..1booleanIf this item is actually marked as deleted
.... date 0..1dateTimeWhen item added to list
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry
... emptyReason C0..1CodeableConceptWhy list is empty
Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
List.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
List.statusrequiredListStatus
http://hl7.org/fhir/ValueSet/list-status|4.0.1
from the FHIR Standard
List.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
from the FHIR Standard
List.codeexampleExampleUseCodesForList
http://hl7.org/fhir/ValueSet/list-example-codes
from the FHIR Standard
List.orderedBypreferredListOrderCodes
http://hl7.org/fhir/ValueSet/list-order
from the FHIR Standard
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG
List.emptyReasonpreferredListEmptyReasons
http://hl7.org/fhir/ValueSet/list-empty-reason
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorListIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorListIf 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-4errorListIf 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-5errorListIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceListA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
lst-1errorListA list can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
lst-2errorListThe deleted flag can only be used if the mode of the list is "changes"
: mode = 'changes' or entry.deleted.empty()
lst-3errorListAn entry date can only be used if the mode of the list is "working"
: mode = 'working' or entry.date.empty()

This structure is derived from List

Differential View

This structure is derived from List

NameFlagsCard.TypeDescription & Constraintsdoco
.. List 0..*ListA list of medications in an Australian healthcare context
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... entry 0..*BackboneElementEntries in the list
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription D0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. List C0..*ListA list of medications in an Australian healthcare context
lst-1: A list can only have an emptyReason if it is empty
lst-2: The deleted flag can only be used if the mode of the list is "changes"
lst-3: An entry date can only be used if the mode of the list is "working"
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... status ?!Σ1..1codecurrent | retired | entered-in-error
Binding: ListStatus (required): The current state of the list.

... mode ?!Σ1..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this list.

... entry C0..*BackboneElementEntries in the list
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription 0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... deleted ?!C0..1booleanIf this item is actually marked as deleted
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
List.statusrequiredListStatus
http://hl7.org/fhir/ValueSet/list-status|4.0.1
from the FHIR Standard
List.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
from the FHIR Standard
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorListIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorListIf 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-4errorListIf 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-5errorListIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceListA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
lst-1errorListA list can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
lst-2errorListThe deleted flag can only be used if the mode of the list is "changes"
: mode = 'changes' or entry.deleted.empty()
lst-3errorListAn entry date can only be used if the mode of the list is "working"
: mode = 'working' or entry.date.empty()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. List C0..*ListA list of medications in an Australian healthcare context
lst-1: A list can only have an emptyReason if it is empty
lst-2: The deleted flag can only be used if the mode of the list is "changes"
lst-3: An entry date can only be used if the mode of the list is "working"
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... sourceRelatedPerson 0..1Reference(RelatedPerson)Related person that defined the list contents (aka Author)
URL: http://hl7.org.au/fhir/StructureDefinition/author-related-person
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierBusiness identifier
... status ?!Σ1..1codecurrent | retired | entered-in-error
Binding: ListStatus (required): The current state of the list.

... mode ?!Σ1..1codeworking | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this list.

... title Σ0..1stringDescriptive name for the list
Example General: Dr. Jane's Patients
... code Σ0..1CodeableConceptWhat the purpose of this list is
Binding: ExampleUseCodesForList (example): What the purpose of a list is.

... subject Σ0..1Reference(Patient | Group | Device | Location)If all resources have the same subject
... encounter 0..1Reference(Encounter)Context in which list created
... date Σ0..1dateTimeWhen the list was prepared
... source Σ0..1Reference(Practitioner | PractitionerRole | Patient | Device)Who and/or what defined the list contents (aka Author)
... orderedBy 0..1CodeableConceptWhat order the list has
Binding: ListOrderCodes (preferred): What order applies to the items in a list.

... note 0..*AnnotationComments about the list
... entry C0..*BackboneElementEntries in the list
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
.... changeDescription 0..1stringChange description
URL: http://hl7.org.au/fhir/StructureDefinition/change-description
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... flag 0..1CodeableConceptMedicine item change
Binding: Medicine Item Change (preferred)
.... deleted ?!C0..1booleanIf this item is actually marked as deleted
.... date 0..1dateTimeWhen item added to list
.... item 1..1Reference(MedicationStatement | MedicationRequest | MedicationDispense | MedicationAdministration | Immunization | AU Assertion of No Relevant Finding)Actual entry
... emptyReason C0..1CodeableConceptWhy list is empty
Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
List.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
List.statusrequiredListStatus
http://hl7.org/fhir/ValueSet/list-status|4.0.1
from the FHIR Standard
List.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
from the FHIR Standard
List.codeexampleExampleUseCodesForList
http://hl7.org/fhir/ValueSet/list-example-codes
from the FHIR Standard
List.orderedBypreferredListOrderCodes
http://hl7.org/fhir/ValueSet/list-order
from the FHIR Standard
List.entry.flagpreferredMedicineItemChange (a valid code from Medicine Item Change)
http://terminology.hl7.org.au/ValueSet/medicine-item-change
from this IG
List.emptyReasonpreferredListEmptyReasons
http://hl7.org/fhir/ValueSet/list-empty-reason
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorListIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorListIf 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-4errorListIf 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-5errorListIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceListA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
lst-1errorListA list can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
lst-2errorListThe deleted flag can only be used if the mode of the list is "changes"
: mode = 'changes' or entry.deleted.empty()
lst-3errorListAn entry date can only be used if the mode of the list is "working"
: mode = 'working' or entry.date.empty()

This structure is derived from List

 

Other representations of profile: CSV, Excel, Schematron