diff --git a/examples/Bundle/bundle-vpr-01.xml b/examples/Bundle/bundle-vpr-01.xml new file mode 100644 index 000000000..cca057070 --- /dev/null +++ b/examples/Bundle/bundle-vpr-01.xml @@ -0,0 +1,152 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+ + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/examples/Bundle/bundle-vpr-02.xml b/examples/Bundle/bundle-vpr-02.xml new file mode 100644 index 000000000..41a5cbb3c --- /dev/null +++ b/examples/Bundle/bundle-vpr-02.xml @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+ + + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/examples/Bundle/bundle-vpr-03.xml b/examples/Bundle/bundle-vpr-03.xml new file mode 100644 index 000000000..145d585f1 --- /dev/null +++ b/examples/Bundle/bundle-vpr-03.xml @@ -0,0 +1,229 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+ + + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/ig.json b/ig.json index 6be93fb22..d1f1b3bea 100644 --- a/ig.json +++ b/ig.json @@ -431,6 +431,10 @@ "base": "StructureDefinition-dh-encounter-core-1.html", "defns": "StructureDefinition-dh-encounter-core-1-definitions.html" }, + "StructureDefinition/dh-episodeofcare-mygp-1": { + "base": "StructureDefinition-dh-episodeofcare-mygp-1.html", + "defns": "StructureDefinition-dh-episodeofcare-mygp-1-definitions.html" + }, "StructureDefinition/dh-explanationofbenefit-medicare-mbs-1": { "base": "StructureDefinition-dh-explanationofbenefit-medicare-mbs-1.html", "defns": "StructureDefinition-dh-explanationofbenefit-medicare-mbs-1-definitions.html" diff --git a/pages/_includes/dh-composition-dr-1-intro.md b/pages/_includes/dh-composition-dr-1-intro.md index afc81b429..60ad7a3ba 100644 --- a/pages/_includes/dh-composition-dr-1-intro.md +++ b/pages/_includes/dh-composition-dr-1-intro.md @@ -1,4 +1,4 @@ -The purpose of this profile is to define a representation of a Diagnostic Report document tfor the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. A composition is a set of resources composed into a single coherent clinical statement that may have clinical attestation. This profile is intended to be capable of supporting reporting for specialist and other diagnostic disciplines, pathology disciplines, and imaging discliplines. +The purpose of this profile is to define a representation of a Diagnostic Report document for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. A composition is a set of resources composed into a single coherent clinical statement that may have clinical attestation. This profile is intended to be capable of supporting reporting for specialist and other diagnostic disciplines, pathology disciplines, and imaging disciplines. This profile identifies the additional constraints, extensions, and value sets that build on and extend [Composition](http://hl7.org/fhir/R4/composition.html) that are supported. diff --git a/pages/_includes/dh-documentreference-dr-1-intro.md b/pages/_includes/dh-documentreference-dr-1-intro.md index b73ebf2c8..c8aa62123 100644 --- a/pages/_includes/dh-documentreference-dr-1-intro.md +++ b/pages/_includes/dh-documentreference-dr-1-intro.md @@ -1,4 +1,4 @@ -The purpose of this profile is to provide a representation of a Diagnsotic Report document reference for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. This profile is intended to be capable of supporting reporting for specialist and other diagnostic disciplines, pathology disciplines, and imaging discliplines. +The purpose of this profile is to provide a representation of a Diagnostic Report document reference for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. This profile is intended to be capable of supporting reporting for specialist and other diagnostic disciplines, pathology disciplines, and imaging disciplines. This profile identifies the additional constraints, extensions, and value sets that build on and extend [DocumentReference](http://hl7.org/fhir/R4/documentreference.html) that are supported. diff --git a/pages/_includes/dh-episodeofcare-mygp-1-examples.md b/pages/_includes/dh-episodeofcare-mygp-1-examples.md new file mode 100644 index 000000000..aadbefe41 --- /dev/null +++ b/pages/_includes/dh-episodeofcare-mygp-1-examples.md @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Example nameidFormat
Patient's registered GP practicevpr-01XMLJSONTurtle
Patient's registered GP practice and practitionervpr-02XMLJSONTurtle
History of patient's registered GP practicesvpr-03XMLJSONTurtle
\ No newline at end of file diff --git a/pages/_includes/dh-episodeofcare-mygp-1-intro.md b/pages/_includes/dh-episodeofcare-mygp-1-intro.md new file mode 100644 index 000000000..15444d432 --- /dev/null +++ b/pages/_includes/dh-episodeofcare-mygp-1-intro.md @@ -0,0 +1,20 @@ +The purpose of this profile is to define a representation of GP practice registration information for a patient from MyGP for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. This profile supports a current entry or a historical entry. + +This profile identifies the additional constraints, extensions, and value sets that build on and extend [EpisodeOfCare](http://hl7.org/fhir/R4/episodeofcare.html) that are supported. + +This profile is designed to set an EpisodeOfCare standard for: +* Query for a patient's registered GP Practice information from MyGP + +This profile is used by the following APIs: +* [insert API endpoint](StructureDefinition-TBD-1.html) + + +#### Profile specific guidance +- This profile supports exchange of current and historical patient GP practice registration information. + - *current* is represented with status `active` and only period.start sent, see example [Patient's registered GP practice](Bundle-vpr-01.html) + - *historial* is represented with status `finished`, and both period.start and period.end, see example [History of patient's registered GP practices](Bundle-vpr-03.html) + + +#### Boundaries and relationships +This profile is not referenced by another profile in this implementation guide. + diff --git a/pages/_includes/dh-episodeofcare-mygp-1-search.md b/pages/_includes/dh-episodeofcare-mygp-1-search.md new file mode 100644 index 000000000..f1cb9c23a --- /dev/null +++ b/pages/_includes/dh-episodeofcare-mygp-1-search.md @@ -0,0 +1,68 @@ +Below is an overview of the mandatory and optional search parameters. FHIR search operations and the syntax used to describe the interactions is described here. + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeConformanceDescriptionPath
patient:identifiertokenSHALLThe patient who is the focus of this episode of careEpisodeOfCare.patient.identifier
statustokenSHALLThe current status of the Episode of Care as provided (does not check the status history collection) active | finishedEpisodeOfCare.status
+ + +#### Mandatory Search Parameters + +The following search parameters and search parameter combinations **SHALL** be supported: + +1. **SHALL** support searching for all consent statements for a patient using the **`patient:identifier`** search parameter: + + `GET [base]/EpisodeOfCare?patient:identifier={system|}[code]` + + Example: + ~~~ + GET [base]/EpisodeOfCare?patient:identifier=http://ns.electronichealth.net.au/id/hi/ihi/1.0|8003608000228437 + ~~~ + *Implementation Notes:* Fetches a bundle of all EpisodeOfCare resources for the specified patient ([how to search by :identifier](http://hl7.org/fhir/R4/search.html#reference)) + + + +1. **SHALL** support searching using the combination **`patient:identifier`** and **`status`** search parameter: +- including support for *OR* search on `status` (e.g.`status={system|}[code],{system|}[code],...`) + + `GET [base]/EpisodeOfCare?patient:identifier={system|}[code]&status={system|}[code]` + + Example: + ~~~ + GET [base]/EpisodeOfCare?patient:identifier=http://ns.electronichealth.net.au/id/hi/ihi/1.0|8003608000228437&status=active + ~~~ + *Implementation Notes:* Fetches a bundle of the active EpisodeOfCare resources for the specified patient ([how to search by :identifier](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/search.html#token)) + + +1. **SHOULD** support searching using the combination of the **`patient:identifier`** and **`date`** and **`status`** search parameters: +- including support for *OR* search on `status` (e.g.`status={system|}[code],{system|}[code],...`) + + `GET [base]/EpisodeOfCare?patient:identifier={system|}[code]&date=[date]&status={system|}[code]` + + Example: + ~~~ + GET [base]/EpisodeOfCare?patient:identifier=http://ns.electronichealth.net.au/id/hi/ihi/1.0|8003608000228437&date=ge2013-03-14&status=active + ~~~ + *Implementation Notes:* Fetches a bundle of all active EpisodeOfCare resources for the specified patient that have a date greater than or equal to 21st Jan 2013. ([how to search by :identifier](http://hl7.org/fhir/R4/search.html#reference) and [how to search by date](http://hl7.org/fhir/R4/search.html#date)) + \ No newline at end of file diff --git a/pages/_includes/dh-episodeofcare-mygp-1-summary.md b/pages/_includes/dh-episodeofcare-mygp-1-summary.md new file mode 100644 index 000000000..ce4f4e5fb --- /dev/null +++ b/pages/_includes/dh-episodeofcare-mygp-1-summary.md @@ -0,0 +1 @@ +This file is intentionally empty. It is required to be included by the IG Publisher. \ No newline at end of file diff --git a/pages/_includes/profiles.md b/pages/_includes/profiles.md index 76d026c4c..8c0cc6801 100644 --- a/pages/_includes/profiles.md +++ b/pages/_includes/profiles.md @@ -313,6 +313,7 @@ The following FHIR profiles are defined in this implementation guide to support
  • ADHA Hospitalisation Encounter
  • +
  • ADHA GP Practice Registration Entry
  • ADHA Australian Immunisation Register Notice
  • ADHA Adverse Reactions List
  • ADHA Allergies and Intolerances List
  • diff --git a/resources/Profile/dh-composition-dr-1.xml b/resources/Profile/dh-composition-dr-1.xml index 42383899a..d82327b7a 100644 --- a/resources/Profile/dh-composition-dr-1.xml +++ b/resources/Profile/dh-composition-dr-1.xml @@ -14,7 +14,7 @@ - + @@ -91,7 +91,7 @@ - + diff --git a/resources/Profile/dh-documentreference-dr-1.xml b/resources/Profile/dh-documentreference-dr-1.xml index 80608f33a..e72fedc5b 100644 --- a/resources/Profile/dh-documentreference-dr-1.xml +++ b/resources/Profile/dh-documentreference-dr-1.xml @@ -14,7 +14,7 @@ - + diff --git a/resources/Profile/dh-episodeofcare-mygp-1.xml b/resources/Profile/dh-episodeofcare-mygp-1.xml new file mode 100644 index 000000000..a45e7ed67 --- /dev/null +++ b/resources/Profile/dh-episodeofcare-mygp-1.xml @@ -0,0 +1,111 @@ + + + + + + + + <status value="draft"/> + <experimental value="false"/> + <publisher value="Australian Digital Health Agency"/> + <contact> + <telecom> + <system value="email"/> + <value value="help@digitalhealth.gov.au"/> + </telecom> + </contact> + <description value="The purpose of this profile is to define a representation of GP practice registration information for a patient from MyGP for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. This profile supports a current entry or a historical entry."/> + <copyright value="Copyright © 2022 Australian Digital Health Agency - All rights reserved. This content is licensed under a Creative Commons Attribution 4.0 International License. See https://creativecommons.org/licenses/by/4.0/. This resource includes SNOMED Clinical Terms™ (SNOMED CT®) which is used by permission of the International Health Terminology Standards Development Organisation (IHTSDO). All rights reserved. SNOMED CT®, was originally created by The College of American Pathologists. “SNOMED” and “SNOMED CT” are registered trademarks of the IHTSDO. The rights to use and implement or implementation of SNOMED CT content are limited to the extent it is necessary to allow for the end use of this material. No further rights are granted in respect of the International Release and no further use of any SNOMED CT content by any other party is permitted. All copies of this resource must include this copyright statement and all information contained in this statement."/> + <fhirVersion value="4.0.1"/> + <kind value="resource"/> + <abstract value="false"/> + <type value="EpisodeOfCare"/> + <baseDefinition value="http://hl7.org/fhir/StructureDefinition/EpisodeOfCare"/> + <derivation value="constraint"/> + <differential> + <element id="EpisodeOfCare"> + <path value="EpisodeOfCare"/> + <short value="GP practice registration entry"/> + <definition value="Information about a GP practice that is or has been registered for a patient in the MyGP system."/> + <constraint> + <key value="inv-dh-epoc-03"/> + <severity value="error"/> + <human value="Status shall be active or finished"/> + <expression value="(status='active') or (status='finished')"/> + <xpath value="(f:status/@value = 'active') or (f:status/@value = 'finished')"/> + <source value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-episodeofcare-mygp-1"/> + </constraint> + <constraint> + <key value="inv-dh-epoc-04"/> + <severity value="error"/> + <human value="A patien'ts current GP practice shall not have a registration end date"/> + <expression value="period.end.empty() xor (status = 'finished')"/> + <xpath value="not(f:period.end) or exists(f:status/@value = 'finished')"/> + <source value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-episodeofcare-mygp-1"/> + </constraint> + </element> + <element id="EpisodeOfCare.status"> + <path value="EpisodeOfCare.status"/> + <short value="active | finished"/> + <comment value="In the context of a patient's GP practice registered with MyGP. The current registered practice has status=active, historical GP practice registration entries have status=finished."/> + <condition value="inv-dh-epoc-03"/> + <mustSupport value="true"/> + </element> + <element id="EpisodeOfCare.type"> + <path value="EpisodeOfCare.type"/> + <short value="GP practice - primary care management"/> + <min value="1"/> + <patternCodeableConcept> + <coding> + <system value="http://snomed.info/sct"/> + <code value="737470001"/> + </coding> + </patternCodeableConcept> + <mustSupport value="true"/> + </element> + <element id="EpisodeOfCare.patient"> + <path value="EpisodeOfCare.patient"/> + <type> + <code value="Reference"/> + <targetProfile value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-patient-core-1"/> + </type> + <condition value="inv-dh-epoc-01"/> + <constraint> + <key value="inv-dh-epoc-01"/> + <severity value="error"/> + <human value="At least reference or a valid identifier shall be present"/> + <expression value="reference.exists() or identifier.where(system.count() + value.count() >1).exists()"/> + <xpath value="exists(f:reference) or exists(f:identifier)"/> + <source value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-episodeofcare-mygp-1"/> + </constraint> + <mustSupport value="true"/> + </element> + <element id="EpisodeOfCare.managingOrganization"> + <path value="EpisodeOfCare.managingOrganization"/> + <short value="GP practice that is now, or was once, registered for a patient"/> + <min value="1"/> + <type> + <code value="Reference"/> + <targetProfile value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-organization-core-1"/> + </type> + <condition value="inv-dh-epoc-02"/> + <constraint> + <key value="inv-dh-epoc-02"/> + <severity value="error"/> + <human value="At least reference or a valid identifier shall be present"/> + <expression value="reference.exists() or identifier.where(system.count() + value.count() >1).exists()"/> + <xpath value="exists(f:reference) or exists(f:identifier)"/> + <source value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-episodeofcare-mygp-1"/> + </constraint> + <mustSupport value="true"/> + </element> + <element id="EpisodeOfCare.period"> + <path value="EpisodeOfCare.period"/> + <short value="Registration start date and only if historical registration end date"/> + <comment value="In the context of a MyGP registration, a patient's current registered GP practice will only have period.start. A historical entry will have both period.start and period.end."/> + <min value="1"/> + <condition value="inv-dh-epoc-04"/> + <mustSupport value="true"/> + </element> + </differential> +</StructureDefinition> diff --git a/resources/dh-ig-1.xml b/resources/dh-ig-1.xml index 8788230b1..ccad76881 100644 --- a/resources/dh-ig-1.xml +++ b/resources/dh-ig-1.xml @@ -351,6 +351,14 @@ <description value="The purpose of this profile is to provide a core representation of an encounter for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia."/> <exampleBoolean value="false"/> </resource> + <resource> + <reference> + <reference value="StructureDefinition/dh-episodeofcare-mygp-1"/> + </reference> + <name value="ADHA GP Practice Registration Entry"/> + <description value="The purpose of this profile is to define a representation of GP practice registration information for a patient from MyGP for the electronic exchange of health information between individuals, healthcare providers, and the My Health Record system infrastructure in Australia. This profile supports a current entry or a historical entry."/> + <exampleBoolean value="false"/> + </resource> <resource> <reference> <reference value="StructureDefinition/dh-explanationofbenefit-medicare-mbs-1"/> @@ -1273,6 +1281,27 @@ <name value="Pathology Report Document Bundle SARS-CoV-2 (COVID-19) PCR for Mrs Anne Thompson"/> <exampleCanonical value="http://ns.electronichealth.net.au/fhir/StructureDefinition/dh-bundle-document-1"/> </resource> + <resource> + <reference> + <reference value="Bundle/vpr-01"/> + </reference> + <name value="Patient's registered GP practice"/> + <exampleCanonical value="http://hl7.org/fhir/StructureDefinition/Bundle"/> + </resource> + <resource> + <reference> + <reference value="Bundle/vpr-02"/> + </reference> + <name value="Patient's registered GP practice and practitioner"/> + <exampleCanonical value="http://hl7.org/fhir/StructureDefinition/Bundle"/> + </resource> + <resource> + <reference> + <reference value="Bundle/vpr-03"/> + </reference> + <name value="History of patient's registered GP practices"/> + <exampleCanonical value="http://hl7.org/fhir/StructureDefinition/Bundle"/> + </resource> <!--CONSENT EXAMPLES--> <resource> <reference>