AU Core Implementation Guide
3.0.0-ballot1 - Ballot

AU Core Implementation Guide - Downloaded Version 3.0.0-ballot1 See the Directory of published versions

## Resource Profile: AU Core Composition

Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-composition | Version: 3.0.0-ballot1
Standards status: Trial-use | Maturity Level: 1 | Computable Name: AUCoreComposition
Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License. HL7 Australia© 2022+; Licensed Under Creative Commons No Rights Reserved.

This profile sets minimum expectations for a Composition resource to record, search, and fetch documents associated with a patient. It is based on the AU Base Composition profile and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the Composition resource when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.

See Comparison with other national and international IGs for a comparison between AU Core profiles and profiles in other implementation guides.

### Usage Scenarios

The following are supported usage scenarios for this profile:

- Query for a document for a patient
- Record or update a document for a patient

### Profile Specific Implementation Guidance

No guidance defined.

Usages:

- Examples for this Profile: Composition/aups-minimal
- CapabilityStatements using this Profile: AU Core Requester CapabilityStatement and AU Core Responder CapabilityStatement

You can also check for usages in the FHIR IG Statistics

Changes since version 2.0.0:

- New Content

### 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
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
text | SO | 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
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Slices for extension |  |  |  | Content/Rules for all slices
extension:informationRecipient |  | 0..* | Reference(Practitioner | Device | Patient | RelatedPerson | PractitionerRole | Organization) | Who and/or what should receive a copy of the composition URL: http://hl7.org.au/fhir/StructureDefinition/information-recipient
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | SO Σ | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | ?!SO Σ | 1..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
subject | SO Σ | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
date | SO Σ | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO Σ | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO Σ | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode | SO | 1..1 | code | personal | professional | legal | official Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO Σ | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
section | SO C | 1..* | BackboneElement | Composition is broken into sections Constraints: cmp-1, cmp-2
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended) Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
text | SO C | 0..1 | Narrative | Text summary of the section, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Composition.status | Base | required | CompositionStatus | 📍4.0.1 | FHIR Std.
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.
Composition.attester.​mode | Base | required | CompositionAttestationMode | 📍4.0.1 | FHIR Std.
Composition.section.​code | Base | example | Document Section Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cmp-1 | error | Composition.section | A section must contain at least one of text, entries, or sub-sections | `text.exists() or entry.exists() or section.exists()`
cmp-2 | error | Composition.section | A section can only have an emptyReason if it is empty | `emptyReason.empty() or entry.empty()`
dom-2 | error | Composition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Composition | 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 | Composition | 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 | Composition | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Composition | 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()`

This structure is derived from AUBaseComposition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
text | SO | 0..1 | Narrative | Text summary of the resource, for human interpretation
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
identifier | SO | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | SO | 1..1 | code | preliminary | final | amended | entered-in-error
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
subject | SO | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
date | SO | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
mode | SO | 1..1 | code | personal | professional | legal | official
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
section | SO | 1..* | BackboneElement | Composition is broken into sections
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
text | SO | 0..1 | Narrative | Text summary of the section, for human interpretation
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
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 | SO | 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
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:informationRecipient |  | 0..* | Reference(Practitioner | Device | Patient | RelatedPerson | PractitionerRole | Organization) | Who and/or what should receive a copy of the composition URL: http://hl7.org.au/fhir/StructureDefinition/information-recipient
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | SO Σ | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | ?!SO Σ | 1..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
category | Σ | 0..* | CodeableConcept | Categorization of Composition Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
subject | SO Σ | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
encounter | Σ | 0..1 | Reference(Encounter) | Context of the Composition
date | SO Σ | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO Σ | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO Σ | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
confidentiality | Σ | 0..1 | code | As defined by affinity domain Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode | SO | 1..1 | code | personal | professional | legal | official Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO Σ | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
relatesTo |  | 0..* | BackboneElement | Relationships to other compositions/documents
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code |  | 1..1 | code | replaces | transforms | signs | appends Binding: DocumentRelationshipType (required): The type of relationship between documents.
target[x] |  | 1..1 |  | Target of the relationship
targetIdentifier |  |  | Identifier |
targetReference |  |  | Reference(Composition) |
event | Σ | 0..* | BackboneElement | The clinical service(s) being documented
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
period | Σ | 0..1 | Period | The period covered by the documentation
detail | Σ | 0..* | Reference(Resource) | The event(s) being documented
section | SO C | 1..* | BackboneElement | Composition is broken into sections Constraints: cmp-1, cmp-2
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended) Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author |  | 0..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the section
focus |  | 0..1 | Reference(Resource) | Who/what the section is about, when it is not about the subject of composition
text | SO C | 0..1 | Narrative | Text summary of the section, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
mode |  | 0..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this section.
orderedBy |  | 0..1 | CodeableConcept | Order of section entries Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
entry | C | 0..* | Reference(Resource) | A reference to data that supports this section
emptyReason | C | 0..1 | CodeableConcept | Why the section is empty Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
section | C | 0..* | See section (Composition) | Nested Section
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Composition.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Composition.status | Base | required | CompositionStatus | 📍4.0.1 | FHIR Std.
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.
Composition.category | Base | example | Document Class Value Set | 📍4.0.1 | FHIR Std.
Composition.confidentiality | Base | required | V3 Value SetConfidentialityClassification | 📍2014-03-26 | FHIR Std.
Composition.attester.​mode | Base | required | CompositionAttestationMode | 📍4.0.1 | FHIR Std.
Composition.relatesTo.​code | Base | required | DocumentRelationshipType | 📍4.0.1 | FHIR Std.
Composition.event.code | Base | example | v3 Code System ActCode | 📦3.0.0 | THO v7.3
Composition.section.​code | Base | example | Document Section Codes | 📍4.0.1 | FHIR Std.
Composition.section.​mode | Base | required | ListMode | 📍4.0.1 | FHIR Std.
Composition.section.​orderedBy | Base | preferred | List Order Codes | 📍4.0.1 | FHIR Std.
Composition.section.​emptyReason | Base | preferred | List Empty Reasons | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cmp-1 | error | Composition.section | A section must contain at least one of text, entries, or sub-sections | `text.exists() or entry.exists() or section.exists()`
cmp-2 | error | Composition.section | A section can only have an emptyReason if it is empty | `emptyReason.empty() or entry.empty()`
dom-2 | error | Composition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Composition | 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 | Composition | 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 | Composition | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Composition | 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()`

This structure is derived from AUBaseComposition

Summary

Mandatory: 3 elements
Must-Support: 17 elements

Structures

This structure refers to these other structures:

- AU Core Patient (http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient)
- AU Core Practitioner (http://hl7.org.au/fhir/core/StructureDefinition/au-core-practitioner)
- AU Core PractitionerRole (http://hl7.org.au/fhir/core/StructureDefinition/au-core-practitionerrole)
- AU Core RelatedPerson (http://hl7.org.au/fhir/core/StructureDefinition/au-core-relatedperson)
- AU Core Organization (http://hl7.org.au/fhir/core/StructureDefinition/au-core-organization)

Maturity: 1

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
text | SO | 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
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Slices for extension |  |  |  | Content/Rules for all slices
extension:informationRecipient |  | 0..* | Reference(Practitioner | Device | Patient | RelatedPerson | PractitionerRole | Organization) | Who and/or what should receive a copy of the composition URL: http://hl7.org.au/fhir/StructureDefinition/information-recipient
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | SO Σ | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | ?!SO Σ | 1..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
subject | SO Σ | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
date | SO Σ | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO Σ | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO Σ | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode | SO | 1..1 | code | personal | professional | legal | official Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO Σ | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
section | SO C | 1..* | BackboneElement | Composition is broken into sections Constraints: cmp-1, cmp-2
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended) Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
text | SO C | 0..1 | Narrative | Text summary of the section, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Composition.status | Base | required | CompositionStatus | 📍4.0.1 | FHIR Std.
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.
Composition.attester.​mode | Base | required | CompositionAttestationMode | 📍4.0.1 | FHIR Std.
Composition.section.​code | Base | example | Document Section Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cmp-1 | error | Composition.section | A section must contain at least one of text, entries, or sub-sections | `text.exists() or entry.exists() or section.exists()`
cmp-2 | error | Composition.section | A section can only have an emptyReason if it is empty | `emptyReason.empty() or entry.empty()`
dom-2 | error | Composition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Composition | 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 | Composition | 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 | Composition | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Composition | 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()`

Differential View

This structure is derived from AUBaseComposition

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
text | SO | 0..1 | Narrative | Text summary of the resource, for human interpretation
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
identifier | SO | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | SO | 1..1 | code | preliminary | final | amended | entered-in-error
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
subject | SO | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
date | SO | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
mode | SO | 1..1 | code | personal | professional | legal | official
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
section | SO | 1..* | BackboneElement | Composition is broken into sections
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
text | SO | 0..1 | Narrative | Text summary of the section, for human interpretation
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Composition |  | 0..* | AUBaseComposition | Composition for the Australian realm
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 | SO | 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
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:informationRecipient |  | 0..* | Reference(Practitioner | Device | Patient | RelatedPerson | PractitionerRole | Organization) | Who and/or what should receive a copy of the composition URL: http://hl7.org.au/fhir/StructureDefinition/information-recipient
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | SO Σ | 0..1 | Identifier | Version-independent identifier for the Composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
status | ?!SO Σ | 1..1 | code | preliminary | final | amended | entered-in-error Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
type | SO Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred)
Additional Bindings | Purpose
Common FHIR Document Types in Australia | candidate
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
category | Σ | 0..* | CodeableConcept | Categorization of Composition Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
subject | SO Σ | 1..1 | Reference(AU Core Patient) | Who and/or what the composition is about
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
encounter | Σ | 0..1 | Reference(Encounter) | Context of the Composition
date | SO Σ | 1..1 | dateTime | Composition editing time
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author | SO Σ | 1..* | Reference(AU Core Practitioner | AU Core PractitionerRole | AU Core Patient | AU Core RelatedPerson | AU Core Organization | Device) | Who and/or what authored the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
title | SO Σ | 1..1 | string | Human Readable name/title
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
confidentiality | Σ | 0..1 | code | As defined by affinity domain Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.
attester | SO | 0..* | BackboneElement | Attests to accuracy of composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode | SO | 1..1 | code | personal | professional | legal | official Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
time | SO | 0..1 | dateTime | When the composition was attested
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
party | SO | 0..1 | Reference(AU Core Patient | AU Core RelatedPerson | AU Core Practitioner | AU Core PractitionerRole | AU Core Organization) | Who attested the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
custodian | SO Σ | 0..1 | Reference(AU Core Organization) | Organization which maintains the composition
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
relatesTo |  | 0..* | BackboneElement | Relationships to other compositions/documents
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code |  | 1..1 | code | replaces | transforms | signs | appends Binding: DocumentRelationshipType (required): The type of relationship between documents.
target[x] |  | 1..1 |  | Target of the relationship
targetIdentifier |  |  | Identifier |
targetReference |  |  | Reference(Composition) |
event | Σ | 0..* | BackboneElement | The clinical service(s) being documented
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
period | Σ | 0..1 | Period | The period covered by the documentation
detail | Σ | 0..* | Reference(Resource) | The event(s) being documented
section | SO C | 1..* | BackboneElement | Composition is broken into sections Constraints: cmp-1, cmp-2
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
title | SO | 1..1 | string | Label for section (e.g. for ToC)
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
code | SO | 0..1 | CodeableConcept | Classification of section (recommended) Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
author |  | 0..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the section
focus |  | 0..1 | Reference(Resource) | Who/what the section is about, when it is not about the subject of composition
text | SO C | 0..1 | Narrative | Text summary of the section, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Obligations | Actor
SHALL:populate-if-known | AU Core Responder
SHALL:no-error | AU Core Requester
mode |  | 0..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this section.
orderedBy |  | 0..1 | CodeableConcept | Order of section entries Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
entry | C | 0..* | Reference(Resource) | A reference to data that supports this section
emptyReason | C | 0..1 | CodeableConcept | Why the section is empty Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
section | C | 0..* | See section (Composition) | Nested Section
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Composition.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Composition.status | Base | required | CompositionStatus | 📍4.0.1 | FHIR Std.
Composition.type | Base | preferred | FHIR Document Type Codes | 📦4.0.1 | FHIR Std.
Composition.category | Base | example | Document Class Value Set | 📍4.0.1 | FHIR Std.
Composition.confidentiality | Base | required | V3 Value SetConfidentialityClassification | 📍2014-03-26 | FHIR Std.
Composition.attester.​mode | Base | required | CompositionAttestationMode | 📍4.0.1 | FHIR Std.
Composition.relatesTo.​code | Base | required | DocumentRelationshipType | 📍4.0.1 | FHIR Std.
Composition.event.code | Base | example | v3 Code System ActCode | 📦3.0.0 | THO v7.3
Composition.section.​code | Base | example | Document Section Codes | 📍4.0.1 | FHIR Std.
Composition.section.​mode | Base | required | ListMode | 📍4.0.1 | FHIR Std.
Composition.section.​orderedBy | Base | preferred | List Order Codes | 📍4.0.1 | FHIR Std.
Composition.section.​emptyReason | Base | preferred | List Empty Reasons | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
cmp-1 | error | Composition.section | A section must contain at least one of text, entries, or sub-sections | `text.exists() or entry.exists() or section.exists()`
cmp-2 | error | Composition.section | A section can only have an emptyReason if it is empty | `emptyReason.empty() or entry.empty()`
dom-2 | error | Composition | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Composition | 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 | Composition | 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 | Composition | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Composition | 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()`

This structure is derived from AUBaseComposition

Summary

Mandatory: 3 elements
Must-Support: 17 elements

Structures

This structure refers to these other structures:

- AU Core Patient (http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient)
- AU Core Practitioner (http://hl7.org.au/fhir/core/StructureDefinition/au-core-practitioner)
- AU Core PractitionerRole (http://hl7.org.au/fhir/core/StructureDefinition/au-core-practitionerrole)
- AU Core RelatedPerson (http://hl7.org.au/fhir/core/StructureDefinition/au-core-relatedperson)
- AU Core Organization (http://hl7.org.au/fhir/core/StructureDefinition/au-core-organization)

Maturity: 1

Other representations of profile: CSV, Excel, Schematron

### Notes:

Below is an overview of the mandatory and optional search parameters and combined search parameters. See the AU Core CapabilityStatements for a complete list of supported RESTful interactions for this IG.

FHIR search operations are described here and the syntax used to describe AU Core interactions is defined here.

Any search parameter defined in FHIR may be 'allowed' by the system unless explicitly marked as "SHALL NOT". A few items are marked as MAY in this implementation guide to highlight their potential relevance.

Parameter(s) | Conformance | Type(s) | Requirements (when used alone or in combination)
--- | --- | --- | ---
patient | SHALL | `reference` | The requester SHALL provide at least an id value and MAY provide both the Type and id values. The responder SHALL support both. The requester SHOULD support chained search patient.identifier using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile. The responder SHOULD support chained search patient.identifier using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile.
patient+date | SHALL | `reference`+`date` |
patient+type | SHALL | `reference`+`token` |
patient+author | SHOULD | `reference`+`reference` |
author | MAY | `reference` |
date | MAY | `date` | A requester SHALL provide a value precise to the second + time offset. A responder SHALL support a value precise to the second + time offset. The requester SHALL support these search comparators `gt`, `lt`, `ge`, `le`. The responder SHALL support these search comparators `gt`, `lt`, `ge`, `le`. The requester SHOULD support `multipleAnd`, and if `multipleAnd` is supported, SHALL support the search comparators `gt`, `lt`, `ge`, `le`. The responder SHOULD support `multipleAnd`, and if `multipleAnd` is supported, SHALL support the search comparators `gt`, `lt`, `ge`, `le`.
type | MAY | `token` | The requester SHALL provide at least a code value and MAY provide both the system and code values. The responder SHALL support both.

#### Mandatory Search Parameters

The following search parameters and search parameter combinations SHALL be supported:

1. SHALL support searching using the `patient` search parameter:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)

   `GET [base]/Composition?patient={Type/}[id]` or optionally `GET [base]/Composition?patient.identifier=[system|][code]`

   Example:

   1. GET [base]/Composition?patient=5678
   2. GET [base]/Composition?patient.identifier=http://ns.electronichealth.net.au/id/medicare-number|32788511952
   3. GET [base]/Composition?patient.identifier=http://ns.electronichealth.net.au/id/hi/ihi/1.0|8003608833357361

   Implementation Notes: Fetches a bundle of all Composition resources for the specified patient (how to search by reference and how to search by token)

2. SHALL support searching using the combination of the `patient` and `date` search parameters:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)
   - SHALL support these `date` comparators: `gt,lt,ge,le`
   - SHOULD support multipleAnd search on `date` (e.g. `date=[date]&date=[date]&...`), and if multipleAnd is supported, SHALL support the search comparators `gt,lt,ge,le`

   `GET [base]/Composition?patient={Type/}[id]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}`

   Example:

   1. GET [base]/Composition?patient=5678&date=ge2020-01-01T00:00:00Z
   2. GET [base]/Composition?patient.identifier=http://ns.electronichealth.net.au/id/medicare-number|32788511952&date=ge2020-01-01T00:00:00Z

   Implementation Notes: Fetches a bundle of all Composition resources for the specified patient and date (how to search by reference and how to search by date)

3. SHALL support searching using the combination of the `patient` and `type` search parameters:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)

   `GET [base]/Composition?patient={Type/}[id]&type={system|}[code]`

   Example:

   1. GET [base]/Composition?patient=5678&type=http://loinc.org|60591-5

   Implementation Notes: Fetches a bundle of all Composition resources for the specified patient and type (how to search by reference and how to search by token)

#### Optional Search Parameters

The following search parameters and search parameter combinations SHOULD be supported:

1. SHOULD support searching using the combination of the `patient` and `author` search parameters:
   - SHOULD support chained searching of patient canonical identifier `patient.identifier` (e.g. `patient.identifier=[system|][code]`)

   `GET [base]/Composition?patient={Type/}[id]&author={Type/}[id]`

   Example:

   1. GET [base]/Composition?patient=5678&author=Practitioner/sandyson-sandy

   Implementation Notes: Fetches a bundle of all Composition resources for the specified patient and author (how to search by reference)