AU Core Implementation Guide
0.2.0-preview - QA Preview Australia flag

This page is part of the Australian Core IG (v0.2.0-preview: AU Core) based on FHIR R4. For a full list of available versions, see the Directory of published versions

Resource Profile: AU Core DocumentReference

Official URL: http://hl7.org.au/fhir/core/StructureDefinition/au-core-documentreference Version: 0.2.0-preview
Standards status: Draft Maturity Level: 0 Computable Name: AUCoreDocumentReference

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 DocumentReference resource to record, search, and fetch patient documents. It is based on the core FHIR DocumentReference resource and identifies the additional mandatory core elements, extensions, vocabularies and value sets that SHALL be present in the DocumentReference resource when conforming to this profile. It provides the floor for standards development for specific uses cases in an Australian context.

Usage scenarios

The following are supported usage scenarios for this profile:

  • Query for documents belonging to a patient
  • Query for a specific document belonging to a patient
  • Record or update a document belonging to a patient

Comparison with other national and international specifications

A resource conforming to this profile is conformant to:

No equivalent International Patient Summary profile.

Conformance in reverse is not guaranteed, i.e. a resource conforming to International Patient Access or US Core MAY NOT conform to AU Core.

Profile specific implementation guidance

  • The DocumentReference resources can represent the referenced content using either an address where the document can be retrieved using DocumentReference.content.attachment.url or as inline base64 encoded data using DocumentReference.content.attachment.data.
    • Although both are marked as must support, servers are not required to support an address and inline base64 encoded data, but SHALL support at least one of these elements.
    • A client application SHALL support both elements.
    • DocumentReference.content.attachment.url may refer to a FHIR Binary Resource (i.e. [base]/Binary/[id]), FHIR Document Bundle (i.e. [base]/Bundle/[id]), or another endpoint.

Composition, DocumentReference, and DiagnosticReport resources support support the exchange of clinical notes. Specific feedback is sought on resource selection.

Specific feedback is sought on the set of clinical notes and associated codes to be supported in Australia.

Specific feedback is sought on the defining the local requirements of $docref operation including IPAFetchDocumentReference.

Usage:

Formal Views of Profile Content

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

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... identifier S1..*IdentifierOther identifiers for the document
... status S1..1codecurrent | superseded | entered-in-error
... docStatus S0..1codepreliminary | final | amended | entered-in-error
... category S1..*CodeableConceptCategorization of document
... subject S1..1Reference(AU Core Patient)Who/what is the subject of the document
... date S1..1instantWhen this document reference was created
... author S1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... description S0..1stringHuman-readable description
... content S1..*BackboneElementDocument referenced
.... attachment S1..1AttachmentWhere to access the document
.... format S0..1CodingFormat/content rules for the document
... context S0..1BackboneElementClinical context of document
.... encounter S0..*Reference(AU Core Encounter)Context of the document content

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*IdentifierOther identifiers for the document
... docStatus SΣ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(AU Core Patient)Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... description SΣ0..1stringHuman-readable description
... content SΣ1..*BackboneElementDocument referenced
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
.... format SΣ0..1CodingFormat/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.

... context SΣ0..1BackboneElementClinical context of document
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter S0..*Reference(AU Core Encounter)Context of the document content

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typepreferredDocumentTypeValueSet
DocumentReference.categoryexampleDocumentClassValueSet
DocumentReference.content.formatpreferredDocumentReferenceFormatCodeSet (a valid code from http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem)
NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... 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
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... masterIdentifier Σ0..1IdentifierMaster Version Specific Identifier
... identifier SΣ1..*IdentifierOther identifiers for the document
... status ?!SΣ1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.

... docStatus SΣ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(AU Core Patient)Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description SΣ0..1stringHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


... content SΣ1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
.... format SΣ0..1CodingFormat/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.

... context SΣ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter S0..*Reference(AU Core Encounter)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.


.... period Σ0..1PeriodTime of service that is being documented
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.

.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).

.... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
DocumentReference.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typepreferredDocumentTypeValueSet
DocumentReference.categoryexampleDocumentClassValueSet
DocumentReference.relatesTo.coderequiredDocumentRelationshipType
DocumentReference.securityLabelextensibleAll Security Labels
DocumentReference.content.formatpreferredDocumentReferenceFormatCodeSet (a valid code from http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem)
DocumentReference.context.eventexampleActCode
DocumentReference.context.facilityTypeexampleFacilityTypeCodeValueSet
DocumentReference.context.practiceSettingexamplePracticeSettingCodeValueSet

Differential View

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... identifier S1..*IdentifierOther identifiers for the document
... status S1..1codecurrent | superseded | entered-in-error
... docStatus S0..1codepreliminary | final | amended | entered-in-error
... category S1..*CodeableConceptCategorization of document
... subject S1..1Reference(AU Core Patient)Who/what is the subject of the document
... date S1..1instantWhen this document reference was created
... author S1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... description S0..1stringHuman-readable description
... content S1..*BackboneElementDocument referenced
.... attachment S1..1AttachmentWhere to access the document
.... format S0..1CodingFormat/content rules for the document
... context S0..1BackboneElementClinical context of document
.... encounter S0..*Reference(AU Core Encounter)Context of the document content

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier SΣ1..*IdentifierOther identifiers for the document
... docStatus SΣ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(AU Core Patient)Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... description SΣ0..1stringHuman-readable description
... content SΣ1..*BackboneElementDocument referenced
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
.... format SΣ0..1CodingFormat/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.

... context SΣ0..1BackboneElementClinical context of document
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter S0..*Reference(AU Core Encounter)Context of the document content

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typepreferredDocumentTypeValueSet
DocumentReference.categoryexampleDocumentClassValueSet
DocumentReference.content.formatpreferredDocumentReferenceFormatCodeSet (a valid code from http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem)

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... 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
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... masterIdentifier Σ0..1IdentifierMaster Version Specific Identifier
... identifier SΣ1..*IdentifierOther identifiers for the document
... status ?!SΣ1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.

... docStatus SΣ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(AU Core Patient)Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ1..*Reference(AU Core PractitionerRole | AU Core Organization | AU Core System Device | AU Core Patient | AU Core RelatedPerson)Who and/or what authored the document
... authenticator S0..1Reference(AU Core PractitionerRole | AU Core Organization)Who/what authenticated the document
... custodian S0..1Reference(AU Core Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description SΣ0..1stringHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


... content SΣ1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
.... format SΣ0..1CodingFormat/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.

... context SΣ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter S0..*Reference(AU Core Encounter)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.


.... period Σ0..1PeriodTime of service that is being documented
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.

.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).

.... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
DocumentReference.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typepreferredDocumentTypeValueSet
DocumentReference.categoryexampleDocumentClassValueSet
DocumentReference.relatesTo.coderequiredDocumentRelationshipType
DocumentReference.securityLabelextensibleAll Security Labels
DocumentReference.content.formatpreferredDocumentReferenceFormatCodeSet (a valid code from http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem)
DocumentReference.context.eventexampleActCode
DocumentReference.context.facilityTypeexampleFacilityTypeCodeValueSet
DocumentReference.context.practiceSettingexamplePracticeSettingCodeValueSet

 

Other representations of profile: CSV, Excel, Schematron

Notes:

Below is an overview of the mandatory and optional search parameters and combined search parameters. FHIR search operations and the syntax used to describe the interactions is described 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)
_id SHALL token
patient SHALL reference The client SHALL provide at least an id value and MAY provide both the Type and id values. The server SHALL support both.
patient+category SHALL reference+token
patient+category+date SHALL reference+token+date
identifier SHOULD token The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both.
patient+category+status SHOULD reference+token+token
patient+contenttype SHOULD reference+token
patient.identifier SHOULD reference.token The client SHALL provide both the system and code values. The server SHALL support both.

The client SHOULD support search using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile. The server SHOULD support search using the using IHI, Medicare Number, and DVA Number identifiers as defined in the AU Core Patient profile.
patient+status SHOULD reference+token
patient+type SHOULD reference+token
patient+type+date SHOULD reference+token+date
category MAY token The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both.
contenttype MAY token The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both.
type MAY token The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both.
date MAY date A client SHALL provide a value precise to the second + time offset. A server SHALL support a value precise to the second + time offset.
status MAY token The client SHALL provide at least a code value and MAY provide both the system and code values. The server SHALL support both.

Mandatory Search Parameters:

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

  1. SHALL support fetching a DocumentReference using the _id search parameter:
    • SHALL support these _revinclude parameters: Provenance:target

    GET [base]/DocumentReference/[id] or GET [base]/DocumentReference?_id=[id]

    Example:

    1. GET [base]/DocumentReference/2169591
    2. GET [base]/DocumentReference?_id=2169591

    Implementation Notes: Fetches a single DocumentReference. The document itself is represented as a base64 encoded binary data element or retrieved using the link provided by the resource. If the document is a relative link to a [Binary] resource like a resource reference, it can be subsequently retrieved using: GET [base]/Binary/[id]. (how to search by the logical id of the resource)

  2. SHALL support searching using the patient search parameter:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])

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

    Example:

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

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

  3. SHALL support searching using the combination of the patient and category search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])

    GET [base]/DocumentReference?patient={Type/}[id]&category={system|}[code]

    Example:

    1. GET [base]/DocumentReference?patient=5678&category=http://loinc.org|18761-7

    Implementation Notes: Fetches a bundle of all DocumentReference resources for the specified patient and a category code = 18761-7 (how to search by reference and how to search by token)

  4. SHALL support searching using the combination of the patient and category and date search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • 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]]&...)

    GET [base]/DocumentReference?patient={Type/}[id]&category={system|}[code]&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&category=http://loinc.org|18761-7&date=ge2020-01-01T00:00:00Z

    Implementation Notes: Fetches a bundle of all DocumentReference resources for the specified patient and date and a category code = 18761-7 (how to search by reference and how to search by token and how to search by date)

Optional Search Parameters:

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

  1. SHOULD support searching using the identifier search parameter:
    • SHALL support these _revinclude parameters: Provenance:target

    GET [base]/DocumentReference?identifier={system|}[code]

    Example:

    1. GET [base]/DocumentReference?identifier=http://hospital.example.org|1032333
    2. GET [base]/DocumentReference?identifier=http://hospital.example.org|1032333&_revinclude=Provenance:target

    Implementation Notes: Fetches a bundle containing any DocumentReference resources matching the identifier (how to search by token)

  2. SHOULD support searching using the combination of the patient and category and status search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])
    • SHOULD support multipleOr search on type (e.g.type={system|}[code],{system|}[code],...)

    GET [base]/DocumentReference?patient={Type/}[id]&category={system|}[code]&status={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&category=http://loinc.org|18761-7&status=final

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

  3. SHOULD support searching using the combination of the patient and type search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])
    • SHOULD support multipleOr search on type (e.g.type={system|}[code],{system|}[code],...)

    GET [base]/DocumentReference?patient={Type/}[id]&type={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&type=http://loinc.org|60591-5,http://loinc.org|34133-9,http://loinc.org|18842-5

    Implementation Notes: Fetches a bundle of all DocumentReference resources for the specified patient and diagnostic report code(s). The DocumentReference type parameter searches `DocumentReference.code only. (how to search by reference and how to search by token)

  4. SHOULD support searching using the combination of the patient and type and date search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code]
    • SHOULD support multipleOr search on type (e.g.type={system|}[code],{system|}[code],...)
    • SHALL support these date comparators: gt,lt,ge,le
    • SHOULD support multipleAnd search on date (e.g.date=[date]&date=[date]]&...)

    GET [base]/DocumentReference?patient={Type/}[id]&type={system|}[code]{,{system|}[code],...}&date={gt|lt|ge|le}[date]{&date={gt|lt|ge|le}[date]&...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&type=http://loinc.org|60591-5,http://loinc.org|34133-9,http://loinc.org|18842-5&date=ge2020-01-01T00:00:00Z
    2. GET [base]/DocumentReference?patient.identifier=http://example.org/fhir/mrn|12345&type=type=http://loinc.org|60591-5,http://loinc.org|34133-9,http://loinc.org|18842-5&date=ge2020-01-01T00:00:00Z

    Implementation Notes: Fetches a bundle of all DocumentReference resources for the specified patient and date and report code(s). (how to search by reference and how to search by token and how to search by date)

  5. SHOULD support searching using the combination of the patient and contenttype search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])
    • SHALL support multipleOr search on type (e.g.type={system|}[code],{system|}[code],...)

    GET [base]/DocumentReference?patient={Type/}[id]&contenttype={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&contenttype=application/dicom

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

  6. SHOULD support searching using the combination of the patient and status search parameters:
    • SHALL support these _revinclude parameters: Provenance:target
    • SHOULD support chained searching of patient canonical identifier patient.identifier (e.g. patient.identifier=[system|][code])
    • SHOULD support multipleOr search on type (e.g.type={system|}[code],{system|}[code],...)

    GET [base]/DocumentReference?patient={Type/}[id]&status={system|}[code]{,{system|}[code],...}

    Example:

    1. GET [base]/DocumentReference?patient=5678&status=final

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