diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index e69de29b..260758d9 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -0,0 +1,3 @@
+* Large rework of preset system to include pre-cached validation engines
+* Expand version endpoint to include core version
+* Updated core version including fixes related to locale terminology validation
diff --git a/gradle.properties b/gradle.properties
index f0ae98c5..2eed6f81 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -2,7 +2,7 @@ kotlin.code.style=official
kotlin.js.generate.executable.default=false
# versions
-fhirCoreVersion=6.3.10
+fhirCoreVersion= 6.3.20
junitVersion=5.7.1
mockk_version=1.10.2
@@ -39,6 +39,3 @@ koinVersion=3.2.1
logbackVersion=1.5.3
kmongoVersion=4.5.0
-
-
-
diff --git a/http-client-tests/http-client.env.json b/http-client-tests/http-client.env.json
new file mode 100644
index 00000000..15809801
--- /dev/null
+++ b/http-client-tests/http-client.env.json
@@ -0,0 +1,8 @@
+{
+ "default": {
+ "host": "https://validator.fhir.org"
+ },
+ "local": {
+ "host": "http://localhost:8082"
+ }
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/cda.json b/http-client-tests/resources/explicit-preset-requests/cda.json
new file mode 100644
index 00000000..ab111684
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/cda.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "sv": "5.0.0",
+ "igs": [
+ "hl7.cda.uv.core#2.0.0-sd-snapshot1"
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.xml",
+ "fileContent": "\n\n\n\n\t\n\t\n\t\n \n \n \n\t\n\t\n\t
\n\tGood Health Hospital Care Plan \n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tBetterhalf \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t2222 Home Street \n\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t97867 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tBoris \n\t\t\t\t\t\t\tBo \n\t\t\t\t\t\t\tBetterhalf \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t4444 Home Street \n\t\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\t\tOR \n\t\t\t\t\t\t\t97867 \n\t\t\t\t\t\t\tUS \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tThe DoctorsTogether Physician Group \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1007 Health Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEllen \n\t\t\t\t\tEnter \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tHarold \n\t\t\t\t\tHippocrates \n\t\t\t\t\tD.O. \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health HIE \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1009 Healthcare Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t100 Better Health Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tCaresalot \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tBetter Health Hospital \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t100 Better Health Rd. \n\t\t\t\t\tAnn Arbor \n\t\t\t\t\tMI \n\t\t\t\t\t97857 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IE51cnNlIE5pZ2h0aW5nYWxl \n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t\t\n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IEV2ZSBFdmVyeXdvbWFu \n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t \n\t\t
\n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n \n\t\t \n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n \n\t\t
\n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t1004 Healthcare Drive \n\t\t\t\t\t\tPortland \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t99123 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tPatricia \n\t\t\t\t\t\t\tPatty \n\t\t\t\t\t\t\tPrimary \n\t\t\t\t\t\t\tM.D. \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t
\n\t \n\t\n\t\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\tPROBLEMS \n\t\t\t\tNo Information \n\t\t\t \n\t\t \n \n\t \n ",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/default.json b/http-client-tests/resources/explicit-preset-requests/default.json
new file mode 100644
index 00000000..60777a93
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/default.json
@@ -0,0 +1,13 @@
+{
+"cliContext": {
+"sv": "4.0.1",
+"locale": "en"
+},
+"filesToValidate": [
+{
+"fileName": "manually_entered_file.json",
+"fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"
Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+"fileType": null
+}
+]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/ips-au.json b/http-client-tests/resources/explicit-preset-requests/ips-au.json
new file mode 100644
index 00000000..31b0f152
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/ips-au.json
@@ -0,0 +1,29 @@
+{
+ "cliContext": {
+ "extensions": [
+ "any"
+ ],
+ "sv": "4.0.1",
+ "igs": [
+ "hl7.fhir.au.ips#current"
+ ],
+ "profiles": [
+ "http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips"
+ ],
+ "checkIPSCodes": true,
+ "bundleValidationRules": [
+ {
+ "rule": "Composition:0",
+ "profile": "http://hl7.org.au/fhir/ips/StructureDefinition/Composition-au-ips"
+ }
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\" : \"Bundle\",\n \"id\" : \"bundle-minimal\",\n \"language\" : \"en-US\",\n \"identifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"28b95815-76ce-457b-b7ae-a972e527db40\"\n },\n \"type\" : \"document\",\n \"timestamp\" : \"2020-12-11T14:30:00+01:00\",\n \"entry\" : [{\n \"fullUrl\" : \"urn:uuid:6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"resource\" : {\n \"resourceType\" : \"Composition\",\n \"id\" : \"6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative
Resource \\\"6e1fb74a-742b-4c7b-8487-171dacb88766\\\"
status : final
type : Patient summary Document (LOINC #60591-5)
date : 2020-12-11 02:30:00+0100
author : Beetje van Hulp, MD
title : Patient Summary as of December 11, 2020 14:30
confidentiality : N
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Beetje van Hulp, MD
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Anorg Aniza Tion BV
custodian : Anorg Aniza Tion BV
RelatesTos - Code Target[x] * appends id: 20e12ce3-857f-49c0-b888-cb670597f191
Events - Code Period * care provision (ActClass #PCPR) ?? --> 2020-12-11 02:30:00+0100
\"\n },\n \"status\" : \"final\",\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"60591-5\",\n \"display\" : \"Patient summary Document\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"date\" : \"2020-12-11T14:30:00+01:00\",\n \"author\" : [{\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }],\n \"title\" : \"Patient Summary as of December 11, 2020 14:30\",\n \"confidentiality\" : \"N\",\n \"attester\" : [{\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }\n },\n {\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n }\n }],\n \"custodian\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n },\n \"relatesTo\" : [{\n \"code\" : \"appends\",\n \"targetIdentifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"20e12ce3-857f-49c0-b888-cb670597f191\"\n }\n }],\n \"event\" : [{\n \"code\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\" : \"PCPR\"\n }]\n }],\n \"period\" : {\n \"end\" : \"2020-12-11T14:30:00+01:00\"\n }\n }],\n \"section\" : [{\n \"title\" : \"Active Problems\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"11450-4\",\n \"display\" : \"Problem list Reported\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"Condition/ad84b7a2-b4dd-474e-bef3-0779e6cb595f\"\n }]\n },\n {\n \"title\" : \"Medication\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"10160-0\",\n \"display\" : \"History of Medication use Narrative\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Medication Name : Oral anastrozole 1mg tablet
Code :
Status : Active, started March 2015
Instructions: Take 1 time per day
\"\n },\n \"entry\" : [{\n \"reference\" : \"MedicationStatement/6e883e5e-7648-485a-86de-3640a61601fe\"\n }]\n },\n {\n \"title\" : \"Allergies and Intolerances\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"48765-2\",\n \"display\" : \"Allergies and adverse reactions Document\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"AllergyIntolerance/fe2769fd-22c9-4307-9122-ee0466e5aebb\"\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"resource\" : {\n \"resourceType\" : \"Patient\",\n \"id\" : \"7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Patient
Resource Patient "7685713c-e29e-4a75-8a90-45be7ba3be94"
identifier : id:\\u00a0574687583
active : true
name : Martha DeLarosa
telecom : +31788700800
gender : female
birthDate : 1972-05-01
address : Laan Van Europa 1600 Dordrecht 3317 DB NL
Contacts - Relationship Name Telecom Address * mother (RoleCode #MTH) Martha Mum +33-555-20036 Promenade des Anglais 111 Lyon 69001 FR
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.6.3\",\n \"value\" : \"574687583\"\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"DeLarosa\",\n \"given\" : [\"Martha\"]\n }],\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31788700800\",\n \"use\" : \"home\"\n }],\n \"gender\" : \"female\",\n \"birthDate\" : \"1972-05-01\",\n \"address\" : [{\n \"line\" : [\"Laan Van Europa 1600\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3317 DB\",\n \"country\" : \"NL\"\n }],\n \"contact\" : [{\n \"relationship\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\" : \"MTH\"\n }]\n }],\n \"name\" : {\n \"family\" : \"Mum\",\n \"given\" : [\"Martha\"]\n },\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+33-555-20036\",\n \"use\" : \"home\"\n }],\n \"address\" : {\n \"line\" : [\"Promenade des Anglais 111\"],\n \"city\" : \"Lyon\",\n \"postalCode\" : \"69001\",\n \"country\" : \"FR\"\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"resource\" : {\n \"resourceType\" : \"Practitioner\",\n \"id\" : \"98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Practitioner
Resource Practitioner "98315ba9-ffea-41ef-b59b-a836c039858f"
identifier : id:\\u00a0129854633
active : true
name : Beetje van Hulp
Qualifications - Code * Doctor of Medicine (degreeLicenseCertificate[2.7]#MD)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.1\",\n \"value\" : \"129854633\",\n \"assigner\" : {\n \"display\" : \"CIBG\"\n }\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"van Hulp\",\n \"given\" : [\"Beetje\"]\n }],\n \"qualification\" : [{\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v2-0360\",\n \"version\" : \"2.7\",\n \"code\" : \"MD\",\n \"display\" : \"Doctor of Medicine\"\n }]\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"resource\" : {\n \"resourceType\" : \"Organization\",\n \"id\" : \"bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Organization
Resource Organization "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
identifier : id:\\u00a0564738757
active : true
name : Anorg Aniza Tion BV / The best custodian ever
telecom : +31-51-34343400
address : Houttuinen 27 Dordrecht 3311 CE NL (WORK)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.3\",\n \"value\" : \"564738757\"\n }],\n \"active\" : true,\n \"name\" : \"Anorg Aniza Tion BV / The best custodian ever\",\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31-51-34343400\",\n \"use\" : \"work\"\n }],\n \"address\" : [{\n \"use\" : \"work\",\n \"line\" : [\"Houttuinen 27\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3311 CE\",\n \"country\" : \"NL\"\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"resource\" : {\n \"resourceType\" : \"Condition\",\n \"id\" : \"ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"cacceb57-395f-48e1-9c88-e9c9704dc2d2\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\" : \"confirmed\"\n }]\n },\n \"category\" : [{\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"75326-9\",\n \"display\" : \"Problem\"\n }]\n }],\n \"severity\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"LA6751-7\",\n \"display\" : \"Moderate\"\n }]\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"198436008\",\n \"display\" : \"Menopausal flushing (finding)\",\n \"_display\" : {\n \"extension\" : [{\n \"extension\" : [{\n \"url\" : \"lang\",\n \"valueCode\" : \"nl-NL\"\n },\n {\n \"url\" : \"content\",\n \"valueString\" : \"opvliegers\"\n }],\n \"url\" : \"http://hl7.org/fhir/StructureDefinition/translation\"\n }]\n }\n },\n {\n \"system\" : \"http://hl7.org/fhir/sid/icd-10\",\n \"code\" : \"N95.1\",\n \"display\" : \"Menopausal and female climacteric states\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2015\",\n \"recordedDate\" : \"2016-10\"\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6e883e5e-7648-485a-86de-3640a61601fe\",\n \"resource\" : {\n \"resourceType\" : \"MedicationStatement\",\n \"id\" : \"6e883e5e-7648-485a-86de-3640a61601fe\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8faf0319-89d3-427c-b9d1-e8c8fd390dca\"\n }],\n \"status\" : \"active\",\n \"medicationReference\" : {\n \"reference\" : \"Medication/6369a973-afc7-4617-8877-3e9811e05a5b\"\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"effectivePeriod\" : {\n \"start\" : \"2015-03\"\n },\n \"dosage\" : [{\n \"timing\" : {\n \"repeat\" : {\n \"count\" : 1,\n \"periodUnit\" : \"d\"\n }\n },\n \"route\" : {\n \"coding\" : [{\n \"system\" : \"http://standardterms.edqm.eu\",\n \"code\" : \"20053000\",\n \"display\" : \"Oral use\"\n }]\n },\n \"doseAndRate\" : [{\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\" : \"ordered\",\n \"display\" : \"Ordered\"\n }]\n },\n \"doseQuantity\" : {\n \"value\" : 1,\n \"unit\" : \"tablet\",\n \"system\" : \"http://unitsofmeasure.org\",\n \"code\" : \"1\"\n }\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"resource\" : {\n \"resourceType\" : \"Medication\",\n \"id\" : \"6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Medication
Resource Medication "6369a973-afc7-4617-8877-3e9811e05a5b"
code : Product containing anastrozole (medicinal product) (SNOMED CT #108774000; unknown#99872 "ANASTROZOL 1MG TABLET"; unknown#2076667 "ANASTROZOL CF TABLET FILMOMHULD 1MG"; WHO ATC #L02BG03 "anastrozole")
\"\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"108774000\",\n \"display\" : \"Product containing anastrozole (medicinal product)\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.1\",\n \"code\" : \"99872\",\n \"display\" : \"ANASTROZOL 1MG TABLET\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.7\",\n \"code\" : \"2076667\",\n \"display\" : \"ANASTROZOL CF TABLET FILMOMHULD 1MG\"\n },\n {\n \"system\" : \"http://www.whocc.no/atc\",\n \"code\" : \"L02BG03\",\n \"display\" : \"anastrozole\"\n }]\n }\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"resource\" : {\n \"resourceType\" : \"AllergyIntolerance\",\n \"id\" : \"fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8d9566a4-d26d-46be-a3e4-c9f3a0e5cd83\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\" : \"confirmed\"\n }]\n },\n \"type\" : \"allergy\",\n \"category\" : [\"medication\"],\n \"criticality\" : \"high\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"373270004\",\n \"display\" : \"Substance with penicillin structure and antibacterial mechanism of action (substance)\"\n }]\n },\n \"patient\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2010\"\n }\n }]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/ips-nz.json b/http-client-tests/resources/explicit-preset-requests/ips-nz.json
new file mode 100644
index 00000000..12c4420e
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/ips-nz.json
@@ -0,0 +1,29 @@
+{
+ "cliContext": {
+ "extensions": [
+ "any"
+ ],
+ "sv": "4.0.1",
+ "igs": [
+ "tewhatuora.fhir.nzps#current"
+ ],
+ "profiles": [
+ "https://standards.digital.health.nz/fhir/StructureDefinition/nzps-bundle"
+ ],
+ "checkIPSCodes": true,
+ "bundleValidationRules": [
+ {
+ "rule": "Composition:0",
+ "profile": "https://standards.digital.health.nz/fhir/StructureDefinition/nzps-composition"
+ }
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Bundle\",\n \"id\": \"NZ-IPS-20231121031219\",\n \"language\": \"en-NZ\",\n \"identifier\": {\n \"system\": \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n },\n \"type\": \"document\",\n \"timestamp\": \"2023-11-21T03:12:19.1242772+00:00\",\n \"entry\": [\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Composition/9b9e4f64-c976-47e9-a8a5-4b9b0484a709\",\n \"resource\": {\n \"resourceType\": \"Composition\",\n \"id\": \"9b9e4f64-c976-47e9-a8a5-4b9b0484a709\",\n \"meta\": {\n \"versionId\": \"1\"\n },\n \"language\": \"en-NZ\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"International Patient Summary for Iosefa Test-Fuimaono
\"\n },\n \"identifier\": {\n \"system\": \"urn:oid:2.16.840.1.113883.2.18.7.2\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n },\n \"status\": \"final\",\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"60591-5\",\n \"display\": \"Patient summary Document\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"date\": \"2023-11-21\",\n \"author\": [\n {\n \"reference\": \"Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b\"\n }\n ],\n \"title\": \"International Patient Summary\",\n \"confidentiality\": \"N\",\n \"attester\": [\n {\n \"mode\": \"professional\",\n \"time\": \"2023-11-21\",\n \"party\": {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n }\n ],\n \"custodian\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"relatesTo\": [\n {\n \"code\": \"transforms\",\n \"targetIdentifier\": {\n \"system\": \"urn:oid:2.16.840.1.113883.2.18.7.2\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n }\n }\n ],\n \"event\": [\n {\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\": \"PCPR\"\n }\n ]\n }\n ],\n \"period\": {\n \"end\": \"2023-11-21\"\n }\n }\n ],\n \"section\": [\n {\n \"title\": \"Allergies and Intolerances\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"48765-2\",\n \"display\": \"Allergies and adverse reactions Document\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Code \\r\\n Type \\r\\n Recorded On \\r\\n Asserted By \\r\\n Clinical Status \\r\\n Verification Status \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Flucloxacillin-containing product \\r\\n Allergy \\r\\n \\r\\n Patient/ZKT9319 \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Diazepam-containing product \\r\\n Allergy \\r\\n \\r\\n Patient/ZKT9319 \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\"\n },\n {\n \"reference\": \"AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\"\n }\n ]\n },\n {\n \"title\": \"Problem List\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"11450-4\",\n \"display\": \"Problem list - Reported\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Condition \\r\\n Category \\r\\n Recorded On \\r\\n Clinical Status \\r\\n Verification Status \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Postconcussion syndrome \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Diabetes type 2 on insulin \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Gout \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Benign essential hypertension \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Anxiety disorder due to a general medical condition \\r\\n Problem List Item \\r\\n \\r\\n inactive \\r\\n confirmed \\r\\n \\r\\n \\r\\n Fracture of neck of femur \\r\\n Problem List Item \\r\\n \\r\\n inactive \\r\\n confirmed \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc\"\n },\n {\n \"reference\": \"Condition/1923f2ca-043b-432c-9eed-404c81474e60\"\n },\n {\n \"reference\": \"Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\"\n },\n {\n \"reference\": \"Condition/08992112-ac66-4c66-a803-89f80bb6d2aa\"\n },\n {\n \"reference\": \"Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\"\n },\n {\n \"reference\": \"Condition/dd40111a-683f-4d72-bccc-3c6848bc0813\"\n }\n ]\n },\n {\n \"title\": \"Medication Summary\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"10160-0\",\n \"display\": \"History of Medication use Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Drug \\r\\n Status \\r\\n Effective \\r\\n Instructions \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n insulin glargine 100 international units/mL injection, 10 mL vial \\r\\n Active \\r\\n 2023-02-21 \\r\\n Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin. \\r\\n \\r\\n \\r\\n dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device \\r\\n Active \\r\\n 2023-02-21 \\r\\n Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals. \\r\\n \\r\\n \\r\\n metformin hydrochloride 1000 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet, two times a day, with meals. \\r\\n \\r\\n \\r\\n amlodipine 5 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet at any time of day, but try to make sure it's around the same time every day. \\r\\n \\r\\n \\r\\n losartan potassium 50 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily \\r\\n \\r\\n \\r\\n aspirin 75 mg tablet: enteric-coated \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily \\r\\n \\r\\n \\r\\n allopurinol 300 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily, after meals \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645\"\n },\n {\n \"reference\": \"MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548\"\n },\n {\n \"reference\": \"MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8\"\n },\n {\n \"reference\": \"MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a\"\n },\n {\n \"reference\": \"MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367\"\n },\n {\n \"reference\": \"MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\"\n },\n {\n \"reference\": \"MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\"\n }\n ]\n },\n {\n \"title\": \"Immunizations\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"11369-6\",\n \"display\": \"History of Immunization Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Vaccine \\r\\n Status \\r\\n Occurance \\r\\n Route \\r\\n Dose # \\r\\n Series \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \\r\\n Completed \\r\\n 2022-02-01 \\r\\n Injection, intramuscular \\r\\n 2 \\r\\n 12 (At risk, no previous history) \\r\\n \\r\\n \\r\\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \\r\\n Completed \\r\\n 2021-08-05 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 12 (At risk, no previous history) \\r\\n \\r\\n \\r\\n Influenza, seasonal, injectable \\r\\n Completed \\r\\n 2019-05-20 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 1 (Over 65 years (Influenza)) \\r\\n \\r\\n \\r\\n diphtheria, tetanus toxoids and acellular pertussis vaccine \\r\\n Completed \\r\\n 2019-04-24 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 6 (Booster) \\r\\n \\r\\n \\r\\n tetanus and diphtheria toxoids, not adsorbed, for adult use \\r\\n Completed \\r\\n 2018-04-05 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 6 (Booster) \\r\\n \\r\\n \\r\\n pneumococcal conjugate vaccine, 13 valent \\r\\n Completed \\r\\n 2015-09-25 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 21 (PCV catch up) \\r\\n \\r\\n \\r\\n Influenza, seasonal, injectable \\r\\n Completed \\r\\n 2015-05-01 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 1 (Over 65 years (Influenza)) \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a\"\n },\n {\n \"reference\": \"Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c\"\n },\n {\n \"reference\": \"Immunization/33c971d3-0992-4e93-b904-6325ed4602e3\"\n },\n {\n \"reference\": \"Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279\"\n },\n {\n \"reference\": \"Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b\"\n },\n {\n \"reference\": \"Immunization/acd3a963-0985-4679-a126-8eb9ed981d36\"\n },\n {\n \"reference\": \"Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37\"\n }\n ]\n },\n {\n \"title\": \"Procedures\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"47519-4\",\n \"display\": \"History of Procedures Document\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Date(s) Procedure Location Performer Comments 01/09/2020 to 01/09/2020 Operative procedure on hip Waikato Hospital 31/03/2018 to 31/03/2018 Hand closure Samoa
\"\n },\n \"entry\": [\n {\n \"reference\": \"Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc\"\n },\n {\n \"reference\": \"Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147\"\n }\n ]\n },\n {\n \"title\": \"Results\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"30954-2\",\n \"display\": \"Relevant diagnostic tests/laboratory data Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Result Group: Lipids Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments Total cholesterol:HDL ratio 5.1 mmol/L <4 mmol/L (high risk) H HDL Cholesterol 1.5 mmol/L >1 mmol/L N LDL Cholesterol 3.4 mmol/L <1.8 mmol/L H
Result Group: HbA1C Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments HbA1c 60 mmol/mol 50 – 55 mmol/mol (diabetes) H
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\"\n },\n {\n \"reference\": \"Observation/fe53810f-a341-4093-a959-4048ad62f85b\"\n },\n {\n \"reference\": \"Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\"\n },\n {\n \"reference\": \"DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6\"\n },\n {\n \"reference\": \"Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\"\n },\n {\n \"reference\": \"DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f\"\n }\n ]\n },\n {\n \"title\": \"Vital Signs\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8716-3\",\n \"display\": \"Vital signs\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 29 Sep 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.5 C Heart rate 84 beats/minute Respiratory rate 18 breaths/minute Systolic blood pressure 136 mm[Hg] Diastolic blood pressure 88 mm[Hg] Body height 1.84 cm Body weight 104 kg
Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.2 C Heart rate 86 beats/minute Respiratory rate 14 breaths/minute Systolic blood pressure 130 mm[Hg] Diastolic blood pressure 82 mm[Hg] Body weight 103 kg
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/6f64547c-89a3-459d-a993-b89e995c1f14\"\n },\n {\n \"reference\": \"Observation/da3bbb11-e485-4396-a25c-611354789c65\"\n },\n {\n \"reference\": \"Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b\"\n },\n {\n \"reference\": \"Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb\"\n },\n {\n \"reference\": \"Observation/cf628f81-f66b-42a7-a33a-c5d38a604861\"\n },\n {\n \"reference\": \"Observation/dd309bef-3b36-4422-a202-39d040113a5d\"\n },\n {\n \"reference\": \"Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\"\n },\n {\n \"reference\": \"Observation/eda3092b-5228-420b-b0ce-f5eb77e73942\"\n },\n {\n \"reference\": \"Observation/2d420435-f380-46e1-ad93-b9fef57f4b71\"\n },\n {\n \"reference\": \"Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356\"\n },\n {\n \"reference\": \"Observation/af9ae822-ae5d-4bec-88bf-4dd250350783\"\n }\n ]\n },\n {\n \"title\": \"Social History\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29762-2\",\n \"display\": \"Social history Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Type Item Date(s) Comment other Worked as a forestry worker. Worked as a forestry worker. Was always physically active until 2020 fall.Has had subsequent falls. Now depends on a walker or scooter. smoking Ex-smoker 30/06/2005 30 - pack - year smoking history, quit smoking ~2005.
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/33624327-7e1b-4912-bca1-2d0c8d36b952\"\n }\n ]\n },\n {\n \"title\": \"Functional Status\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"47420-5\",\n \"display\": \"Functional status assessment note\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Functional Condition Effective Dates Condition Status Often confused, struggles to communicate in English Active Depends on a walking frame or electric scooter to get around. Active Doesn’t leave the house much. Active Relies on caregiver Cindy for assistance with many activities of daily living. Active Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised. Active
\"\n },\n \"entry\": [\n {\n \"reference\": \"Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb\"\n },\n {\n \"reference\": \"Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003\"\n },\n {\n \"reference\": \"Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f\"\n },\n {\n \"reference\": \"Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4\"\n },\n {\n \"reference\": \"Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d\"\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Patient/ZKT9319\",\n \"resource\": {\n \"resourceType\": \"Patient\",\n \"id\": \"ZKT9319\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Iosefa Test-Fuimaono
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/nhi-id\",\n \"value\": \"ZKT9319\"\n }\n ],\n \"name\": [\n {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Iosefa\"\n ]\n }\n ],\n \"gender\": \"male\",\n \"birthDate\": \"1950-07-04\",\n \"address\": [\n {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n ],\n \"maritalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-MaritalStatus\",\n \"code\": \"W\",\n \"display\": \"Widowed\"\n }\n ]\n },\n \"contact\": [\n {\n \"relationship\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0131\",\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\"\n }\n ]\n }\n ],\n \"name\": {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Cindy\",\n \"Test-Fuimaono\"\n ]\n },\n \"telecom\": [\n {\n \"system\": \"phone\",\n \"value\": \"021 111111\",\n \"use\": \"mobile\"\n }\n ],\n \"address\": {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n },\n {\n \"relationship\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0131\",\n \"code\": \"C\",\n \"display\": \"Emergency Contact\"\n }\n ]\n }\n ],\n \"name\": {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Cindy\",\n \"Test-Fuimaono\"\n ]\n },\n \"telecom\": [\n {\n \"system\": \"phone\",\n \"value\": \"021 111111\",\n \"use\": \"mobile\"\n }\n ],\n \"address\": {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n }\n ],\n \"communication\": [\n {\n \"language\": {\n \"text\": \"en-NZ\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b\",\n \"resource\": {\n \"resourceType\": \"Organization\",\n \"id\": \"9c9542df-e45f-4131-9d44-8f5974e56d5b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Fairfield Medical Centre
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F0U044-C\"\n }\n ],\n \"name\": \"Fairfield Medical Centre\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\",\n \"resource\": {\n \"resourceType\": \"PractitionerRole\",\n \"id\": \"c9288aea-5e73-4182-8231-aacbe50d3244\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Role: Doctor
\"\n },\n \"practitioner\": {\n \"reference\": \"Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23\"\n },\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"158965000\",\n \"display\": \"Doctor\"\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23\",\n \"resource\": {\n \"resourceType\": \"Practitioner\",\n \"id\": \"4d4b76bf-55b5-40b8-a130-99ea24a84c23\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Dr James Test-Smith
\"\n },\n \"name\": [\n {\n \"use\": \"usual\",\n \"family\": \"Test-Smith\",\n \"given\": [\n \"Dr\",\n \"James\",\n \"Test-Smith\"\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\",\n \"resource\": {\n \"resourceType\": \"Organization\",\n \"id\": \"644f2fb9-c264-4c32-898b-4048dddd6d1b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Fairfield Medical Centre
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F0U044-C\"\n }\n ],\n \"name\": \"Fairfield Medical Centre\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Location/F05076-A\",\n \"resource\": {\n \"resourceType\": \"Location\",\n \"id\": \"F05076-A\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
Waikato Hospital \\r\\n
\\r\\n \\r\\n Identifier \\r\\n F05076-A \\r\\n \\r\\n \\r\\n Identifier System \\r\\n https://standards.digital.health.nz/ns/hpi-facility-id \\r\\n \\r\\n \\r\\n Status \\r\\n Active \\r\\n \\r\\n \\r\\n Mode \\r\\n Instance \\r\\n \\r\\n \\r\\n Type \\r\\n Location \\r\\n \\r\\n \\r\\n Address \\r\\n 183 Pembroke Street, Waikato Hospital, Hamilton 3204 \\r\\n \\r\\n
\\r\\n
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F05076-A\"\n }\n ],\n \"status\": \"active\",\n \"name\": \"Waikato Hospital\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\",\n \"resource\": {\n \"resourceType\": \"AllergyIntolerance\",\n \"id\": \"1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Flucloxacillin-containing product (Penicillin adverse reaction)
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"type\": \"allergy\",\n \"category\": [\n \"medication\"\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"96067005\",\n \"display\": \"Flucloxacillin-containing product\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"asserter\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"reaction\": [\n {\n \"manifestation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"292954005\",\n \"display\": \"Penicillin adverse reaction\"\n }\n ]\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\",\n \"resource\": {\n \"resourceType\": \"AllergyIntolerance\",\n \"id\": \"e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Diazepam-containing product (Diazepam adverse reaction)
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"type\": \"allergy\",\n \"category\": [\n \"medication\"\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"48546005\",\n \"display\": \"Diazepam-containing product\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"asserter\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"reaction\": [\n {\n \"manifestation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"292360004\",\n \"display\": \"Diazepam adverse reaction\"\n }\n ]\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"2eafb947-e816-4d9f-978b-c91d0dbe4acc\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Postconcussion
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"40425004\",\n \"display\": \"Postconcussion syndrome\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/1923f2ca-043b-432c-9eed-404c81474e60\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"1923f2ca-043b-432c-9eed-404c81474e60\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Diabetes type 2 on insulin
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"237599002\",\n \"display\": \"Diabetes type 2 on insulin\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Gout
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"90560007\",\n \"display\": \"Gout\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/08992112-ac66-4c66-a803-89f80bb6d2aa\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"08992112-ac66-4c66-a803-89f80bb6d2aa\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Benign essential hypertension
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"1201005\",\n \"display\": \"Benign essential hypertension\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Anxiety disorder due to a general medical condition
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"inactive\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"52910006\",\n \"display\": \"Anxiety disorder due to a general medical condition\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/dd40111a-683f-4d72-bccc-3c6848bc0813\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"dd40111a-683f-4d72-bccc-3c6848bc0813\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Fracture of neck of femur
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"inactive\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"5913000\",\n \"display\": \"Fracture of neck of femur\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"4464bdfe-dc87-4179-a10d-2884c975a6eb\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Often confused, struggles to communicate in English
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Often confused, struggles to communicate in English\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"f0982a2a-8eb2-4b1a-9e73-6a82d2102003\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Depends on a walking frame or electric scooter to get around.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Depends on a walking frame or electric scooter to get around.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"94c0216a-183b-45e9-9e98-f244ac0b4d4f\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Doesn’t leave the house much.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Doesn’t leave the house much.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"14863bd8-1d6d-4c85-9bcc-1b33699908c4\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Relies on caregiver Cindy for assistance with many activities of daily living.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Relies on caregiver Cindy for assistance with many activities of daily living.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"b008f275-c141-4cd5-b1bb-46c399eaf42d\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"8ecbe74a-a3fa-4edf-8133-44ca8903a645\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10368421000116106 (insulin glargine 100 international units/mL injection, 10 mL vial)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"126212009\",\n \"display\": \"Product containing insulin glargine (medicinal product)\"\n }\n ],\n \"text\": \"insulin glargine 100 international units/mL injection, 10 mL vial\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"34206005\",\n \"display\": \"subcutaneous route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"unit\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"767525000\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"06c4eda2-df30-4231-af09-0135e5f84548\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"47230201000116108 (dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"714081009\",\n \"display\": \"Product containing dulaglutide (medicinal product)\"\n }\n ],\n \"text\": \"dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals.\",\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"34206005\",\n \"display\": \"subcutaneous route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"4b5f40b9-f59c-4090-81b1-4609ac6b7af8\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"44221701000116102 (metformin hydrochloride 1000 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"109081006\",\n \"display\": \"Product containing metformin (medicinal product)\"\n }\n ],\n \"text\": \"metformin hydrochloride 1000 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet, two times a day, with meals.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 2,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"e19dc087-0055-4feb-a847-72e77cf55a0a\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10109621000116108 (amlodipine 5 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"108537001\",\n \"display\": \"Product containing amlodipine (medicinal product)\"\n }\n ],\n \"text\": \"amlodipine 5 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet at any time of day, but try to make sure it's around the same time every day.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"f7a26186-dd57-420f-95be-c0deeee49367\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10195211000116102 (losartan potassium 50 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"96309000\",\n \"display\": \"Product containing losartan (medicinal product)\"\n }\n ],\n \"text\": \"losartan potassium 50 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10077081000116106 (aspirin 75 mg tablet: enteric-coated)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"7947003\",\n \"display\": \"Product containing aspirin (medicinal product)\"\n }\n ],\n \"text\": \"aspirin 75 mg tablet: enteric-coated\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10030521000116104 (allopurinol 300 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"25246002\",\n \"display\": \"Product containing allopurinol (medicinal product)\"\n }\n ],\n \"text\": \"allopurinol 300 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily, after meals\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"998e59d9-a7f4-4503-b08e-85ce9b206b0a\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"208 (Pfizer/BioNtech)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"208\",\n \"display\": \"SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2022-02-01\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"12 (At risk, no previous history)\",\n \"doseNumberPositiveInt\": 2\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"fc6b3454-527b-4deb-a266-7f52c63d0d3c\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"208 (Pfizer/BioNtech)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"208\",\n \"display\": \"SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2021-08-05\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"12 (At risk, no previous history)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/33c971d3-0992-4e93-b904-6325ed4602e3\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"33c971d3-0992-4e93-b904-6325ed4602e3\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"99006 (Influenza)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"141\",\n \"display\": \"Influenza, seasonal, injectable\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2019-05-20\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"1 (Over 65 years (Influenza))\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"12c253d4-20e8-4dd4-935c-fd1ec8a49279\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"20 (DTaP)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"20\",\n \"display\": \"diphtheria, tetanus toxoids and acellular pertussis vaccine\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2019-04-24\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"6 (Booster)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"70308bba-2bc4-4505-ba9b-520f9d3dc30b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Tetanus booster (given as DT)]
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"138\",\n \"display\": \"tetanus and diphtheria toxoids, not adsorbed, for adult use\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2018-04-05\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"6 (Booster)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/acd3a963-0985-4679-a126-8eb9ed981d36\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"acd3a963-0985-4679-a126-8eb9ed981d36\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"133 (PCV13)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"133\",\n \"display\": \"pneumococcal conjugate vaccine, 13 valent\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2015-09-25\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"21 (PCV catch up)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"bae44614-43cc-4df4-94b3-c26d34b0ea37\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"99006 (Influenza)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"141\",\n \"display\": \"Influenza, seasonal, injectable\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2015-05-01\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"1 (Over 65 years (Influenza))\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc\",\n \"resource\": {\n \"resourceType\": \"Procedure\",\n \"id\": \"8414198c-a43b-4ef1-b06f-3b39fb4b39cc\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Operative procedure on hip
\"\n },\n \"status\": \"unknown\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"265132005\",\n \"display\": \"Primary open reduction and internal fixation of proximal femoral fracture with screw/nail and plate device\"\n }\n ],\n \"text\": \"Operative procedure on hip\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"performedDateTime\": \"2020-09-01\",\n \"location\": {\n \"reference\": \"Location/F05076-A\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147\",\n \"resource\": {\n \"resourceType\": \"Procedure\",\n \"id\": \"1096ab80-e982-41b3-85c2-8e1d2466d147\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Hand closure
\"\n },\n \"status\": \"unknown\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"287903004\",\n \"display\": \"Suturing of hand\"\n }\n ],\n \"text\": \"Hand closure\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"performedDateTime\": \"2018-03-31\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6\",\n \"resource\": {\n \"resourceType\": \"DiagnosticReport\",\n \"id\": \"9e0d995f-a78d-45f4-b3aa-23037972a3e6\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Lipids]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\",\n \"code\": \"LAB\",\n \"display\": \"Laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[Lipids]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"result\": [\n {\n \"reference\": \"Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\"\n },\n {\n \"reference\": \"Observation/fe53810f-a341-4093-a959-4048ad62f85b\"\n },\n {\n \"reference\": \"Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f\",\n \"resource\": {\n \"resourceType\": \"DiagnosticReport\",\n \"id\": \"2da4116e-7158-4d59-b6c4-873b37f7d65f\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HbA1C]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\",\n \"code\": \"LAB\",\n \"display\": \"Laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HbA1C]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"result\": [\n {\n \"reference\": \"Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"2f3ad263-1b4e-443b-95ca-66d2abb6e927\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Total cholesterol:HDL ratio]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[Total cholesterol:HDL ratio]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 5.1,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"<4 mmol/L (high risk)\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/fe53810f-a341-4093-a959-4048ad62f85b\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"fe53810f-a341-4093-a959-4048ad62f85b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HDL Cholesterol]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HDL Cholesterol]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 1.5,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"Normal\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \">1 mmol/L\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"6adb76b4-73f3-4552-87a6-09ac3dc1f558\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [LDL Cholesterol]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[LDL Cholesterol]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 3.4,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"<1.8 mmol/L\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"63ad8984-003c-4e44-bc56-31dd6abc0897\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HbA1c]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HbA1c]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmol/mol\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/mol\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"50 – 55 mmol/mol (diabetes)\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/6f64547c-89a3-459d-a993-b89e995c1f14\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"6f64547c-89a3-459d-a993-b89e995c1f14\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body temperature
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8310-5\",\n \"display\": \"Body temperature\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 37.5,\n \"unit\": \"Cel\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"Cel\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/da3bbb11-e485-4396-a25c-611354789c65\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"da3bbb11-e485-4396-a25c-611354789c65\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Heart rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8867-4\",\n \"display\": \"Heart rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 84,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"5dead0bd-80c7-42f7-9720-3aaf047eb89b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Respiratory rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"9279-1\",\n \"display\": \"Respiratory rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 18,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"126f25f0-d921-4d9a-85a2-5b847cfb89fb\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Blood pressure panel with all children optional
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 136,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 88,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/cf628f81-f66b-42a7-a33a-c5d38a604861\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"cf628f81-f66b-42a7-a33a-c5d38a604861\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body height
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8302-2\",\n \"display\": \"Body height\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 1.84,\n \"unit\": \"cm\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"cm\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/dd309bef-3b36-4422-a202-39d040113a5d\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"dd309bef-3b36-4422-a202-39d040113a5d\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body weight
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29463-7\",\n \"display\": \"Body weight\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 104,\n \"unit\": \"kg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"kg\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body temperature
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8310-5\",\n \"display\": \"Body temperature\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 37.2,\n \"unit\": \"Cel\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"Cel\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/eda3092b-5228-420b-b0ce-f5eb77e73942\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"eda3092b-5228-420b-b0ce-f5eb77e73942\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Heart rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8867-4\",\n \"display\": \"Heart rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 86,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/2d420435-f380-46e1-ad93-b9fef57f4b71\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"2d420435-f380-46e1-ad93-b9fef57f4b71\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Respiratory rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"9279-1\",\n \"display\": \"Respiratory rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 14,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"7a422837-80f5-4fa6-b3ac-8a0e44b99356\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Blood pressure panel with all children optional
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 130,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 82,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/af9ae822-ae5d-4bec-88bf-4dd250350783\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"af9ae822-ae5d-4bec-88bf-4dd250350783\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body weight
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29463-7\",\n \"display\": \"Body weight\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 103,\n \"unit\": \"kg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"kg\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/33624327-7e1b-4912-bca1-2d0c8d36b952\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"33624327-7e1b-4912-bca1-2d0c8d36b952\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Tobacco smoking status
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"social-history\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"72166-2\",\n \"display\": \"Tobacco smoking status\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2005-06-30\",\n \"performer\": [\n {\n \"reference\": \"Patient/ZKT9319\"\n }\n ],\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"LA15920-4\",\n \"display\": \"Former smoker\"\n }\n ]\n },\n \"note\": [\n {\n \"text\": \"30 - pack - year smoking history, quit smoking ~2005.\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\",\n \"resource\": {\n \"resourceType\": \"PractitionerRole\",\n \"id\": \"8363e64e-f639-4f55-bd3c-6302bf87a6d3\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Role: Clinical pathologist
\"\n },\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"81464008\",\n \"display\": \"Clinical pathologist\"\n }\n ]\n }\n ]\n }\n }\n ]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/ips.json b/http-client-tests/resources/explicit-preset-requests/ips.json
new file mode 100644
index 00000000..ec046d68
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/ips.json
@@ -0,0 +1,29 @@
+{
+ "cliContext": {
+ "extensions": [
+ "any"
+ ],
+ "sv": "4.0.1",
+ "igs": [
+ "hl7.fhir.uv.ips#1.1.0"
+ ],
+ "profiles": [
+ "http://hl7.org/fhir/uv/ips/StructureDefinition/Bundle-uv-ips"
+ ],
+ "checkIPSCodes": true,
+ "bundleValidationRules": [
+ {
+ "rule": "Composition:0",
+ "profile": "http://hl7.org/fhir/uv/ips/StructureDefinition/Composition-uv-ips"
+ }
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\" : \"Bundle\",\n \"id\" : \"bundle-minimal\",\n \"language\" : \"en-US\",\n \"identifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"28b95815-76ce-457b-b7ae-a972e527db40\"\n },\n \"type\" : \"document\",\n \"timestamp\" : \"2020-12-11T14:30:00+01:00\",\n \"entry\" : [{\n \"fullUrl\" : \"urn:uuid:6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"resource\" : {\n \"resourceType\" : \"Composition\",\n \"id\" : \"6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative
Resource \\\"6e1fb74a-742b-4c7b-8487-171dacb88766\\\"
status : final
type : Patient summary Document (LOINC #60591-5)
date : 2020-12-11 02:30:00+0100
author : Beetje van Hulp, MD
title : Patient Summary as of December 11, 2020 14:30
confidentiality : N
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Beetje van Hulp, MD
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Anorg Aniza Tion BV
custodian : Anorg Aniza Tion BV
RelatesTos - Code Target[x] * appends id: 20e12ce3-857f-49c0-b888-cb670597f191
Events - Code Period * care provision (ActClass #PCPR) ?? --> 2020-12-11 02:30:00+0100
\"\n },\n \"status\" : \"final\",\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"60591-5\",\n \"display\" : \"Patient summary Document\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"date\" : \"2020-12-11T14:30:00+01:00\",\n \"author\" : [{\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }],\n \"title\" : \"Patient Summary as of December 11, 2020 14:30\",\n \"confidentiality\" : \"N\",\n \"attester\" : [{\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }\n },\n {\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n }\n }],\n \"custodian\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n },\n \"relatesTo\" : [{\n \"code\" : \"appends\",\n \"targetIdentifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"20e12ce3-857f-49c0-b888-cb670597f191\"\n }\n }],\n \"event\" : [{\n \"code\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\" : \"PCPR\"\n }]\n }],\n \"period\" : {\n \"end\" : \"2020-12-11T14:30:00+01:00\"\n }\n }],\n \"section\" : [{\n \"title\" : \"Active Problems\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"11450-4\",\n \"display\" : \"Problem list Reported\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"Condition/ad84b7a2-b4dd-474e-bef3-0779e6cb595f\"\n }]\n },\n {\n \"title\" : \"Medication\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"10160-0\",\n \"display\" : \"History of Medication use Narrative\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Medication Name : Oral anastrozole 1mg tablet
Code :
Status : Active, started March 2015
Instructions: Take 1 time per day
\"\n },\n \"entry\" : [{\n \"reference\" : \"MedicationStatement/6e883e5e-7648-485a-86de-3640a61601fe\"\n }]\n },\n {\n \"title\" : \"Allergies and Intolerances\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"48765-2\",\n \"display\" : \"Allergies and adverse reactions Document\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"AllergyIntolerance/fe2769fd-22c9-4307-9122-ee0466e5aebb\"\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"resource\" : {\n \"resourceType\" : \"Patient\",\n \"id\" : \"7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Patient
Resource Patient "7685713c-e29e-4a75-8a90-45be7ba3be94"
identifier : id:\\u00a0574687583
active : true
name : Martha DeLarosa
telecom : +31788700800
gender : female
birthDate : 1972-05-01
address : Laan Van Europa 1600 Dordrecht 3317 DB NL
Contacts - Relationship Name Telecom Address * mother (RoleCode #MTH) Martha Mum +33-555-20036 Promenade des Anglais 111 Lyon 69001 FR
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.6.3\",\n \"value\" : \"574687583\"\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"DeLarosa\",\n \"given\" : [\"Martha\"]\n }],\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31788700800\",\n \"use\" : \"home\"\n }],\n \"gender\" : \"female\",\n \"birthDate\" : \"1972-05-01\",\n \"address\" : [{\n \"line\" : [\"Laan Van Europa 1600\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3317 DB\",\n \"country\" : \"NL\"\n }],\n \"contact\" : [{\n \"relationship\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\" : \"MTH\"\n }]\n }],\n \"name\" : {\n \"family\" : \"Mum\",\n \"given\" : [\"Martha\"]\n },\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+33-555-20036\",\n \"use\" : \"home\"\n }],\n \"address\" : {\n \"line\" : [\"Promenade des Anglais 111\"],\n \"city\" : \"Lyon\",\n \"postalCode\" : \"69001\",\n \"country\" : \"FR\"\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"resource\" : {\n \"resourceType\" : \"Practitioner\",\n \"id\" : \"98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Practitioner
Resource Practitioner "98315ba9-ffea-41ef-b59b-a836c039858f"
identifier : id:\\u00a0129854633
active : true
name : Beetje van Hulp
Qualifications - Code * Doctor of Medicine (degreeLicenseCertificate[2.7]#MD)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.1\",\n \"value\" : \"129854633\",\n \"assigner\" : {\n \"display\" : \"CIBG\"\n }\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"van Hulp\",\n \"given\" : [\"Beetje\"]\n }],\n \"qualification\" : [{\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v2-0360\",\n \"version\" : \"2.7\",\n \"code\" : \"MD\",\n \"display\" : \"Doctor of Medicine\"\n }]\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"resource\" : {\n \"resourceType\" : \"Organization\",\n \"id\" : \"bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Organization
Resource Organization "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
identifier : id:\\u00a0564738757
active : true
name : Anorg Aniza Tion BV / The best custodian ever
telecom : +31-51-34343400
address : Houttuinen 27 Dordrecht 3311 CE NL (WORK)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.3\",\n \"value\" : \"564738757\"\n }],\n \"active\" : true,\n \"name\" : \"Anorg Aniza Tion BV / The best custodian ever\",\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31-51-34343400\",\n \"use\" : \"work\"\n }],\n \"address\" : [{\n \"use\" : \"work\",\n \"line\" : [\"Houttuinen 27\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3311 CE\",\n \"country\" : \"NL\"\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"resource\" : {\n \"resourceType\" : \"Condition\",\n \"id\" : \"ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"cacceb57-395f-48e1-9c88-e9c9704dc2d2\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\" : \"confirmed\"\n }]\n },\n \"category\" : [{\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"75326-9\",\n \"display\" : \"Problem\"\n }]\n }],\n \"severity\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"LA6751-7\",\n \"display\" : \"Moderate\"\n }]\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"198436008\",\n \"display\" : \"Menopausal flushing (finding)\",\n \"_display\" : {\n \"extension\" : [{\n \"extension\" : [{\n \"url\" : \"lang\",\n \"valueCode\" : \"nl-NL\"\n },\n {\n \"url\" : \"content\",\n \"valueString\" : \"opvliegers\"\n }],\n \"url\" : \"http://hl7.org/fhir/StructureDefinition/translation\"\n }]\n }\n },\n {\n \"system\" : \"http://hl7.org/fhir/sid/icd-10\",\n \"code\" : \"N95.1\",\n \"display\" : \"Menopausal and female climacteric states\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2015\",\n \"recordedDate\" : \"2016-10\"\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6e883e5e-7648-485a-86de-3640a61601fe\",\n \"resource\" : {\n \"resourceType\" : \"MedicationStatement\",\n \"id\" : \"6e883e5e-7648-485a-86de-3640a61601fe\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8faf0319-89d3-427c-b9d1-e8c8fd390dca\"\n }],\n \"status\" : \"active\",\n \"medicationReference\" : {\n \"reference\" : \"Medication/6369a973-afc7-4617-8877-3e9811e05a5b\"\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"effectivePeriod\" : {\n \"start\" : \"2015-03\"\n },\n \"dosage\" : [{\n \"timing\" : {\n \"repeat\" : {\n \"count\" : 1,\n \"periodUnit\" : \"d\"\n }\n },\n \"route\" : {\n \"coding\" : [{\n \"system\" : \"http://standardterms.edqm.eu\",\n \"code\" : \"20053000\",\n \"display\" : \"Oral use\"\n }]\n },\n \"doseAndRate\" : [{\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\" : \"ordered\",\n \"display\" : \"Ordered\"\n }]\n },\n \"doseQuantity\" : {\n \"value\" : 1,\n \"unit\" : \"tablet\",\n \"system\" : \"http://unitsofmeasure.org\",\n \"code\" : \"1\"\n }\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"resource\" : {\n \"resourceType\" : \"Medication\",\n \"id\" : \"6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Medication
Resource Medication "6369a973-afc7-4617-8877-3e9811e05a5b"
code : Product containing anastrozole (medicinal product) (SNOMED CT #108774000; unknown#99872 "ANASTROZOL 1MG TABLET"; unknown#2076667 "ANASTROZOL CF TABLET FILMOMHULD 1MG"; WHO ATC #L02BG03 "anastrozole")
\"\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"108774000\",\n \"display\" : \"Product containing anastrozole (medicinal product)\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.1\",\n \"code\" : \"99872\",\n \"display\" : \"ANASTROZOL 1MG TABLET\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.7\",\n \"code\" : \"2076667\",\n \"display\" : \"ANASTROZOL CF TABLET FILMOMHULD 1MG\"\n },\n {\n \"system\" : \"http://www.whocc.no/atc\",\n \"code\" : \"L02BG03\",\n \"display\" : \"anastrozole\"\n }]\n }\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"resource\" : {\n \"resourceType\" : \"AllergyIntolerance\",\n \"id\" : \"fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8d9566a4-d26d-46be-a3e4-c9f3a0e5cd83\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\" : \"confirmed\"\n }]\n },\n \"type\" : \"allergy\",\n \"category\" : [\"medication\"],\n \"criticality\" : \"high\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"373270004\",\n \"display\" : \"Substance with penicillin structure and antibacterial mechanism of action (substance)\"\n }]\n },\n \"patient\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2010\"\n }\n }]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/sql-on-fhir.json b/http-client-tests/resources/explicit-preset-requests/sql-on-fhir.json
new file mode 100644
index 00000000..b4a2db2b
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/sql-on-fhir.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "sv": "5.0.0",
+ "igs": [
+ "hl7.fhir.uv.sql-on-fhir#current"
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition\",\n \"select\": [\n {\n \"column\": [\n {\n \"path\": \"getResourceKey()\",\n \"name\": \"patient_id\"\n }\n ]\n },\n {\n \"column\": [\n {\n \"path\": \"line.join('\\n')\",\n \"name\": \"street\",\n \"description\": \"The full street address, including newlines if present.\"\n },\n {\n \"path\": \"use\",\n \"name\": \"use\"\n },\n {\n \"path\": \"city\",\n \"name\": \"city\"\n },\n {\n \"path\": \"postalCode\",\n \"name\": \"zip\"\n }\n ],\n \"forEach\": \"address\"\n }\n ],\n \"name\": \"patient_addresses\",\n \"status\": \"draft\",\n \"resource\": \"Patient\"\n }",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/explicit-preset-requests/us-ccda.json b/http-client-tests/resources/explicit-preset-requests/us-ccda.json
new file mode 100644
index 00000000..e5d0832f
--- /dev/null
+++ b/http-client-tests/resources/explicit-preset-requests/us-ccda.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "sv": "5.0.0",
+ "igs": [
+ "hl7.cda.us.ccda#3.0.0-ballot"
+ ],
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.xml",
+ "fileContent": "\n\n\n\n\t\n\t\n\t\n \n \n \n\t\n\t\n\t
\n\tGood Health Hospital Care Plan \n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tBetterhalf \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t2222 Home Street \n\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t97867 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tBoris \n\t\t\t\t\t\t\tBo \n\t\t\t\t\t\t\tBetterhalf \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t4444 Home Street \n\t\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\t\tOR \n\t\t\t\t\t\t\t97867 \n\t\t\t\t\t\t\tUS \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tThe DoctorsTogether Physician Group \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1007 Health Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEllen \n\t\t\t\t\tEnter \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tHarold \n\t\t\t\t\tHippocrates \n\t\t\t\t\tD.O. \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health HIE \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1009 Healthcare Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t100 Better Health Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tCaresalot \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tBetter Health Hospital \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t100 Better Health Rd. \n\t\t\t\t\tAnn Arbor \n\t\t\t\t\tMI \n\t\t\t\t\t97857 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IE51cnNlIE5pZ2h0aW5nYWxl \n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t\t\n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IEV2ZSBFdmVyeXdvbWFu \n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t \n\t\t
\n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n \n\t\t \n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n \n\t\t
\n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t1004 Healthcare Drive \n\t\t\t\t\t\tPortland \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t99123 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tPatricia \n\t\t\t\t\t\t\tPatty \n\t\t\t\t\t\t\tPrimary \n\t\t\t\t\t\t\tM.D. \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t
\n\t \n\t\n\t\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\tPROBLEMS \n\t\t\t\tNo Information \n\t\t\t \n\t\t \n \n\t \n ",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/cda.json b/http-client-tests/resources/preset-requests/cda.json
new file mode 100644
index 00000000..e6c91446
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/cda.json
@@ -0,0 +1,13 @@
+{
+ "cliContext": {
+ "baseEngine": "CDA",
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.xml",
+ "fileContent": "\n\n\n\n\t\n\t\n\t\n \n \n \n\t\n\t\n\t
\n\tGood Health Hospital Care Plan \n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tBetterhalf \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t2222 Home Street \n\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t97867 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tBoris \n\t\t\t\t\t\t\tBo \n\t\t\t\t\t\t\tBetterhalf \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t4444 Home Street \n\t\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\t\tOR \n\t\t\t\t\t\t\t97867 \n\t\t\t\t\t\t\tUS \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tThe DoctorsTogether Physician Group \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1007 Health Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEllen \n\t\t\t\t\tEnter \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tHarold \n\t\t\t\t\tHippocrates \n\t\t\t\t\tD.O. \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health HIE \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1009 Healthcare Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t100 Better Health Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tCaresalot \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tBetter Health Hospital \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t100 Better Health Rd. \n\t\t\t\t\tAnn Arbor \n\t\t\t\t\tMI \n\t\t\t\t\t97857 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IE51cnNlIE5pZ2h0aW5nYWxl \n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t\t\n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IEV2ZSBFdmVyeXdvbWFu \n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t \n\t\t
\n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n \n\t\t \n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n \n\t\t
\n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t1004 Healthcare Drive \n\t\t\t\t\t\tPortland \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t99123 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tPatricia \n\t\t\t\t\t\t\tPatty \n\t\t\t\t\t\t\tPrimary \n\t\t\t\t\t\t\tM.D. \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t
\n\t \n\t\n\t\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\tPROBLEMS \n\t\t\t\tNo Information \n\t\t\t \n\t\t \n \n\t \n ",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/default.json b/http-client-tests/resources/preset-requests/default.json
new file mode 100644
index 00000000..1be4debb
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/default.json
@@ -0,0 +1,13 @@
+{
+"cliContext": {
+ "baseEngine": "DEFAULT",
+ "locale": "en"
+},
+"filesToValidate": [
+{
+"fileName": "manually_entered_file.json",
+"fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+"fileType": null
+}
+]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/ips-au.json b/http-client-tests/resources/preset-requests/ips-au.json
new file mode 100644
index 00000000..7ff09de0
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/ips-au.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "baseEngine": "IPS_AU",
+ "locale": "en",
+ "profiles": [
+ "http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips"
+ ]
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\" : \"Bundle\",\n \"id\" : \"bundle-minimal\",\n \"language\" : \"en-US\",\n \"identifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"28b95815-76ce-457b-b7ae-a972e527db40\"\n },\n \"type\" : \"document\",\n \"timestamp\" : \"2020-12-11T14:30:00+01:00\",\n \"entry\" : [{\n \"fullUrl\" : \"urn:uuid:6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"resource\" : {\n \"resourceType\" : \"Composition\",\n \"id\" : \"6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative
Resource \\\"6e1fb74a-742b-4c7b-8487-171dacb88766\\\"
status : final
type : Patient summary Document (LOINC #60591-5)
date : 2020-12-11 02:30:00+0100
author : Beetje van Hulp, MD
title : Patient Summary as of December 11, 2020 14:30
confidentiality : N
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Beetje van Hulp, MD
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Anorg Aniza Tion BV
custodian : Anorg Aniza Tion BV
RelatesTos - Code Target[x] * appends id: 20e12ce3-857f-49c0-b888-cb670597f191
Events - Code Period * care provision (ActClass #PCPR) ?? --> 2020-12-11 02:30:00+0100
\"\n },\n \"status\" : \"final\",\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"60591-5\",\n \"display\" : \"Patient summary Document\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"date\" : \"2020-12-11T14:30:00+01:00\",\n \"author\" : [{\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }],\n \"title\" : \"Patient Summary as of December 11, 2020 14:30\",\n \"confidentiality\" : \"N\",\n \"attester\" : [{\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }\n },\n {\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n }\n }],\n \"custodian\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n },\n \"relatesTo\" : [{\n \"code\" : \"appends\",\n \"targetIdentifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"20e12ce3-857f-49c0-b888-cb670597f191\"\n }\n }],\n \"event\" : [{\n \"code\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\" : \"PCPR\"\n }]\n }],\n \"period\" : {\n \"end\" : \"2020-12-11T14:30:00+01:00\"\n }\n }],\n \"section\" : [{\n \"title\" : \"Active Problems\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"11450-4\",\n \"display\" : \"Problem list Reported\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"Condition/ad84b7a2-b4dd-474e-bef3-0779e6cb595f\"\n }]\n },\n {\n \"title\" : \"Medication\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"10160-0\",\n \"display\" : \"History of Medication use Narrative\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Medication Name : Oral anastrozole 1mg tablet
Code :
Status : Active, started March 2015
Instructions: Take 1 time per day
\"\n },\n \"entry\" : [{\n \"reference\" : \"MedicationStatement/6e883e5e-7648-485a-86de-3640a61601fe\"\n }]\n },\n {\n \"title\" : \"Allergies and Intolerances\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"48765-2\",\n \"display\" : \"Allergies and adverse reactions Document\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"AllergyIntolerance/fe2769fd-22c9-4307-9122-ee0466e5aebb\"\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"resource\" : {\n \"resourceType\" : \"Patient\",\n \"id\" : \"7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Patient
Resource Patient "7685713c-e29e-4a75-8a90-45be7ba3be94"
identifier : id:\\u00a0574687583
active : true
name : Martha DeLarosa
telecom : +31788700800
gender : female
birthDate : 1972-05-01
address : Laan Van Europa 1600 Dordrecht 3317 DB NL
Contacts - Relationship Name Telecom Address * mother (RoleCode #MTH) Martha Mum +33-555-20036 Promenade des Anglais 111 Lyon 69001 FR
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.6.3\",\n \"value\" : \"574687583\"\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"DeLarosa\",\n \"given\" : [\"Martha\"]\n }],\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31788700800\",\n \"use\" : \"home\"\n }],\n \"gender\" : \"female\",\n \"birthDate\" : \"1972-05-01\",\n \"address\" : [{\n \"line\" : [\"Laan Van Europa 1600\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3317 DB\",\n \"country\" : \"NL\"\n }],\n \"contact\" : [{\n \"relationship\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\" : \"MTH\"\n }]\n }],\n \"name\" : {\n \"family\" : \"Mum\",\n \"given\" : [\"Martha\"]\n },\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+33-555-20036\",\n \"use\" : \"home\"\n }],\n \"address\" : {\n \"line\" : [\"Promenade des Anglais 111\"],\n \"city\" : \"Lyon\",\n \"postalCode\" : \"69001\",\n \"country\" : \"FR\"\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"resource\" : {\n \"resourceType\" : \"Practitioner\",\n \"id\" : \"98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Practitioner
Resource Practitioner "98315ba9-ffea-41ef-b59b-a836c039858f"
identifier : id:\\u00a0129854633
active : true
name : Beetje van Hulp
Qualifications - Code * Doctor of Medicine (degreeLicenseCertificate[2.7]#MD)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.1\",\n \"value\" : \"129854633\",\n \"assigner\" : {\n \"display\" : \"CIBG\"\n }\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"van Hulp\",\n \"given\" : [\"Beetje\"]\n }],\n \"qualification\" : [{\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v2-0360\",\n \"version\" : \"2.7\",\n \"code\" : \"MD\",\n \"display\" : \"Doctor of Medicine\"\n }]\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"resource\" : {\n \"resourceType\" : \"Organization\",\n \"id\" : \"bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Organization
Resource Organization "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
identifier : id:\\u00a0564738757
active : true
name : Anorg Aniza Tion BV / The best custodian ever
telecom : +31-51-34343400
address : Houttuinen 27 Dordrecht 3311 CE NL (WORK)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.3\",\n \"value\" : \"564738757\"\n }],\n \"active\" : true,\n \"name\" : \"Anorg Aniza Tion BV / The best custodian ever\",\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31-51-34343400\",\n \"use\" : \"work\"\n }],\n \"address\" : [{\n \"use\" : \"work\",\n \"line\" : [\"Houttuinen 27\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3311 CE\",\n \"country\" : \"NL\"\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"resource\" : {\n \"resourceType\" : \"Condition\",\n \"id\" : \"ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"cacceb57-395f-48e1-9c88-e9c9704dc2d2\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\" : \"confirmed\"\n }]\n },\n \"category\" : [{\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"75326-9\",\n \"display\" : \"Problem\"\n }]\n }],\n \"severity\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"LA6751-7\",\n \"display\" : \"Moderate\"\n }]\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"198436008\",\n \"display\" : \"Menopausal flushing (finding)\",\n \"_display\" : {\n \"extension\" : [{\n \"extension\" : [{\n \"url\" : \"lang\",\n \"valueCode\" : \"nl-NL\"\n },\n {\n \"url\" : \"content\",\n \"valueString\" : \"opvliegers\"\n }],\n \"url\" : \"http://hl7.org/fhir/StructureDefinition/translation\"\n }]\n }\n },\n {\n \"system\" : \"http://hl7.org/fhir/sid/icd-10\",\n \"code\" : \"N95.1\",\n \"display\" : \"Menopausal and female climacteric states\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2015\",\n \"recordedDate\" : \"2016-10\"\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6e883e5e-7648-485a-86de-3640a61601fe\",\n \"resource\" : {\n \"resourceType\" : \"MedicationStatement\",\n \"id\" : \"6e883e5e-7648-485a-86de-3640a61601fe\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8faf0319-89d3-427c-b9d1-e8c8fd390dca\"\n }],\n \"status\" : \"active\",\n \"medicationReference\" : {\n \"reference\" : \"Medication/6369a973-afc7-4617-8877-3e9811e05a5b\"\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"effectivePeriod\" : {\n \"start\" : \"2015-03\"\n },\n \"dosage\" : [{\n \"timing\" : {\n \"repeat\" : {\n \"count\" : 1,\n \"periodUnit\" : \"d\"\n }\n },\n \"route\" : {\n \"coding\" : [{\n \"system\" : \"http://standardterms.edqm.eu\",\n \"code\" : \"20053000\",\n \"display\" : \"Oral use\"\n }]\n },\n \"doseAndRate\" : [{\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\" : \"ordered\",\n \"display\" : \"Ordered\"\n }]\n },\n \"doseQuantity\" : {\n \"value\" : 1,\n \"unit\" : \"tablet\",\n \"system\" : \"http://unitsofmeasure.org\",\n \"code\" : \"1\"\n }\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"resource\" : {\n \"resourceType\" : \"Medication\",\n \"id\" : \"6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Medication
Resource Medication "6369a973-afc7-4617-8877-3e9811e05a5b"
code : Product containing anastrozole (medicinal product) (SNOMED CT #108774000; unknown#99872 "ANASTROZOL 1MG TABLET"; unknown#2076667 "ANASTROZOL CF TABLET FILMOMHULD 1MG"; WHO ATC #L02BG03 "anastrozole")
\"\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"108774000\",\n \"display\" : \"Product containing anastrozole (medicinal product)\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.1\",\n \"code\" : \"99872\",\n \"display\" : \"ANASTROZOL 1MG TABLET\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.7\",\n \"code\" : \"2076667\",\n \"display\" : \"ANASTROZOL CF TABLET FILMOMHULD 1MG\"\n },\n {\n \"system\" : \"http://www.whocc.no/atc\",\n \"code\" : \"L02BG03\",\n \"display\" : \"anastrozole\"\n }]\n }\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"resource\" : {\n \"resourceType\" : \"AllergyIntolerance\",\n \"id\" : \"fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8d9566a4-d26d-46be-a3e4-c9f3a0e5cd83\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\" : \"confirmed\"\n }]\n },\n \"type\" : \"allergy\",\n \"category\" : [\"medication\"],\n \"criticality\" : \"high\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"373270004\",\n \"display\" : \"Substance with penicillin structure and antibacterial mechanism of action (substance)\"\n }]\n },\n \"patient\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2010\"\n }\n }]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/ips-nz.json b/http-client-tests/resources/preset-requests/ips-nz.json
new file mode 100644
index 00000000..a6d12c6a
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/ips-nz.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "baseEngine": "IPS_NZ",
+ "locale": "en",
+ "profiles": [
+ "https://standards.digital.health.nz/fhir/StructureDefinition/nzps-bundle"
+ ]
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Bundle\",\n \"id\": \"NZ-IPS-20231121031219\",\n \"language\": \"en-NZ\",\n \"identifier\": {\n \"system\": \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n },\n \"type\": \"document\",\n \"timestamp\": \"2023-11-21T03:12:19.1242772+00:00\",\n \"entry\": [\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Composition/9b9e4f64-c976-47e9-a8a5-4b9b0484a709\",\n \"resource\": {\n \"resourceType\": \"Composition\",\n \"id\": \"9b9e4f64-c976-47e9-a8a5-4b9b0484a709\",\n \"meta\": {\n \"versionId\": \"1\"\n },\n \"language\": \"en-NZ\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"International Patient Summary for Iosefa Test-Fuimaono
\"\n },\n \"identifier\": {\n \"system\": \"urn:oid:2.16.840.1.113883.2.18.7.2\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n },\n \"status\": \"final\",\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"60591-5\",\n \"display\": \"Patient summary Document\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"date\": \"2023-11-21\",\n \"author\": [\n {\n \"reference\": \"Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b\"\n }\n ],\n \"title\": \"International Patient Summary\",\n \"confidentiality\": \"N\",\n \"attester\": [\n {\n \"mode\": \"professional\",\n \"time\": \"2023-11-21\",\n \"party\": {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n }\n ],\n \"custodian\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"relatesTo\": [\n {\n \"code\": \"transforms\",\n \"targetIdentifier\": {\n \"system\": \"urn:oid:2.16.840.1.113883.2.18.7.2\",\n \"value\": \"3d5006e9-f003-4a78-a253-40ab405b7ef2\"\n }\n }\n ],\n \"event\": [\n {\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\": \"PCPR\"\n }\n ]\n }\n ],\n \"period\": {\n \"end\": \"2023-11-21\"\n }\n }\n ],\n \"section\": [\n {\n \"title\": \"Allergies and Intolerances\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"48765-2\",\n \"display\": \"Allergies and adverse reactions Document\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Code \\r\\n Type \\r\\n Recorded On \\r\\n Asserted By \\r\\n Clinical Status \\r\\n Verification Status \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Flucloxacillin-containing product \\r\\n Allergy \\r\\n \\r\\n Patient/ZKT9319 \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Diazepam-containing product \\r\\n Allergy \\r\\n \\r\\n Patient/ZKT9319 \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\"\n },\n {\n \"reference\": \"AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\"\n }\n ]\n },\n {\n \"title\": \"Problem List\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"11450-4\",\n \"display\": \"Problem list - Reported\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Condition \\r\\n Category \\r\\n Recorded On \\r\\n Clinical Status \\r\\n Verification Status \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Postconcussion syndrome \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Diabetes type 2 on insulin \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Gout \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Benign essential hypertension \\r\\n Problem List Item \\r\\n \\r\\n active \\r\\n confirmed \\r\\n \\r\\n \\r\\n Anxiety disorder due to a general medical condition \\r\\n Problem List Item \\r\\n \\r\\n inactive \\r\\n confirmed \\r\\n \\r\\n \\r\\n Fracture of neck of femur \\r\\n Problem List Item \\r\\n \\r\\n inactive \\r\\n confirmed \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc\"\n },\n {\n \"reference\": \"Condition/1923f2ca-043b-432c-9eed-404c81474e60\"\n },\n {\n \"reference\": \"Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\"\n },\n {\n \"reference\": \"Condition/08992112-ac66-4c66-a803-89f80bb6d2aa\"\n },\n {\n \"reference\": \"Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\"\n },\n {\n \"reference\": \"Condition/dd40111a-683f-4d72-bccc-3c6848bc0813\"\n }\n ]\n },\n {\n \"title\": \"Medication Summary\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"10160-0\",\n \"display\": \"History of Medication use Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Drug \\r\\n Status \\r\\n Effective \\r\\n Instructions \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n insulin glargine 100 international units/mL injection, 10 mL vial \\r\\n Active \\r\\n 2023-02-21 \\r\\n Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin. \\r\\n \\r\\n \\r\\n dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device \\r\\n Active \\r\\n 2023-02-21 \\r\\n Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals. \\r\\n \\r\\n \\r\\n metformin hydrochloride 1000 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet, two times a day, with meals. \\r\\n \\r\\n \\r\\n amlodipine 5 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet at any time of day, but try to make sure it's around the same time every day. \\r\\n \\r\\n \\r\\n losartan potassium 50 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily \\r\\n \\r\\n \\r\\n aspirin 75 mg tablet: enteric-coated \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily \\r\\n \\r\\n \\r\\n allopurinol 300 mg tablet \\r\\n Active \\r\\n 2023-02-21 \\r\\n Take ONE tablet daily, after meals \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645\"\n },\n {\n \"reference\": \"MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548\"\n },\n {\n \"reference\": \"MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8\"\n },\n {\n \"reference\": \"MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a\"\n },\n {\n \"reference\": \"MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367\"\n },\n {\n \"reference\": \"MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\"\n },\n {\n \"reference\": \"MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\"\n }\n ]\n },\n {\n \"title\": \"Immunizations\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"11369-6\",\n \"display\": \"History of Immunization Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
\\r\\n \\r\\n \\r\\n Vaccine \\r\\n Status \\r\\n Occurance \\r\\n Route \\r\\n Dose # \\r\\n Series \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \\r\\n Completed \\r\\n 2022-02-01 \\r\\n Injection, intramuscular \\r\\n 2 \\r\\n 12 (At risk, no previous history) \\r\\n \\r\\n \\r\\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \\r\\n Completed \\r\\n 2021-08-05 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 12 (At risk, no previous history) \\r\\n \\r\\n \\r\\n Influenza, seasonal, injectable \\r\\n Completed \\r\\n 2019-05-20 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 1 (Over 65 years (Influenza)) \\r\\n \\r\\n \\r\\n diphtheria, tetanus toxoids and acellular pertussis vaccine \\r\\n Completed \\r\\n 2019-04-24 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 6 (Booster) \\r\\n \\r\\n \\r\\n tetanus and diphtheria toxoids, not adsorbed, for adult use \\r\\n Completed \\r\\n 2018-04-05 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 6 (Booster) \\r\\n \\r\\n \\r\\n pneumococcal conjugate vaccine, 13 valent \\r\\n Completed \\r\\n 2015-09-25 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 21 (PCV catch up) \\r\\n \\r\\n \\r\\n Influenza, seasonal, injectable \\r\\n Completed \\r\\n 2015-05-01 \\r\\n Injection, intramuscular \\r\\n 1 \\r\\n 1 (Over 65 years (Influenza)) \\r\\n \\r\\n \\r\\n
\\r\\n
\"\n },\n \"entry\": [\n {\n \"reference\": \"Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a\"\n },\n {\n \"reference\": \"Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c\"\n },\n {\n \"reference\": \"Immunization/33c971d3-0992-4e93-b904-6325ed4602e3\"\n },\n {\n \"reference\": \"Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279\"\n },\n {\n \"reference\": \"Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b\"\n },\n {\n \"reference\": \"Immunization/acd3a963-0985-4679-a126-8eb9ed981d36\"\n },\n {\n \"reference\": \"Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37\"\n }\n ]\n },\n {\n \"title\": \"Procedures\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"47519-4\",\n \"display\": \"History of Procedures Document\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Date(s) Procedure Location Performer Comments 01/09/2020 to 01/09/2020 Operative procedure on hip Waikato Hospital 31/03/2018 to 31/03/2018 Hand closure Samoa
\"\n },\n \"entry\": [\n {\n \"reference\": \"Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc\"\n },\n {\n \"reference\": \"Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147\"\n }\n ]\n },\n {\n \"title\": \"Results\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"30954-2\",\n \"display\": \"Relevant diagnostic tests/laboratory data Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Result Group: Lipids Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments Total cholesterol:HDL ratio 5.1 mmol/L <4 mmol/L (high risk) H HDL Cholesterol 1.5 mmol/L >1 mmol/L N LDL Cholesterol 3.4 mmol/L <1.8 mmol/L H
Result Group: HbA1C Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments HbA1c 60 mmol/mol 50 – 55 mmol/mol (diabetes) H
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\"\n },\n {\n \"reference\": \"Observation/fe53810f-a341-4093-a959-4048ad62f85b\"\n },\n {\n \"reference\": \"Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\"\n },\n {\n \"reference\": \"DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6\"\n },\n {\n \"reference\": \"Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\"\n },\n {\n \"reference\": \"DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f\"\n }\n ]\n },\n {\n \"title\": \"Vital Signs\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8716-3\",\n \"display\": \"Vital signs\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 29 Sep 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.5 C Heart rate 84 beats/minute Respiratory rate 18 breaths/minute Systolic blood pressure 136 mm[Hg] Diastolic blood pressure 88 mm[Hg] Body height 1.84 cm Body weight 104 kg
Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.2 C Heart rate 86 beats/minute Respiratory rate 14 breaths/minute Systolic blood pressure 130 mm[Hg] Diastolic blood pressure 82 mm[Hg] Body weight 103 kg
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/6f64547c-89a3-459d-a993-b89e995c1f14\"\n },\n {\n \"reference\": \"Observation/da3bbb11-e485-4396-a25c-611354789c65\"\n },\n {\n \"reference\": \"Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b\"\n },\n {\n \"reference\": \"Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb\"\n },\n {\n \"reference\": \"Observation/cf628f81-f66b-42a7-a33a-c5d38a604861\"\n },\n {\n \"reference\": \"Observation/dd309bef-3b36-4422-a202-39d040113a5d\"\n },\n {\n \"reference\": \"Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\"\n },\n {\n \"reference\": \"Observation/eda3092b-5228-420b-b0ce-f5eb77e73942\"\n },\n {\n \"reference\": \"Observation/2d420435-f380-46e1-ad93-b9fef57f4b71\"\n },\n {\n \"reference\": \"Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356\"\n },\n {\n \"reference\": \"Observation/af9ae822-ae5d-4bec-88bf-4dd250350783\"\n }\n ]\n },\n {\n \"title\": \"Social History\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29762-2\",\n \"display\": \"Social history Narrative\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Type Item Date(s) Comment other Worked as a forestry worker. Worked as a forestry worker. Was always physically active until 2020 fall.Has had subsequent falls. Now depends on a walker or scooter. smoking Ex-smoker 30/06/2005 30 - pack - year smoking history, quit smoking ~2005.
\"\n },\n \"entry\": [\n {\n \"reference\": \"Observation/33624327-7e1b-4912-bca1-2d0c8d36b952\"\n }\n ]\n },\n {\n \"title\": \"Functional Status\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"47420-5\",\n \"display\": \"Functional status assessment note\"\n }\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" Functional Condition Effective Dates Condition Status Often confused, struggles to communicate in English Active Depends on a walking frame or electric scooter to get around. Active Doesn’t leave the house much. Active Relies on caregiver Cindy for assistance with many activities of daily living. Active Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised. Active
\"\n },\n \"entry\": [\n {\n \"reference\": \"Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb\"\n },\n {\n \"reference\": \"Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003\"\n },\n {\n \"reference\": \"Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f\"\n },\n {\n \"reference\": \"Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4\"\n },\n {\n \"reference\": \"Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d\"\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Patient/ZKT9319\",\n \"resource\": {\n \"resourceType\": \"Patient\",\n \"id\": \"ZKT9319\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Iosefa Test-Fuimaono
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/nhi-id\",\n \"value\": \"ZKT9319\"\n }\n ],\n \"name\": [\n {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Iosefa\"\n ]\n }\n ],\n \"gender\": \"male\",\n \"birthDate\": \"1950-07-04\",\n \"address\": [\n {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n ],\n \"maritalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-MaritalStatus\",\n \"code\": \"W\",\n \"display\": \"Widowed\"\n }\n ]\n },\n \"contact\": [\n {\n \"relationship\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0131\",\n \"code\": \"N\",\n \"display\": \"Next-of-Kin\"\n }\n ]\n }\n ],\n \"name\": {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Cindy\",\n \"Test-Fuimaono\"\n ]\n },\n \"telecom\": [\n {\n \"system\": \"phone\",\n \"value\": \"021 111111\",\n \"use\": \"mobile\"\n }\n ],\n \"address\": {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n },\n {\n \"relationship\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0131\",\n \"code\": \"C\",\n \"display\": \"Emergency Contact\"\n }\n ]\n }\n ],\n \"name\": {\n \"use\": \"usual\",\n \"family\": \"Test-Fuimaono\",\n \"given\": [\n \"Cindy\",\n \"Test-Fuimaono\"\n ]\n },\n \"telecom\": [\n {\n \"system\": \"phone\",\n \"value\": \"021 111111\",\n \"use\": \"mobile\"\n }\n ],\n \"address\": {\n \"use\": \"home\",\n \"type\": \"physical\",\n \"line\": [\n \"Flat 1\",\n \"1 Brooklyn Road\",\n \"Claudelands\"\n ],\n \"city\": \"Hamilton\",\n \"postalCode\": \"3214\",\n \"country\": \"NZ\"\n }\n }\n ],\n \"communication\": [\n {\n \"language\": {\n \"text\": \"en-NZ\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b\",\n \"resource\": {\n \"resourceType\": \"Organization\",\n \"id\": \"9c9542df-e45f-4131-9d44-8f5974e56d5b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Fairfield Medical Centre
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F0U044-C\"\n }\n ],\n \"name\": \"Fairfield Medical Centre\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\",\n \"resource\": {\n \"resourceType\": \"PractitionerRole\",\n \"id\": \"c9288aea-5e73-4182-8231-aacbe50d3244\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Role: Doctor
\"\n },\n \"practitioner\": {\n \"reference\": \"Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23\"\n },\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"158965000\",\n \"display\": \"Doctor\"\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23\",\n \"resource\": {\n \"resourceType\": \"Practitioner\",\n \"id\": \"4d4b76bf-55b5-40b8-a130-99ea24a84c23\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Dr James Test-Smith
\"\n },\n \"name\": [\n {\n \"use\": \"usual\",\n \"family\": \"Test-Smith\",\n \"given\": [\n \"Dr\",\n \"James\",\n \"Test-Smith\"\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\",\n \"resource\": {\n \"resourceType\": \"Organization\",\n \"id\": \"644f2fb9-c264-4c32-898b-4048dddd6d1b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Name: Fairfield Medical Centre
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F0U044-C\"\n }\n ],\n \"name\": \"Fairfield Medical Centre\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Location/F05076-A\",\n \"resource\": {\n \"resourceType\": \"Location\",\n \"id\": \"F05076-A\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"\\r\\n
Waikato Hospital \\r\\n
\\r\\n \\r\\n Identifier \\r\\n F05076-A \\r\\n \\r\\n \\r\\n Identifier System \\r\\n https://standards.digital.health.nz/ns/hpi-facility-id \\r\\n \\r\\n \\r\\n Status \\r\\n Active \\r\\n \\r\\n \\r\\n Mode \\r\\n Instance \\r\\n \\r\\n \\r\\n Type \\r\\n Location \\r\\n \\r\\n \\r\\n Address \\r\\n 183 Pembroke Street, Waikato Hospital, Hamilton 3204 \\r\\n \\r\\n
\\r\\n
\"\n },\n \"identifier\": [\n {\n \"system\": \"https://standards.digital.health.nz/ns/hpi-facility-id\",\n \"value\": \"F05076-A\"\n }\n ],\n \"status\": \"active\",\n \"name\": \"Waikato Hospital\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\",\n \"resource\": {\n \"resourceType\": \"AllergyIntolerance\",\n \"id\": \"1dfacb6d-4260-4fd4-84e9-a1c13aafa72c\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Flucloxacillin-containing product (Penicillin adverse reaction)
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"type\": \"allergy\",\n \"category\": [\n \"medication\"\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"96067005\",\n \"display\": \"Flucloxacillin-containing product\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"asserter\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"reaction\": [\n {\n \"manifestation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"292954005\",\n \"display\": \"Penicillin adverse reaction\"\n }\n ]\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\",\n \"resource\": {\n \"resourceType\": \"AllergyIntolerance\",\n \"id\": \"e9b9aeaf-e5ac-4f72-b01d-df4c6107f746\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Diazepam-containing product (Diazepam adverse reaction)
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"type\": \"allergy\",\n \"category\": [\n \"medication\"\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"48546005\",\n \"display\": \"Diazepam-containing product\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"asserter\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"reaction\": [\n {\n \"manifestation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"292360004\",\n \"display\": \"Diazepam adverse reaction\"\n }\n ]\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"2eafb947-e816-4d9f-978b-c91d0dbe4acc\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Postconcussion
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"40425004\",\n \"display\": \"Postconcussion syndrome\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/1923f2ca-043b-432c-9eed-404c81474e60\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"1923f2ca-043b-432c-9eed-404c81474e60\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Diabetes type 2 on insulin
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"237599002\",\n \"display\": \"Diabetes type 2 on insulin\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Gout
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"90560007\",\n \"display\": \"Gout\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/08992112-ac66-4c66-a803-89f80bb6d2aa\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"08992112-ac66-4c66-a803-89f80bb6d2aa\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Benign essential hypertension
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"1201005\",\n \"display\": \"Benign essential hypertension\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"9b54fc7a-8302-45cc-9ff6-e60c623c5bf9\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Anxiety disorder due to a general medical condition
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"inactive\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"52910006\",\n \"display\": \"Anxiety disorder due to a general medical condition\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/dd40111a-683f-4d72-bccc-3c6848bc0813\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"dd40111a-683f-4d72-bccc-3c6848bc0813\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Fracture of neck of femur
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"inactive\"\n }\n ]\n },\n \"verificationStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\": \"confirmed\"\n }\n ]\n },\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-category\",\n \"code\": \"problem-list-item\",\n \"display\": \"Problem List Item\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"5913000\",\n \"display\": \"Fracture of neck of femur\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"4464bdfe-dc87-4179-a10d-2884c975a6eb\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Often confused, struggles to communicate in English
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Often confused, struggles to communicate in English\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"f0982a2a-8eb2-4b1a-9e73-6a82d2102003\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Depends on a walking frame or electric scooter to get around.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Depends on a walking frame or electric scooter to get around.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"94c0216a-183b-45e9-9e98-f244ac0b4d4f\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Doesn’t leave the house much.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Doesn’t leave the house much.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"14863bd8-1d6d-4c85-9bcc-1b33699908c4\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Relies on caregiver Cindy for assistance with many activities of daily living.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Relies on caregiver Cindy for assistance with many activities of daily living.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d\",\n \"resource\": {\n \"resourceType\": \"Condition\",\n \"id\": \"b008f275-c141-4cd5-b1bb-46c399eaf42d\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised.
\"\n },\n \"clinicalStatus\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\": \"active\"\n }\n ]\n },\n \"code\": {\n \"text\": \"Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised.\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"8ecbe74a-a3fa-4edf-8133-44ca8903a645\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10368421000116106 (insulin glargine 100 international units/mL injection, 10 mL vial)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"126212009\",\n \"display\": \"Product containing insulin glargine (medicinal product)\"\n }\n ],\n \"text\": \"insulin glargine 100 international units/mL injection, 10 mL vial\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"34206005\",\n \"display\": \"subcutaneous route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"unit\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"767525000\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"06c4eda2-df30-4231-af09-0135e5f84548\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"47230201000116108 (dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"714081009\",\n \"display\": \"Product containing dulaglutide (medicinal product)\"\n }\n ],\n \"text\": \"dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals.\",\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"34206005\",\n \"display\": \"subcutaneous route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"4b5f40b9-f59c-4090-81b1-4609ac6b7af8\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"44221701000116102 (metformin hydrochloride 1000 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"109081006\",\n \"display\": \"Product containing metformin (medicinal product)\"\n }\n ],\n \"text\": \"metformin hydrochloride 1000 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet, two times a day, with meals.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 2,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"e19dc087-0055-4feb-a847-72e77cf55a0a\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10109621000116108 (amlodipine 5 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"108537001\",\n \"display\": \"Product containing amlodipine (medicinal product)\"\n }\n ],\n \"text\": \"amlodipine 5 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet at any time of day, but try to make sure it's around the same time every day.\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"f7a26186-dd57-420f-95be-c0deeee49367\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10195211000116102 (losartan potassium 50 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"96309000\",\n \"display\": \"Product containing losartan (medicinal product)\"\n }\n ],\n \"text\": \"losartan potassium 50 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"b6b49f33-a0e4-4b94-92f3-caa3267ad4f7\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10077081000116106 (aspirin 75 mg tablet: enteric-coated)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"7947003\",\n \"display\": \"Product containing aspirin (medicinal product)\"\n }\n ],\n \"text\": \"aspirin 75 mg tablet: enteric-coated\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\",\n \"resource\": {\n \"resourceType\": \"MedicationStatement\",\n \"id\": \"ce2395b9-d7ef-4df0-b38f-fc9be0e44f94\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"10030521000116104 (allopurinol 300 mg tablet)
\"\n },\n \"status\": \"active\",\n \"medicationCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"25246002\",\n \"display\": \"Product containing allopurinol (medicinal product)\"\n }\n ],\n \"text\": \"allopurinol 300 mg tablet\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-02-21\",\n \"informationSource\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n },\n \"dosage\": [\n {\n \"text\": \"Take ONE tablet daily, after meals\",\n \"timing\": {\n \"repeat\": {\n \"frequency\": 1,\n \"period\": 1,\n \"periodUnit\": \"d\"\n }\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"26643006\",\n \"display\": \"Oral route\"\n }\n ]\n },\n \"doseAndRate\": [\n {\n \"type\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\": \"ordered\",\n \"display\": \"Ordered\"\n }\n ]\n },\n \"doseQuantity\": {\n \"value\": 1,\n \"unit\": \"Tablet - unit of product usage\",\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"428673006\"\n }\n }\n ]\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"998e59d9-a7f4-4503-b08e-85ce9b206b0a\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"208 (Pfizer/BioNtech)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"208\",\n \"display\": \"SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2022-02-01\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"12 (At risk, no previous history)\",\n \"doseNumberPositiveInt\": 2\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"fc6b3454-527b-4deb-a266-7f52c63d0d3c\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"208 (Pfizer/BioNtech)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"208\",\n \"display\": \"SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2021-08-05\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"12 (At risk, no previous history)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/33c971d3-0992-4e93-b904-6325ed4602e3\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"33c971d3-0992-4e93-b904-6325ed4602e3\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"99006 (Influenza)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"141\",\n \"display\": \"Influenza, seasonal, injectable\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2019-05-20\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"1 (Over 65 years (Influenza))\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"12c253d4-20e8-4dd4-935c-fd1ec8a49279\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"20 (DTaP)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"20\",\n \"display\": \"diphtheria, tetanus toxoids and acellular pertussis vaccine\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2019-04-24\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"6 (Booster)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"70308bba-2bc4-4505-ba9b-520f9d3dc30b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Tetanus booster (given as DT)]
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"138\",\n \"display\": \"tetanus and diphtheria toxoids, not adsorbed, for adult use\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2018-04-05\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"6 (Booster)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/acd3a963-0985-4679-a126-8eb9ed981d36\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"acd3a963-0985-4679-a126-8eb9ed981d36\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"133 (PCV13)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"133\",\n \"display\": \"pneumococcal conjugate vaccine, 13 valent\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2015-09-25\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"21 (PCV catch up)\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37\",\n \"resource\": {\n \"resourceType\": \"Immunization\",\n \"id\": \"bae44614-43cc-4df4-94b3-c26d34b0ea37\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"99006 (Influenza)
\"\n },\n \"status\": \"completed\",\n \"vaccineCode\": {\n \"coding\": [\n {\n \"system\": \"http://hl7.org/fhir/sid/cvx\",\n \"code\": \"141\",\n \"display\": \"Influenza, seasonal, injectable\"\n }\n ]\n },\n \"patient\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"occurrenceDateTime\": \"2015-05-01\",\n \"site\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"16217701000119102\",\n \"display\": \"Structure of left deltoid muscle\"\n }\n ]\n },\n \"route\": {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration\",\n \"code\": \"IM\",\n \"display\": \"Injection, intramuscular\"\n }\n ]\n },\n \"performer\": [\n {\n \"actor\": {\n \"reference\": \"Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b\"\n }\n }\n ],\n \"protocolApplied\": [\n {\n \"series\": \"1 (Over 65 years (Influenza))\",\n \"doseNumberPositiveInt\": 1\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc\",\n \"resource\": {\n \"resourceType\": \"Procedure\",\n \"id\": \"8414198c-a43b-4ef1-b06f-3b39fb4b39cc\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Operative procedure on hip
\"\n },\n \"status\": \"unknown\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"265132005\",\n \"display\": \"Primary open reduction and internal fixation of proximal femoral fracture with screw/nail and plate device\"\n }\n ],\n \"text\": \"Operative procedure on hip\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"performedDateTime\": \"2020-09-01\",\n \"location\": {\n \"reference\": \"Location/F05076-A\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147\",\n \"resource\": {\n \"resourceType\": \"Procedure\",\n \"id\": \"1096ab80-e982-41b3-85c2-8e1d2466d147\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Hand closure
\"\n },\n \"status\": \"unknown\",\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"287903004\",\n \"display\": \"Suturing of hand\"\n }\n ],\n \"text\": \"Hand closure\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"performedDateTime\": \"2018-03-31\"\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6\",\n \"resource\": {\n \"resourceType\": \"DiagnosticReport\",\n \"id\": \"9e0d995f-a78d-45f4-b3aa-23037972a3e6\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Lipids]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\",\n \"code\": \"LAB\",\n \"display\": \"Laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[Lipids]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"result\": [\n {\n \"reference\": \"Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\"\n },\n {\n \"reference\": \"Observation/fe53810f-a341-4093-a959-4048ad62f85b\"\n },\n {\n \"reference\": \"Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f\",\n \"resource\": {\n \"resourceType\": \"DiagnosticReport\",\n \"id\": \"2da4116e-7158-4d59-b6c4-873b37f7d65f\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HbA1C]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v2-0074\",\n \"code\": \"LAB\",\n \"display\": \"Laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HbA1C]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"result\": [\n {\n \"reference\": \"Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"2f3ad263-1b4e-443b-95ca-66d2abb6e927\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [Total cholesterol:HDL ratio]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[Total cholesterol:HDL ratio]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 5.1,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"<4 mmol/L (high risk)\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/fe53810f-a341-4093-a959-4048ad62f85b\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"fe53810f-a341-4093-a959-4048ad62f85b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HDL Cholesterol]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HDL Cholesterol]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 1.5,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"Normal\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \">1 mmol/L\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"6adb76b4-73f3-4552-87a6-09ac3dc1f558\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [LDL Cholesterol]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[LDL Cholesterol]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 3.4,\n \"unit\": \"mmol/L\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/L\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"<1.8 mmol/L\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/63ad8984-003c-4e44-bc56-31dd6abc0897\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"63ad8984-003c-4e44-bc56-31dd6abc0897\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \" [HbA1c]
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"laboratory\"\n }\n ]\n }\n ],\n \"code\": {\n \"text\": \"[HbA1c]\"\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmol/mol\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mmol/mol\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"H\",\n \"display\": \"High\"\n }\n ]\n }\n ],\n \"referenceRange\": [\n {\n \"text\": \"50 – 55 mmol/mol (diabetes)\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/6f64547c-89a3-459d-a993-b89e995c1f14\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"6f64547c-89a3-459d-a993-b89e995c1f14\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body temperature
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8310-5\",\n \"display\": \"Body temperature\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 37.5,\n \"unit\": \"Cel\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"Cel\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/da3bbb11-e485-4396-a25c-611354789c65\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"da3bbb11-e485-4396-a25c-611354789c65\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Heart rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8867-4\",\n \"display\": \"Heart rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 84,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"5dead0bd-80c7-42f7-9720-3aaf047eb89b\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Respiratory rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"9279-1\",\n \"display\": \"Respiratory rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 18,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"126f25f0-d921-4d9a-85a2-5b847cfb89fb\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Blood pressure panel with all children optional
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 136,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 88,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/cf628f81-f66b-42a7-a33a-c5d38a604861\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"cf628f81-f66b-42a7-a33a-c5d38a604861\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body height
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8302-2\",\n \"display\": \"Body height\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 1.84,\n \"unit\": \"cm\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"cm\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/dd309bef-3b36-4422-a202-39d040113a5d\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"dd309bef-3b36-4422-a202-39d040113a5d\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body weight
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29463-7\",\n \"display\": \"Body weight\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-09-29T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 104,\n \"unit\": \"kg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"kg\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body temperature
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8310-5\",\n \"display\": \"Body temperature\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 37.2,\n \"unit\": \"Cel\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"Cel\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/eda3092b-5228-420b-b0ce-f5eb77e73942\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"eda3092b-5228-420b-b0ce-f5eb77e73942\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Heart rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8867-4\",\n \"display\": \"Heart rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 86,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/2d420435-f380-46e1-ad93-b9fef57f4b71\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"2d420435-f380-46e1-ad93-b9fef57f4b71\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Respiratory rate
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"9279-1\",\n \"display\": \"Respiratory rate\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 14,\n \"unit\": \"/min\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"/min\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"7a422837-80f5-4fa6-b3ac-8a0e44b99356\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Blood pressure panel with all children optional
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 130,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 82,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n }\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/af9ae822-ae5d-4bec-88bf-4dd250350783\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"af9ae822-ae5d-4bec-88bf-4dd250350783\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Body weight
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"29463-7\",\n \"display\": \"Body weight\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2023-03-05T00:00:00+00:00\",\n \"performer\": [\n {\n \"reference\": \"PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244\"\n }\n ],\n \"valueQuantity\": {\n \"value\": 103,\n \"unit\": \"kg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"kg\"\n }\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/Observation/33624327-7e1b-4912-bca1-2d0c8d36b952\",\n \"resource\": {\n \"resourceType\": \"Observation\",\n \"id\": \"33624327-7e1b-4912-bca1-2d0c8d36b952\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Tobacco smoking status
\"\n },\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"social-history\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"72166-2\",\n \"display\": \"Tobacco smoking status\"\n }\n ]\n },\n \"subject\": {\n \"reference\": \"Patient/ZKT9319\"\n },\n \"effectiveDateTime\": \"2005-06-30\",\n \"performer\": [\n {\n \"reference\": \"Patient/ZKT9319\"\n }\n ],\n \"valueCodeableConcept\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"LA15920-4\",\n \"display\": \"Former smoker\"\n }\n ]\n },\n \"note\": [\n {\n \"text\": \"30 - pack - year smoking history, quit smoking ~2005.\"\n }\n ]\n }\n },\n {\n \"fullUrl\": \"https://terminz.azurewebsites.net/fhir/PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3\",\n \"resource\": {\n \"resourceType\": \"PractitionerRole\",\n \"id\": \"8363e64e-f639-4f55-bd3c-6302bf87a6d3\",\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Role: Clinical pathologist
\"\n },\n \"code\": [\n {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"81464008\",\n \"display\": \"Clinical pathologist\"\n }\n ]\n }\n ]\n }\n }\n ]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/ips.json b/http-client-tests/resources/preset-requests/ips.json
new file mode 100644
index 00000000..56ee6879
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/ips.json
@@ -0,0 +1,16 @@
+{
+ "cliContext": {
+ "baseEngine": "IPS",
+ "locale": "en",
+ "profiles": [
+ "http://hl7.org/fhir/uv/ips/StructureDefinition/Bundle-uv-ips"
+ ]
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\" : \"Bundle\",\n \"id\" : \"bundle-minimal\",\n \"language\" : \"en-US\",\n \"identifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"28b95815-76ce-457b-b7ae-a972e527db40\"\n },\n \"type\" : \"document\",\n \"timestamp\" : \"2020-12-11T14:30:00+01:00\",\n \"entry\" : [{\n \"fullUrl\" : \"urn:uuid:6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"resource\" : {\n \"resourceType\" : \"Composition\",\n \"id\" : \"6e1fb74a-742b-4c7b-8487-171dacb88766\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative
Resource \\\"6e1fb74a-742b-4c7b-8487-171dacb88766\\\"
status : final
type : Patient summary Document (LOINC #60591-5)
date : 2020-12-11 02:30:00+0100
author : Beetje van Hulp, MD
title : Patient Summary as of December 11, 2020 14:30
confidentiality : N
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Beetje van Hulp, MD
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Anorg Aniza Tion BV
custodian : Anorg Aniza Tion BV
RelatesTos - Code Target[x] * appends id: 20e12ce3-857f-49c0-b888-cb670597f191
Events - Code Period * care provision (ActClass #PCPR) ?? --> 2020-12-11 02:30:00+0100
\"\n },\n \"status\" : \"final\",\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"60591-5\",\n \"display\" : \"Patient summary Document\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"date\" : \"2020-12-11T14:30:00+01:00\",\n \"author\" : [{\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }],\n \"title\" : \"Patient Summary as of December 11, 2020 14:30\",\n \"confidentiality\" : \"N\",\n \"attester\" : [{\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f\"\n }\n },\n {\n \"mode\" : \"legal\",\n \"time\" : \"2020-12-11T14:30:00+01:00\",\n \"party\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n }\n }],\n \"custodian\" : {\n \"reference\" : \"Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\"\n },\n \"relatesTo\" : [{\n \"code\" : \"appends\",\n \"targetIdentifier\" : {\n \"system\" : \"urn:oid:2.16.724.4.8.10.200.10\",\n \"value\" : \"20e12ce3-857f-49c0-b888-cb670597f191\"\n }\n }],\n \"event\" : [{\n \"code\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-ActClass\",\n \"code\" : \"PCPR\"\n }]\n }],\n \"period\" : {\n \"end\" : \"2020-12-11T14:30:00+01:00\"\n }\n }],\n \"section\" : [{\n \"title\" : \"Active Problems\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"11450-4\",\n \"display\" : \"Problem list Reported\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"Condition/ad84b7a2-b4dd-474e-bef3-0779e6cb595f\"\n }]\n },\n {\n \"title\" : \"Medication\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"10160-0\",\n \"display\" : \"History of Medication use Narrative\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Medication Name : Oral anastrozole 1mg tablet
Code :
Status : Active, started March 2015
Instructions: Take 1 time per day
\"\n },\n \"entry\" : [{\n \"reference\" : \"MedicationStatement/6e883e5e-7648-485a-86de-3640a61601fe\"\n }]\n },\n {\n \"title\" : \"Allergies and Intolerances\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"48765-2\",\n \"display\" : \"Allergies and adverse reactions Document\"\n }]\n },\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"entry\" : [{\n \"reference\" : \"AllergyIntolerance/fe2769fd-22c9-4307-9122-ee0466e5aebb\"\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"resource\" : {\n \"resourceType\" : \"Patient\",\n \"id\" : \"7685713c-e29e-4a75-8a90-45be7ba3be94\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Patient
Resource Patient "7685713c-e29e-4a75-8a90-45be7ba3be94"
identifier : id:\\u00a0574687583
active : true
name : Martha DeLarosa
telecom : +31788700800
gender : female
birthDate : 1972-05-01
address : Laan Van Europa 1600 Dordrecht 3317 DB NL
Contacts - Relationship Name Telecom Address * mother (RoleCode #MTH) Martha Mum +33-555-20036 Promenade des Anglais 111 Lyon 69001 FR
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.6.3\",\n \"value\" : \"574687583\"\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"DeLarosa\",\n \"given\" : [\"Martha\"]\n }],\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31788700800\",\n \"use\" : \"home\"\n }],\n \"gender\" : \"female\",\n \"birthDate\" : \"1972-05-01\",\n \"address\" : [{\n \"line\" : [\"Laan Van Europa 1600\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3317 DB\",\n \"country\" : \"NL\"\n }],\n \"contact\" : [{\n \"relationship\" : [{\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v3-RoleCode\",\n \"code\" : \"MTH\"\n }]\n }],\n \"name\" : {\n \"family\" : \"Mum\",\n \"given\" : [\"Martha\"]\n },\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+33-555-20036\",\n \"use\" : \"home\"\n }],\n \"address\" : {\n \"line\" : [\"Promenade des Anglais 111\"],\n \"city\" : \"Lyon\",\n \"postalCode\" : \"69001\",\n \"country\" : \"FR\"\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"resource\" : {\n \"resourceType\" : \"Practitioner\",\n \"id\" : \"98315ba9-ffea-41ef-b59b-a836c039858f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Practitioner
Resource Practitioner "98315ba9-ffea-41ef-b59b-a836c039858f"
identifier : id:\\u00a0129854633
active : true
name : Beetje van Hulp
Qualifications - Code * Doctor of Medicine (degreeLicenseCertificate[2.7]#MD)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.1\",\n \"value\" : \"129854633\",\n \"assigner\" : {\n \"display\" : \"CIBG\"\n }\n }],\n \"active\" : true,\n \"name\" : [{\n \"family\" : \"van Hulp\",\n \"given\" : [\"Beetje\"]\n }],\n \"qualification\" : [{\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/v2-0360\",\n \"version\" : \"2.7\",\n \"code\" : \"MD\",\n \"display\" : \"Doctor of Medicine\"\n }]\n }\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"resource\" : {\n \"resourceType\" : \"Organization\",\n \"id\" : \"bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Organization
Resource Organization "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
identifier : id:\\u00a0564738757
active : true
name : Anorg Aniza Tion BV / The best custodian ever
telecom : +31-51-34343400
address : Houttuinen 27 Dordrecht 3311 CE NL (WORK)
\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:2.16.528.1.1007.3.3\",\n \"value\" : \"564738757\"\n }],\n \"active\" : true,\n \"name\" : \"Anorg Aniza Tion BV / The best custodian ever\",\n \"telecom\" : [{\n \"system\" : \"phone\",\n \"value\" : \"+31-51-34343400\",\n \"use\" : \"work\"\n }],\n \"address\" : [{\n \"use\" : \"work\",\n \"line\" : [\"Houttuinen 27\"],\n \"city\" : \"Dordrecht\",\n \"postalCode\" : \"3311 CE\",\n \"country\" : \"NL\"\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"resource\" : {\n \"resourceType\" : \"Condition\",\n \"id\" : \"ad84b7a2-b4dd-474e-bef3-0779e6cb595f\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"cacceb57-395f-48e1-9c88-e9c9704dc2d2\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/condition-ver-status\",\n \"code\" : \"confirmed\"\n }]\n },\n \"category\" : [{\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"75326-9\",\n \"display\" : \"Problem\"\n }]\n }],\n \"severity\" : {\n \"coding\" : [{\n \"system\" : \"http://loinc.org\",\n \"code\" : \"LA6751-7\",\n \"display\" : \"Moderate\"\n }]\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"198436008\",\n \"display\" : \"Menopausal flushing (finding)\",\n \"_display\" : {\n \"extension\" : [{\n \"extension\" : [{\n \"url\" : \"lang\",\n \"valueCode\" : \"nl-NL\"\n },\n {\n \"url\" : \"content\",\n \"valueString\" : \"opvliegers\"\n }],\n \"url\" : \"http://hl7.org/fhir/StructureDefinition/translation\"\n }]\n }\n },\n {\n \"system\" : \"http://hl7.org/fhir/sid/icd-10\",\n \"code\" : \"N95.1\",\n \"display\" : \"Menopausal and female climacteric states\"\n }]\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2015\",\n \"recordedDate\" : \"2016-10\"\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6e883e5e-7648-485a-86de-3640a61601fe\",\n \"resource\" : {\n \"resourceType\" : \"MedicationStatement\",\n \"id\" : \"6e883e5e-7648-485a-86de-3640a61601fe\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8faf0319-89d3-427c-b9d1-e8c8fd390dca\"\n }],\n \"status\" : \"active\",\n \"medicationReference\" : {\n \"reference\" : \"Medication/6369a973-afc7-4617-8877-3e9811e05a5b\"\n },\n \"subject\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"effectivePeriod\" : {\n \"start\" : \"2015-03\"\n },\n \"dosage\" : [{\n \"timing\" : {\n \"repeat\" : {\n \"count\" : 1,\n \"periodUnit\" : \"d\"\n }\n },\n \"route\" : {\n \"coding\" : [{\n \"system\" : \"http://standardterms.edqm.eu\",\n \"code\" : \"20053000\",\n \"display\" : \"Oral use\"\n }]\n },\n \"doseAndRate\" : [{\n \"type\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/dose-rate-type\",\n \"code\" : \"ordered\",\n \"display\" : \"Ordered\"\n }]\n },\n \"doseQuantity\" : {\n \"value\" : 1,\n \"unit\" : \"tablet\",\n \"system\" : \"http://unitsofmeasure.org\",\n \"code\" : \"1\"\n }\n }]\n }]\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"resource\" : {\n \"resourceType\" : \"Medication\",\n \"id\" : \"6369a973-afc7-4617-8877-3e9811e05a5b\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"Generated Narrative: Medication
Resource Medication "6369a973-afc7-4617-8877-3e9811e05a5b"
code : Product containing anastrozole (medicinal product) (SNOMED CT #108774000; unknown#99872 "ANASTROZOL 1MG TABLET"; unknown#2076667 "ANASTROZOL CF TABLET FILMOMHULD 1MG"; WHO ATC #L02BG03 "anastrozole")
\"\n },\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"108774000\",\n \"display\" : \"Product containing anastrozole (medicinal product)\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.1\",\n \"code\" : \"99872\",\n \"display\" : \"ANASTROZOL 1MG TABLET\"\n },\n {\n \"system\" : \"urn:oid:2.16.840.1.113883.2.4.4.7\",\n \"code\" : \"2076667\",\n \"display\" : \"ANASTROZOL CF TABLET FILMOMHULD 1MG\"\n },\n {\n \"system\" : \"http://www.whocc.no/atc\",\n \"code\" : \"L02BG03\",\n \"display\" : \"anastrozole\"\n }]\n }\n }\n },\n {\n \"fullUrl\" : \"urn:uuid:fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"resource\" : {\n \"resourceType\" : \"AllergyIntolerance\",\n \"id\" : \"fe2769fd-22c9-4307-9122-ee0466e5aebb\",\n \"text\" : {\n \"status\" : \"generated\",\n \"div\" : \"\"\n },\n \"identifier\" : [{\n \"system\" : \"urn:oid:1.2.3.999\",\n \"value\" : \"8d9566a4-d26d-46be-a3e4-c9f3a0e5cd83\"\n }],\n \"clinicalStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical\",\n \"code\" : \"active\"\n }]\n },\n \"verificationStatus\" : {\n \"coding\" : [{\n \"system\" : \"http://terminology.hl7.org/CodeSystem/allergyintolerance-verification\",\n \"code\" : \"confirmed\"\n }]\n },\n \"type\" : \"allergy\",\n \"category\" : [\"medication\"],\n \"criticality\" : \"high\",\n \"code\" : {\n \"coding\" : [{\n \"system\" : \"http://snomed.info/sct\",\n \"code\" : \"373270004\",\n \"display\" : \"Substance with penicillin structure and antibacterial mechanism of action (substance)\"\n }]\n },\n \"patient\" : {\n \"reference\" : \"Patient/7685713c-e29e-4a75-8a90-45be7ba3be94\"\n },\n \"onsetDateTime\" : \"2010\"\n }\n }]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/sql-on-fhir.json b/http-client-tests/resources/preset-requests/sql-on-fhir.json
new file mode 100644
index 00000000..1871766d
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/sql-on-fhir.json
@@ -0,0 +1,13 @@
+{
+ "cliContext": {
+ "baseEngine": "SQL_VIEW",
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition\",\n \"select\": [\n {\n \"column\": [\n {\n \"path\": \"getResourceKey()\",\n \"name\": \"patient_id\"\n }\n ]\n },\n {\n \"column\": [\n {\n \"path\": \"line.join('\\n')\",\n \"name\": \"street\",\n \"description\": \"The full street address, including newlines if present.\"\n },\n {\n \"path\": \"use\",\n \"name\": \"use\"\n },\n {\n \"path\": \"city\",\n \"name\": \"city\"\n },\n {\n \"path\": \"postalCode\",\n \"name\": \"zip\"\n }\n ],\n \"forEach\": \"address\"\n }\n ],\n \"name\": \"patient_addresses\",\n \"status\": \"draft\",\n \"resource\": \"Patient\"\n }",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/preset-requests/us-ccda.json b/http-client-tests/resources/preset-requests/us-ccda.json
new file mode 100644
index 00000000..533bf12f
--- /dev/null
+++ b/http-client-tests/resources/preset-requests/us-ccda.json
@@ -0,0 +1,13 @@
+{
+ "cliContext": {
+ "baseEngine": "US_CCDA",
+ "locale": "en"
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.xml",
+ "fileContent": "\n\n\n\n\t\n\t\n\t\n \n \n \n\t\n\t\n\t
\n\tGood Health Hospital Care Plan \n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tBetterhalf \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\t\n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t2222 Home Street \n\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t97867 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tBoris \n\t\t\t\t\t\t\tBo \n\t\t\t\t\t\t\tBetterhalf \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t4444 Home Street \n\t\t\t\t\t\t\tBeaverton \n\t\t\t\t\t\t\tOR \n\t\t\t\t\t\t\t97867 \n\t\t\t\t\t\t\tUS \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tThe DoctorsTogether Physician Group \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1007 Health Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEllen \n\t\t\t\t\tEnter \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t1007 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tHarold \n\t\t\t\t\tHippocrates \n\t\t\t\t\tD.O. \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health HIE \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t1009 Healthcare Drive \n\t\t\t\t\tPortland \n\t\t\t\t\tOR \n\t\t\t\t\t99123 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t100 Better Health Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tCaresalot \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\tBetter Health Hospital \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t100 Better Health Rd. \n\t\t\t\t\tAnn Arbor \n\t\t\t\t\tMI \n\t\t\t\t\t97857 \n\t\t\t\t\tUS \n\t\t\t\t \n\t\t\t\t\n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IE51cnNlIE5pZ2h0aW5nYWxl \n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t1004 Healthcare Drive \n\t\t\t\tPortland \n\t\t\t\tOR \n\t\t\t\t99123 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tNurse \n\t\t\t\t\tNightingale \n\t\t\t\t\tRN \n\t\t\t\t \n\t\t\t \n\t\t\t\n\t\t\t\t\n\t\t\t\tGood Health Hospital \n\t\t\t\t\n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\tU2lnbmVkIGJ5IEV2ZSBFdmVyeXdvbWFu \n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t2222 Home Street \n\t\t\t\tBeaverton \n\t\t\t\tOR \n\t\t\t\t97867 \n\t\t\t\tUS \n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tEve \n\t\t\t\t\tEverywoman \n\t\t\t\t \n\t\t\t \n\t\t
\n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n \n\t\t \n\t \n\t\n\t\n\t\n\t\t \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n \n\t\t
\n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t17 Daws Rd. \n\t\t\t\tAnn Arbor \n\t\t\t\tMI \n\t\t\t\t97857 \n\t\t\t\tUS \n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tMrs. \n\t\t\t\t\tMartha \n\t\t\t\t\tJones \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t1004 Healthcare Drive \n\t\t\t\t\t\tPortland \n\t\t\t\t\t\tOR \n\t\t\t\t\t\t99123 \n\t\t\t\t\t\tUS \n\t\t\t\t\t \n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\tPatricia \n\t\t\t\t\t\t\tPatty \n\t\t\t\t\t\t\tPrimary \n\t\t\t\t\t\t\tM.D. \n\t\t\t\t\t\t \n\t\t\t\t\t \n\t\t\t\t \n\t\t\t \n\t\t \n\t \n\t\n\t\n\t\n\t\t\n\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\n\t\t \n\t \n\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t \n\t\t
\n\t \n\t\n\t\n \n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\tPROBLEMS \n\t\t\t\tNo Information \n\t\t\t \n\t\t \n \n\t \n ",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/session-requests/session_1_validation_1.json b/http-client-tests/resources/session-requests/session_1_validation_1.json
new file mode 100644
index 00000000..5e871526
--- /dev/null
+++ b/http-client-tests/resources/session-requests/session_1_validation_1.json
@@ -0,0 +1,14 @@
+{
+ "cliContext": {
+ "sv": "4.0.1",
+ "locale": "en",
+ "showTimes": true
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/session-requests/session_1_validation_2.json b/http-client-tests/resources/session-requests/session_1_validation_2.json
new file mode 100644
index 00000000..60794f62
--- /dev/null
+++ b/http-client-tests/resources/session-requests/session_1_validation_2.json
@@ -0,0 +1,15 @@
+{
+ "cliContext": {
+ "sv": "4.0.1",
+ "locale": "en",
+ "showTimes": true
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+ "fileType": null
+ }
+ ],
+ "sessionId": "{{SESSION_1_ID}}"
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/session-requests/session_2_validation_1.json b/http-client-tests/resources/session-requests/session_2_validation_1.json
new file mode 100644
index 00000000..2975e94f
--- /dev/null
+++ b/http-client-tests/resources/session-requests/session_2_validation_1.json
@@ -0,0 +1,14 @@
+{
+ "cliContext": {
+ "sv": "3.0.2",
+ "locale": "en",
+ "showTimes": true
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+ "fileType": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/session-requests/session_2_validation_2.json b/http-client-tests/resources/session-requests/session_2_validation_2.json
new file mode 100644
index 00000000..879877f4
--- /dev/null
+++ b/http-client-tests/resources/session-requests/session_2_validation_2.json
@@ -0,0 +1,15 @@
+{
+ "cliContext": {
+ "sv": "3.0.2",
+ "locale": "en",
+ "showTimes": true
+ },
+ "filesToValidate": [
+ {
+ "fileName": "manually_entered_file.json",
+ "fileContent": "{\n \"resourceType\": \"Observation\",\n \"id\": \"blood-pressure\",\n \"meta\": {\n \"profile\": [\n \"http://hl7.org/fhir/StructureDefinition/vitalsigns\"\n ]\n },\n \"text\": {\n \"status\": \"generated\",\n \"div\": \"Generated Narrative with Details
id : blood-pressure
meta :
identifier : urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281
basedOn :
status : final
category : Vital Signs (Details : {http://terminology.hl7.org/CodeSystem/observation-category code 'vital-signs' = 'Vital Signs', given as 'Vital Signs'})
code : Blood pressure systolic & diastolic (Details : {LOINC code '85354-9' = 'Blood pressure panel with all children optional', given as 'Blood pressure panel with all children optional'})
subject : Patient/example
effective : 17/09/2012
performer : Practitioner/example
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
bodySite : Right arm (Details : {SNOMED CT code '368209003' = 'Right upper arm', given as 'Right arm'})
component
code : Systolic blood pressure (Details : {LOINC code '8480-6' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {SNOMED CT code '271649006' = 'Systolic blood pressure', given as 'Systolic blood pressure'}; {http://acme.org/devices/clinical-codes code 'bp-s' = 'bp-s', given as 'Systolic Blood pressure'})
value : 107 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'N' = 'Normal', given as 'normal'})
component
code : Diastolic blood pressure (Details : {LOINC code '8462-4' = 'Diastolic blood pressure', given as 'Diastolic blood pressure'})
value : 60 mmHg (Details: UCUM code mm[Hg] = 'mmHg')
interpretation : Below low normal (Details : {http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation code 'L' = 'Low', given as 'low'})
\"\n },\n \"identifier\": [\n {\n \"system\": \"urn:ietf:rfc:3986\",\n \"value\": \"urn:uuid:187e0c12-8dd2-67e2-99b2-bf273c878281\"\n }\n ],\n \"basedOn\": [\n {\n \"identifier\": {\n \"system\": \"https://acme.org/identifiers\",\n \"value\": \"1234\"\n }\n }\n ],\n \"status\": \"final\",\n \"category\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/observation-category\",\n \"code\": \"vital-signs\",\n \"display\": \"Vital Signs\"\n }\n ]\n }\n ],\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"85354-9\",\n \"display\": \"Blood pressure panel with all children optional\"\n }\n ],\n \"text\": \"Blood pressure systolic & diastolic\"\n },\n \"subject\": {\n \"reference\": \"Patient/example\"\n },\n \"effectiveDateTime\": \"2012-09-17\",\n \"performer\": [\n {\n \"reference\": \"Practitioner/example\"\n }\n ],\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ],\n \"bodySite\": {\n \"coding\": [\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"368209003\",\n \"display\": \"Right arm\"\n }\n ]\n },\n \"component\": [\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8480-6\",\n \"display\": \"Systolic blood pressure\"\n },\n {\n \"system\": \"http://snomed.info/sct\",\n \"code\": \"271649006\",\n \"display\": \"Systolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 107,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"N\",\n \"display\": \"normal\"\n }\n ],\n \"text\": \"Normal\"\n }\n ]\n },\n {\n \"code\": {\n \"coding\": [\n {\n \"system\": \"http://loinc.org\",\n \"code\": \"8462-4\",\n \"display\": \"Diastolic blood pressure\"\n }\n ]\n },\n \"valueQuantity\": {\n \"value\": 60,\n \"unit\": \"mmHg\",\n \"system\": \"http://unitsofmeasure.org\",\n \"code\": \"mm[Hg]\"\n },\n \"interpretation\": [\n {\n \"coding\": [\n {\n \"system\": \"http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation\",\n \"code\": \"L\",\n \"display\": \"low\"\n }\n ],\n \"text\": \"Below low normal\"\n }\n ]\n }\n ]\n}",
+ "fileType": null
+ }
+ ],
+ "sessionId": "{{SESSION_2_ID}}"
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/sources/README.md b/http-client-tests/resources/sources/README.md
new file mode 100644
index 00000000..ee7c697e
--- /dev/null
+++ b/http-client-tests/resources/sources/README.md
@@ -0,0 +1,36 @@
+These examples are intended to test validation using several pre-defined validation engine bases (IGs, relevant
+settings, etc). The test cases are only intended to ensure that the correct settings are being used. The test cases are
+not intended to test validation itself, as this is done through fhir-test-cases.
+
+The contents of these test files are described below:
+
+
+# ccda.xml
+
+This is a combination of examples. The base of the document is this complete example:
+
+https://github.com/HL7/CDA-ccda/blob/master/input/examples/care-plan-complete-example.xml
+
+To minimize the expected errors, the problem list from the following was added to the structured body element:
+
+https://github.com/HL7/C-CDA-Examples/blob/master/Documents/CCD/CCD%202/CCD.xml
+
+Validating through CDA and CCDA will give slightly different results.
+
+# ips.json
+
+This was taken directly from https://build.fhir.org/ig/HL7/fhir-ips/Bundle-bundle-minimal.json.html
+
+# iss-nz.json
+
+This was taken from the confluence page for the NZ IPS: https://confluence.hl7.org/display/HNZ/8.+NZ+Patient+Summary+%28NZPS%29+profiling+test+track?focusedCommentId=208470365
+
+Specifically downloaded from this link: https://terminz.azurewebsites.net/fhir/Patient/$summary?profile=http://hl7.org/fhir/uv/ips/StructureDefinition/Bundle-uv-ips&identifier=https://standards.digital.health.nz/ns/nhi-id|ZKT9319&_format=json
+
+# sql-on-fhir
+
+This was taken directly from the simple example on https://build.fhir.org/ig/FHIR/sql-on-fhir-v2/ but with the additional
+structure and fields required to make it a valid resource.
+
+
+
diff --git a/http-client-tests/resources/sources/ccda.xml b/http-client-tests/resources/sources/ccda.xml
new file mode 100644
index 00000000..84be5c9e
--- /dev/null
+++ b/http-client-tests/resources/sources/ccda.xml
@@ -0,0 +1,460 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Good Health Hospital Care Plan
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2222 Home Street
+ Beaverton
+ OR
+ 97867
+ US
+
+
+
+
+
+
+
+ Eve
+
+ Betterhalf
+
+
+
+ Eve
+
+ Everywoman
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2222 Home Street
+ Beaverton
+ OR
+ 97867
+ US
+
+
+
+
+ Boris
+ Bo
+ Betterhalf
+
+
+
+
+
+
+ 4444 Home Street
+ Beaverton
+ OR
+ 97867
+ US
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The DoctorsTogether Physician Group
+
+
+ 1007 Health Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+
+
+
+
+
+
+
+ 1004 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+ Nurse
+ Nightingale
+ RN
+
+
+
+
+ Good Health Hospital
+
+
+
+
+
+
+
+
+ 1007 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+ Ellen
+ Enter
+
+
+
+
+
+
+
+
+
+ 1007 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+ Harold
+ Hippocrates
+ D.O.
+
+
+
+
+
+
+
+
+
+ Good Health HIE
+
+
+ 1009 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 100 Better Health Rd.
+ Ann Arbor
+ MI
+ 97857
+ US
+
+
+
+
+ Nurse
+ Caresalot
+ RN
+
+
+
+
+
+
+
+
+ Better Health Hospital
+
+
+ 100 Better Health Rd.
+ Ann Arbor
+ MI
+ 97857
+ US
+
+
+
+
+
+
+
+
+
+
+ U2lnbmVkIGJ5IE51cnNlIE5pZ2h0aW5nYWxl
+
+
+
+
+ 1004 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+ Nurse
+ Nightingale
+ RN
+
+
+
+
+ Good Health Hospital
+
+
+
+
+
+
+
+
+ U2lnbmVkIGJ5IEV2ZSBFdmVyeXdvbWFu
+
+
+
+
+
+ 2222 Home Street
+ Beaverton
+ OR
+ 97867
+ US
+
+
+
+
+
+ Eve
+ Everywoman
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 17 Daws Rd.
+ Ann Arbor
+ MI
+ 97857
+ US
+
+
+
+
+ Mrs.
+ Martha
+ Jones
+
+
+
+
+
+
+
+
+
+ 17 Daws Rd.
+ Ann Arbor
+ MI
+ 97857
+ US
+
+
+
+
+ Mrs.
+ Martha
+ Jones
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1004 Healthcare Drive
+ Portland
+ OR
+ 99123
+ US
+
+
+
+
+ Patricia
+ Patty
+ Primary
+ M.D.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PROBLEMS
+ No Information
+
+
+
+
+
\ No newline at end of file
diff --git a/http-client-tests/resources/sources/ips-nz.json b/http-client-tests/resources/sources/ips-nz.json
new file mode 100644
index 00000000..45f85982
--- /dev/null
+++ b/http-client-tests/resources/sources/ips-nz.json
@@ -0,0 +1,3044 @@
+{
+ "resourceType": "Bundle",
+ "id": "NZ-IPS-20231121031219",
+ "language": "en-NZ",
+ "identifier": {
+ "system": "urn:oid:2.16.724.4.8.10.200.10",
+ "value": "3d5006e9-f003-4a78-a253-40ab405b7ef2"
+ },
+ "type": "document",
+ "timestamp": "2023-11-21T03:12:19.1242772+00:00",
+ "entry": [
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Composition/9b9e4f64-c976-47e9-a8a5-4b9b0484a709",
+ "resource": {
+ "resourceType": "Composition",
+ "id": "9b9e4f64-c976-47e9-a8a5-4b9b0484a709",
+ "meta": {
+ "versionId": "1"
+ },
+ "language": "en-NZ",
+ "text": {
+ "status": "generated",
+ "div": "International Patient Summary for Iosefa Test-Fuimaono
"
+ },
+ "identifier": {
+ "system": "urn:oid:2.16.840.1.113883.2.18.7.2",
+ "value": "3d5006e9-f003-4a78-a253-40ab405b7ef2"
+ },
+ "status": "final",
+ "type": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "60591-5",
+ "display": "Patient summary Document"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "date": "2023-11-21",
+ "author": [
+ {
+ "reference": "Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b"
+ }
+ ],
+ "title": "International Patient Summary",
+ "confidentiality": "N",
+ "attester": [
+ {
+ "mode": "professional",
+ "time": "2023-11-21",
+ "party": {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ }
+ ],
+ "custodian": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "relatesTo": [
+ {
+ "code": "transforms",
+ "targetIdentifier": {
+ "system": "urn:oid:2.16.840.1.113883.2.18.7.2",
+ "value": "3d5006e9-f003-4a78-a253-40ab405b7ef2"
+ }
+ }
+ ],
+ "event": [
+ {
+ "code": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ActClass",
+ "code": "PCPR"
+ }
+ ]
+ }
+ ],
+ "period": {
+ "end": "2023-11-21"
+ }
+ }
+ ],
+ "section": [
+ {
+ "title": "Allergies and Intolerances",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "48765-2",
+ "display": "Allergies and adverse reactions Document"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": "\r\n
\r\n \r\n \r\n Code \r\n Type \r\n Recorded On \r\n Asserted By \r\n Clinical Status \r\n Verification Status \r\n \r\n \r\n \r\n \r\n Flucloxacillin-containing product \r\n Allergy \r\n \r\n Patient/ZKT9319 \r\n active \r\n confirmed \r\n \r\n \r\n Diazepam-containing product \r\n Allergy \r\n \r\n Patient/ZKT9319 \r\n active \r\n confirmed \r\n \r\n \r\n
\r\n
"
+ },
+ "entry": [
+ {
+ "reference": "AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c"
+ },
+ {
+ "reference": "AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746"
+ }
+ ]
+ },
+ {
+ "title": "Problem List",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "11450-4",
+ "display": "Problem list - Reported"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": "\r\n
\r\n \r\n \r\n Condition \r\n Category \r\n Recorded On \r\n Clinical Status \r\n Verification Status \r\n \r\n \r\n \r\n \r\n Postconcussion syndrome \r\n Problem List Item \r\n \r\n active \r\n confirmed \r\n \r\n \r\n Diabetes type 2 on insulin \r\n Problem List Item \r\n \r\n active \r\n confirmed \r\n \r\n \r\n Gout \r\n Problem List Item \r\n \r\n active \r\n confirmed \r\n \r\n \r\n Benign essential hypertension \r\n Problem List Item \r\n \r\n active \r\n confirmed \r\n \r\n \r\n Anxiety disorder due to a general medical condition \r\n Problem List Item \r\n \r\n inactive \r\n confirmed \r\n \r\n \r\n Fracture of neck of femur \r\n Problem List Item \r\n \r\n inactive \r\n confirmed \r\n \r\n \r\n
\r\n
"
+ },
+ "entry": [
+ {
+ "reference": "Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc"
+ },
+ {
+ "reference": "Condition/1923f2ca-043b-432c-9eed-404c81474e60"
+ },
+ {
+ "reference": "Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd"
+ },
+ {
+ "reference": "Condition/08992112-ac66-4c66-a803-89f80bb6d2aa"
+ },
+ {
+ "reference": "Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9"
+ },
+ {
+ "reference": "Condition/dd40111a-683f-4d72-bccc-3c6848bc0813"
+ }
+ ]
+ },
+ {
+ "title": "Medication Summary",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "10160-0",
+ "display": "History of Medication use Narrative"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": "\r\n
\r\n \r\n \r\n Drug \r\n Status \r\n Effective \r\n Instructions \r\n \r\n \r\n \r\n \r\n insulin glargine 100 international units/mL injection, 10 mL vial \r\n Active \r\n 2023-02-21 \r\n Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin. \r\n \r\n \r\n dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device \r\n Active \r\n 2023-02-21 \r\n Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals. \r\n \r\n \r\n metformin hydrochloride 1000 mg tablet \r\n Active \r\n 2023-02-21 \r\n Take ONE tablet, two times a day, with meals. \r\n \r\n \r\n amlodipine 5 mg tablet \r\n Active \r\n 2023-02-21 \r\n Take ONE tablet at any time of day, but try to make sure it's around the same time every day. \r\n \r\n \r\n losartan potassium 50 mg tablet \r\n Active \r\n 2023-02-21 \r\n Take ONE tablet daily \r\n \r\n \r\n aspirin 75 mg tablet: enteric-coated \r\n Active \r\n 2023-02-21 \r\n Take ONE tablet daily \r\n \r\n \r\n allopurinol 300 mg tablet \r\n Active \r\n 2023-02-21 \r\n Take ONE tablet daily, after meals \r\n \r\n \r\n
\r\n
"
+ },
+ "entry": [
+ {
+ "reference": "MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645"
+ },
+ {
+ "reference": "MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548"
+ },
+ {
+ "reference": "MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8"
+ },
+ {
+ "reference": "MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a"
+ },
+ {
+ "reference": "MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367"
+ },
+ {
+ "reference": "MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7"
+ },
+ {
+ "reference": "MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94"
+ }
+ ]
+ },
+ {
+ "title": "Immunizations",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "11369-6",
+ "display": "History of Immunization Narrative"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": "\r\n
\r\n \r\n \r\n Vaccine \r\n Status \r\n Occurance \r\n Route \r\n Dose # \r\n Series \r\n \r\n \r\n \r\n \r\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \r\n Completed \r\n 2022-02-01 \r\n Injection, intramuscular \r\n 2 \r\n 12 (At risk, no previous history) \r\n \r\n \r\n SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose \r\n Completed \r\n 2021-08-05 \r\n Injection, intramuscular \r\n 1 \r\n 12 (At risk, no previous history) \r\n \r\n \r\n Influenza, seasonal, injectable \r\n Completed \r\n 2019-05-20 \r\n Injection, intramuscular \r\n 1 \r\n 1 (Over 65 years (Influenza)) \r\n \r\n \r\n diphtheria, tetanus toxoids and acellular pertussis vaccine \r\n Completed \r\n 2019-04-24 \r\n Injection, intramuscular \r\n 1 \r\n 6 (Booster) \r\n \r\n \r\n tetanus and diphtheria toxoids, not adsorbed, for adult use \r\n Completed \r\n 2018-04-05 \r\n Injection, intramuscular \r\n 1 \r\n 6 (Booster) \r\n \r\n \r\n pneumococcal conjugate vaccine, 13 valent \r\n Completed \r\n 2015-09-25 \r\n Injection, intramuscular \r\n 1 \r\n 21 (PCV catch up) \r\n \r\n \r\n Influenza, seasonal, injectable \r\n Completed \r\n 2015-05-01 \r\n Injection, intramuscular \r\n 1 \r\n 1 (Over 65 years (Influenza)) \r\n \r\n \r\n
\r\n
"
+ },
+ "entry": [
+ {
+ "reference": "Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a"
+ },
+ {
+ "reference": "Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c"
+ },
+ {
+ "reference": "Immunization/33c971d3-0992-4e93-b904-6325ed4602e3"
+ },
+ {
+ "reference": "Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279"
+ },
+ {
+ "reference": "Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b"
+ },
+ {
+ "reference": "Immunization/acd3a963-0985-4679-a126-8eb9ed981d36"
+ },
+ {
+ "reference": "Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37"
+ }
+ ]
+ },
+ {
+ "title": "Procedures",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "47519-4",
+ "display": "History of Procedures Document"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": " Date(s) Procedure Location Performer Comments 01/09/2020 to 01/09/2020 Operative procedure on hip Waikato Hospital 31/03/2018 to 31/03/2018 Hand closure Samoa
"
+ },
+ "entry": [
+ {
+ "reference": "Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc"
+ },
+ {
+ "reference": "Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147"
+ }
+ ]
+ },
+ {
+ "title": "Results",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "30954-2",
+ "display": "Relevant diagnostic tests/laboratory data Narrative"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": " Result Group: Lipids Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments Total cholesterol:HDL ratio 5.1 mmol/L <4 mmol/L (high risk) H HDL Cholesterol 1.5 mmol/L >1 mmol/L N LDL Cholesterol 3.4 mmol/L <1.8 mmol/L H
Result Group: HbA1C Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Reference Range Abnormal Indicator Comments HbA1c 60 mmol/mol 50 – 55 mmol/mol (diabetes) H
"
+ },
+ "entry": [
+ {
+ "reference": "Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927"
+ },
+ {
+ "reference": "Observation/fe53810f-a341-4093-a959-4048ad62f85b"
+ },
+ {
+ "reference": "Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558"
+ },
+ {
+ "reference": "DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6"
+ },
+ {
+ "reference": "Observation/63ad8984-003c-4e44-bc56-31dd6abc0897"
+ },
+ {
+ "reference": "DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f"
+ }
+ ]
+ },
+ {
+ "title": "Vital Signs",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8716-3",
+ "display": "Vital signs"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": " Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 29 Sep 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.5 C Heart rate 84 beats/minute Respiratory rate 18 breaths/minute Systolic blood pressure 136 mm[Hg] Diastolic blood pressure 88 mm[Hg] Body height 1.84 cm Body weight 104 kg
Result Group: Vital signs, weight, height, head circumference, oxygen saturation and BMI panel Result Date: 05 Mar 2023 00:00 Result Status: completed
Result Name Value Body temperature 37.2 C Heart rate 86 beats/minute Respiratory rate 14 breaths/minute Systolic blood pressure 130 mm[Hg] Diastolic blood pressure 82 mm[Hg] Body weight 103 kg
"
+ },
+ "entry": [
+ {
+ "reference": "Observation/6f64547c-89a3-459d-a993-b89e995c1f14"
+ },
+ {
+ "reference": "Observation/da3bbb11-e485-4396-a25c-611354789c65"
+ },
+ {
+ "reference": "Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b"
+ },
+ {
+ "reference": "Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb"
+ },
+ {
+ "reference": "Observation/cf628f81-f66b-42a7-a33a-c5d38a604861"
+ },
+ {
+ "reference": "Observation/dd309bef-3b36-4422-a202-39d040113a5d"
+ },
+ {
+ "reference": "Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1"
+ },
+ {
+ "reference": "Observation/eda3092b-5228-420b-b0ce-f5eb77e73942"
+ },
+ {
+ "reference": "Observation/2d420435-f380-46e1-ad93-b9fef57f4b71"
+ },
+ {
+ "reference": "Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356"
+ },
+ {
+ "reference": "Observation/af9ae822-ae5d-4bec-88bf-4dd250350783"
+ }
+ ]
+ },
+ {
+ "title": "Social History",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "29762-2",
+ "display": "Social history Narrative"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": " Type Item Date(s) Comment other Worked as a forestry worker. Worked as a forestry worker. Was always physically active until 2020 fall.Has had subsequent falls. Now depends on a walker or scooter. smoking Ex-smoker 30/06/2005 30 - pack - year smoking history, quit smoking ~2005.
"
+ },
+ "entry": [
+ {
+ "reference": "Observation/33624327-7e1b-4912-bca1-2d0c8d36b952"
+ }
+ ]
+ },
+ {
+ "title": "Functional Status",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "47420-5",
+ "display": "Functional status assessment note"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": " Functional Condition Effective Dates Condition Status Often confused, struggles to communicate in English Active Depends on a walking frame or electric scooter to get around. Active Doesn’t leave the house much. Active Relies on caregiver Cindy for assistance with many activities of daily living. Active Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised. Active
"
+ },
+ "entry": [
+ {
+ "reference": "Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb"
+ },
+ {
+ "reference": "Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003"
+ },
+ {
+ "reference": "Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f"
+ },
+ {
+ "reference": "Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4"
+ },
+ {
+ "reference": "Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Patient/ZKT9319",
+ "resource": {
+ "resourceType": "Patient",
+ "id": "ZKT9319",
+ "text": {
+ "status": "generated",
+ "div": "Name: Iosefa Test-Fuimaono
"
+ },
+ "identifier": [
+ {
+ "system": "https://standards.digital.health.nz/ns/nhi-id",
+ "value": "ZKT9319"
+ }
+ ],
+ "name": [
+ {
+ "use": "usual",
+ "family": "Test-Fuimaono",
+ "given": [
+ "Iosefa"
+ ]
+ }
+ ],
+ "gender": "male",
+ "birthDate": "1950-07-04",
+ "address": [
+ {
+ "use": "home",
+ "type": "physical",
+ "line": [
+ "Flat 1",
+ "1 Brooklyn Road",
+ "Claudelands"
+ ],
+ "city": "Hamilton",
+ "postalCode": "3214",
+ "country": "NZ"
+ }
+ ],
+ "maritalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-MaritalStatus",
+ "code": "W",
+ "display": "Widowed"
+ }
+ ]
+ },
+ "contact": [
+ {
+ "relationship": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v2-0131",
+ "code": "N",
+ "display": "Next-of-Kin"
+ }
+ ]
+ }
+ ],
+ "name": {
+ "use": "usual",
+ "family": "Test-Fuimaono",
+ "given": [
+ "Cindy",
+ "Test-Fuimaono"
+ ]
+ },
+ "telecom": [
+ {
+ "system": "phone",
+ "value": "021 111111",
+ "use": "mobile"
+ }
+ ],
+ "address": {
+ "use": "home",
+ "type": "physical",
+ "line": [
+ "Flat 1",
+ "1 Brooklyn Road",
+ "Claudelands"
+ ],
+ "city": "Hamilton",
+ "postalCode": "3214",
+ "country": "NZ"
+ }
+ },
+ {
+ "relationship": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v2-0131",
+ "code": "C",
+ "display": "Emergency Contact"
+ }
+ ]
+ }
+ ],
+ "name": {
+ "use": "usual",
+ "family": "Test-Fuimaono",
+ "given": [
+ "Cindy",
+ "Test-Fuimaono"
+ ]
+ },
+ "telecom": [
+ {
+ "system": "phone",
+ "value": "021 111111",
+ "use": "mobile"
+ }
+ ],
+ "address": {
+ "use": "home",
+ "type": "physical",
+ "line": [
+ "Flat 1",
+ "1 Brooklyn Road",
+ "Claudelands"
+ ],
+ "city": "Hamilton",
+ "postalCode": "3214",
+ "country": "NZ"
+ }
+ }
+ ],
+ "communication": [
+ {
+ "language": {
+ "text": "en-NZ"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Organization/9c9542df-e45f-4131-9d44-8f5974e56d5b",
+ "resource": {
+ "resourceType": "Organization",
+ "id": "9c9542df-e45f-4131-9d44-8f5974e56d5b",
+ "text": {
+ "status": "generated",
+ "div": "Name: Fairfield Medical Centre
"
+ },
+ "identifier": [
+ {
+ "system": "https://standards.digital.health.nz/ns/hpi-facility-id",
+ "value": "F0U044-C"
+ }
+ ],
+ "name": "Fairfield Medical Centre"
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244",
+ "resource": {
+ "resourceType": "PractitionerRole",
+ "id": "c9288aea-5e73-4182-8231-aacbe50d3244",
+ "text": {
+ "status": "generated",
+ "div": "Role: Doctor
"
+ },
+ "practitioner": {
+ "reference": "Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23"
+ },
+ "code": [
+ {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "158965000",
+ "display": "Doctor"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Practitioner/4d4b76bf-55b5-40b8-a130-99ea24a84c23",
+ "resource": {
+ "resourceType": "Practitioner",
+ "id": "4d4b76bf-55b5-40b8-a130-99ea24a84c23",
+ "text": {
+ "status": "generated",
+ "div": "Name: Dr James Test-Smith
"
+ },
+ "name": [
+ {
+ "use": "usual",
+ "family": "Test-Smith",
+ "given": [
+ "Dr",
+ "James",
+ "Test-Smith"
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b",
+ "resource": {
+ "resourceType": "Organization",
+ "id": "644f2fb9-c264-4c32-898b-4048dddd6d1b",
+ "text": {
+ "status": "generated",
+ "div": "Name: Fairfield Medical Centre
"
+ },
+ "identifier": [
+ {
+ "system": "https://standards.digital.health.nz/ns/hpi-facility-id",
+ "value": "F0U044-C"
+ }
+ ],
+ "name": "Fairfield Medical Centre"
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Location/F05076-A",
+ "resource": {
+ "resourceType": "Location",
+ "id": "F05076-A",
+ "text": {
+ "status": "generated",
+ "div": "\r\n
Waikato Hospital \r\n
\r\n \r\n Identifier \r\n F05076-A \r\n \r\n \r\n Identifier System \r\n https://standards.digital.health.nz/ns/hpi-facility-id \r\n \r\n \r\n Status \r\n Active \r\n \r\n \r\n Mode \r\n Instance \r\n \r\n \r\n Type \r\n Location \r\n \r\n \r\n Address \r\n 183 Pembroke Street, Waikato Hospital, Hamilton 3204 \r\n \r\n
\r\n
"
+ },
+ "identifier": [
+ {
+ "system": "https://standards.digital.health.nz/ns/hpi-facility-id",
+ "value": "F05076-A"
+ }
+ ],
+ "status": "active",
+ "name": "Waikato Hospital"
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/AllergyIntolerance/1dfacb6d-4260-4fd4-84e9-a1c13aafa72c",
+ "resource": {
+ "resourceType": "AllergyIntolerance",
+ "id": "1dfacb6d-4260-4fd4-84e9-a1c13aafa72c",
+ "text": {
+ "status": "generated",
+ "div": "Flucloxacillin-containing product (Penicillin adverse reaction)
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "type": "allergy",
+ "category": [
+ "medication"
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "96067005",
+ "display": "Flucloxacillin-containing product"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "asserter": {
+ "reference": "Patient/ZKT9319"
+ },
+ "reaction": [
+ {
+ "manifestation": [
+ {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "292954005",
+ "display": "Penicillin adverse reaction"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/AllergyIntolerance/e9b9aeaf-e5ac-4f72-b01d-df4c6107f746",
+ "resource": {
+ "resourceType": "AllergyIntolerance",
+ "id": "e9b9aeaf-e5ac-4f72-b01d-df4c6107f746",
+ "text": {
+ "status": "generated",
+ "div": "Diazepam-containing product (Diazepam adverse reaction)
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "type": "allergy",
+ "category": [
+ "medication"
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "48546005",
+ "display": "Diazepam-containing product"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "asserter": {
+ "reference": "Patient/ZKT9319"
+ },
+ "reaction": [
+ {
+ "manifestation": [
+ {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "292360004",
+ "display": "Diazepam adverse reaction"
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/2eafb947-e816-4d9f-978b-c91d0dbe4acc",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "2eafb947-e816-4d9f-978b-c91d0dbe4acc",
+ "text": {
+ "status": "generated",
+ "div": "Postconcussion
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "40425004",
+ "display": "Postconcussion syndrome"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/1923f2ca-043b-432c-9eed-404c81474e60",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "1923f2ca-043b-432c-9eed-404c81474e60",
+ "text": {
+ "status": "generated",
+ "div": "Diabetes type 2 on insulin
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "237599002",
+ "display": "Diabetes type 2 on insulin"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "4f40d5e3-9a5f-4e3f-b799-c3378da8e7dd",
+ "text": {
+ "status": "generated",
+ "div": "Gout
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "90560007",
+ "display": "Gout"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/08992112-ac66-4c66-a803-89f80bb6d2aa",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "08992112-ac66-4c66-a803-89f80bb6d2aa",
+ "text": {
+ "status": "generated",
+ "div": "Benign essential hypertension
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "1201005",
+ "display": "Benign essential hypertension"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/9b54fc7a-8302-45cc-9ff6-e60c623c5bf9",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "9b54fc7a-8302-45cc-9ff6-e60c623c5bf9",
+ "text": {
+ "status": "generated",
+ "div": "Anxiety disorder due to a general medical condition
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "inactive"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "52910006",
+ "display": "Anxiety disorder due to a general medical condition"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/dd40111a-683f-4d72-bccc-3c6848bc0813",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "dd40111a-683f-4d72-bccc-3c6848bc0813",
+ "text": {
+ "status": "generated",
+ "div": "Fracture of neck of femur
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "inactive"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-category",
+ "code": "problem-list-item",
+ "display": "Problem List Item"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "5913000",
+ "display": "Fracture of neck of femur"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/4464bdfe-dc87-4179-a10d-2884c975a6eb",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "4464bdfe-dc87-4179-a10d-2884c975a6eb",
+ "text": {
+ "status": "generated",
+ "div": "Often confused, struggles to communicate in English
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "code": {
+ "text": "Often confused, struggles to communicate in English"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/f0982a2a-8eb2-4b1a-9e73-6a82d2102003",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "f0982a2a-8eb2-4b1a-9e73-6a82d2102003",
+ "text": {
+ "status": "generated",
+ "div": "Depends on a walking frame or electric scooter to get around.
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "code": {
+ "text": "Depends on a walking frame or electric scooter to get around."
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/94c0216a-183b-45e9-9e98-f244ac0b4d4f",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "94c0216a-183b-45e9-9e98-f244ac0b4d4f",
+ "text": {
+ "status": "generated",
+ "div": "Doesn’t leave the house much.
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "code": {
+ "text": "Doesn’t leave the house much."
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/14863bd8-1d6d-4c85-9bcc-1b33699908c4",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "14863bd8-1d6d-4c85-9bcc-1b33699908c4",
+ "text": {
+ "status": "generated",
+ "div": "Relies on caregiver Cindy for assistance with many activities of daily living.
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "code": {
+ "text": "Relies on caregiver Cindy for assistance with many activities of daily living."
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Condition/b008f275-c141-4cd5-b1bb-46c399eaf42d",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "b008f275-c141-4cd5-b1bb-46c399eaf42d",
+ "text": {
+ "status": "generated",
+ "div": "Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised.
"
+ },
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "code": {
+ "text": "Family has made the decision to transfer Iosefa to residential care soon, arrangements currently being finalised."
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/8ecbe74a-a3fa-4edf-8133-44ca8903a645",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "8ecbe74a-a3fa-4edf-8133-44ca8903a645",
+ "text": {
+ "status": "generated",
+ "div": "10368421000116106 (insulin glargine 100 international units/mL injection, 10 mL vial)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "126212009",
+ "display": "Product containing insulin glargine (medicinal product)"
+ }
+ ],
+ "text": "insulin glargine 100 international units/mL injection, 10 mL vial"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Inject 20 units per day into your upper arms, abdomen or thights.You should vary the site where you inject each dose of Lantus. This helps reduce your risk of certain side effects, such as pits or lumps in your skin.",
+ "timing": {
+ "repeat": {
+ "frequency": 1,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "34206005",
+ "display": "subcutaneous route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "unit",
+ "system": "http://snomed.info/sct",
+ "code": "767525000"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/06c4eda2-df30-4231-af09-0135e5f84548",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "06c4eda2-df30-4231-af09-0135e5f84548",
+ "text": {
+ "status": "generated",
+ "div": "47230201000116108 (dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "714081009",
+ "display": "Product containing dulaglutide (medicinal product)"
+ }
+ ],
+ "text": "dulaglutide 1.5 mg/0.5 mL injection, prefilled injection device"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Inject once a week, on the same day each week, into the skin of your stomach, thigh or upper arm. You can use the same area of your body each time, but choose a different place within that area. You can inject it any time of the day, with or without meals.",
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "34206005",
+ "display": "subcutaneous route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/4b5f40b9-f59c-4090-81b1-4609ac6b7af8",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "4b5f40b9-f59c-4090-81b1-4609ac6b7af8",
+ "text": {
+ "status": "generated",
+ "div": "44221701000116102 (metformin hydrochloride 1000 mg tablet)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "109081006",
+ "display": "Product containing metformin (medicinal product)"
+ }
+ ],
+ "text": "metformin hydrochloride 1000 mg tablet"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Take ONE tablet, two times a day, with meals.",
+ "timing": {
+ "repeat": {
+ "frequency": 2,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "26643006",
+ "display": "Oral route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "Tablet - unit of product usage",
+ "system": "http://snomed.info/sct",
+ "code": "428673006"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/e19dc087-0055-4feb-a847-72e77cf55a0a",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "e19dc087-0055-4feb-a847-72e77cf55a0a",
+ "text": {
+ "status": "generated",
+ "div": "10109621000116108 (amlodipine 5 mg tablet)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "108537001",
+ "display": "Product containing amlodipine (medicinal product)"
+ }
+ ],
+ "text": "amlodipine 5 mg tablet"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Take ONE tablet at any time of day, but try to make sure it's around the same time every day.",
+ "timing": {
+ "repeat": {
+ "frequency": 1,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "26643006",
+ "display": "Oral route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "Tablet - unit of product usage",
+ "system": "http://snomed.info/sct",
+ "code": "428673006"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/f7a26186-dd57-420f-95be-c0deeee49367",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "f7a26186-dd57-420f-95be-c0deeee49367",
+ "text": {
+ "status": "generated",
+ "div": "10195211000116102 (losartan potassium 50 mg tablet)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "96309000",
+ "display": "Product containing losartan (medicinal product)"
+ }
+ ],
+ "text": "losartan potassium 50 mg tablet"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Take ONE tablet daily",
+ "timing": {
+ "repeat": {
+ "frequency": 1,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "26643006",
+ "display": "Oral route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "Tablet - unit of product usage",
+ "system": "http://snomed.info/sct",
+ "code": "428673006"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/b6b49f33-a0e4-4b94-92f3-caa3267ad4f7",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "b6b49f33-a0e4-4b94-92f3-caa3267ad4f7",
+ "text": {
+ "status": "generated",
+ "div": "10077081000116106 (aspirin 75 mg tablet: enteric-coated)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "7947003",
+ "display": "Product containing aspirin (medicinal product)"
+ }
+ ],
+ "text": "aspirin 75 mg tablet: enteric-coated"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Take ONE tablet daily",
+ "timing": {
+ "repeat": {
+ "frequency": 1,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "26643006",
+ "display": "Oral route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "Tablet - unit of product usage",
+ "system": "http://snomed.info/sct",
+ "code": "428673006"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/MedicationStatement/ce2395b9-d7ef-4df0-b38f-fc9be0e44f94",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "ce2395b9-d7ef-4df0-b38f-fc9be0e44f94",
+ "text": {
+ "status": "generated",
+ "div": "10030521000116104 (allopurinol 300 mg tablet)
"
+ },
+ "status": "active",
+ "medicationCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "25246002",
+ "display": "Product containing allopurinol (medicinal product)"
+ }
+ ],
+ "text": "allopurinol 300 mg tablet"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-02-21",
+ "informationSource": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ },
+ "dosage": [
+ {
+ "text": "Take ONE tablet daily, after meals",
+ "timing": {
+ "repeat": {
+ "frequency": 1,
+ "period": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "26643006",
+ "display": "Oral route"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "Tablet - unit of product usage",
+ "system": "http://snomed.info/sct",
+ "code": "428673006"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/998e59d9-a7f4-4503-b08e-85ce9b206b0a",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "998e59d9-a7f4-4503-b08e-85ce9b206b0a",
+ "text": {
+ "status": "generated",
+ "div": "208 (Pfizer/BioNtech)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "208",
+ "display": "SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2022-02-01",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "12 (At risk, no previous history)",
+ "doseNumberPositiveInt": 2
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/fc6b3454-527b-4deb-a266-7f52c63d0d3c",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "fc6b3454-527b-4deb-a266-7f52c63d0d3c",
+ "text": {
+ "status": "generated",
+ "div": "208 (Pfizer/BioNtech)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "208",
+ "display": "SARS-COV-2 (COVID-19) vaccine, mRNA, spike protein, LNP, preservative free, 30 mcg/0.3mL dose"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2021-08-05",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "12 (At risk, no previous history)",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/33c971d3-0992-4e93-b904-6325ed4602e3",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "33c971d3-0992-4e93-b904-6325ed4602e3",
+ "text": {
+ "status": "generated",
+ "div": "99006 (Influenza)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "141",
+ "display": "Influenza, seasonal, injectable"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2019-05-20",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "1 (Over 65 years (Influenza))",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/12c253d4-20e8-4dd4-935c-fd1ec8a49279",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "12c253d4-20e8-4dd4-935c-fd1ec8a49279",
+ "text": {
+ "status": "generated",
+ "div": "20 (DTaP)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "20",
+ "display": "diphtheria, tetanus toxoids and acellular pertussis vaccine"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2019-04-24",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "6 (Booster)",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/70308bba-2bc4-4505-ba9b-520f9d3dc30b",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "70308bba-2bc4-4505-ba9b-520f9d3dc30b",
+ "text": {
+ "status": "generated",
+ "div": " [Tetanus booster (given as DT)]
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "138",
+ "display": "tetanus and diphtheria toxoids, not adsorbed, for adult use"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2018-04-05",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "6 (Booster)",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/acd3a963-0985-4679-a126-8eb9ed981d36",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "acd3a963-0985-4679-a126-8eb9ed981d36",
+ "text": {
+ "status": "generated",
+ "div": "133 (PCV13)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "133",
+ "display": "pneumococcal conjugate vaccine, 13 valent"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2015-09-25",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "21 (PCV catch up)",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Immunization/bae44614-43cc-4df4-94b3-c26d34b0ea37",
+ "resource": {
+ "resourceType": "Immunization",
+ "id": "bae44614-43cc-4df4-94b3-c26d34b0ea37",
+ "text": {
+ "status": "generated",
+ "div": "99006 (Influenza)
"
+ },
+ "status": "completed",
+ "vaccineCode": {
+ "coding": [
+ {
+ "system": "http://hl7.org/fhir/sid/cvx",
+ "code": "141",
+ "display": "Influenza, seasonal, injectable"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/ZKT9319"
+ },
+ "occurrenceDateTime": "2015-05-01",
+ "site": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "16217701000119102",
+ "display": "Structure of left deltoid muscle"
+ }
+ ]
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RouteOfAdministration",
+ "code": "IM",
+ "display": "Injection, intramuscular"
+ }
+ ]
+ },
+ "performer": [
+ {
+ "actor": {
+ "reference": "Organization/644f2fb9-c264-4c32-898b-4048dddd6d1b"
+ }
+ }
+ ],
+ "protocolApplied": [
+ {
+ "series": "1 (Over 65 years (Influenza))",
+ "doseNumberPositiveInt": 1
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Procedure/8414198c-a43b-4ef1-b06f-3b39fb4b39cc",
+ "resource": {
+ "resourceType": "Procedure",
+ "id": "8414198c-a43b-4ef1-b06f-3b39fb4b39cc",
+ "text": {
+ "status": "generated",
+ "div": "Operative procedure on hip
"
+ },
+ "status": "unknown",
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "265132005",
+ "display": "Primary open reduction and internal fixation of proximal femoral fracture with screw/nail and plate device"
+ }
+ ],
+ "text": "Operative procedure on hip"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "performedDateTime": "2020-09-01",
+ "location": {
+ "reference": "Location/F05076-A"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Procedure/1096ab80-e982-41b3-85c2-8e1d2466d147",
+ "resource": {
+ "resourceType": "Procedure",
+ "id": "1096ab80-e982-41b3-85c2-8e1d2466d147",
+ "text": {
+ "status": "generated",
+ "div": "Hand closure
"
+ },
+ "status": "unknown",
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "287903004",
+ "display": "Suturing of hand"
+ }
+ ],
+ "text": "Hand closure"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "performedDateTime": "2018-03-31"
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/DiagnosticReport/9e0d995f-a78d-45f4-b3aa-23037972a3e6",
+ "resource": {
+ "resourceType": "DiagnosticReport",
+ "id": "9e0d995f-a78d-45f4-b3aa-23037972a3e6",
+ "text": {
+ "status": "generated",
+ "div": " [Lipids]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v2-0074",
+ "code": "LAB",
+ "display": "Laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[Lipids]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "result": [
+ {
+ "reference": "Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927"
+ },
+ {
+ "reference": "Observation/fe53810f-a341-4093-a959-4048ad62f85b"
+ },
+ {
+ "reference": "Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/DiagnosticReport/2da4116e-7158-4d59-b6c4-873b37f7d65f",
+ "resource": {
+ "resourceType": "DiagnosticReport",
+ "id": "2da4116e-7158-4d59-b6c4-873b37f7d65f",
+ "text": {
+ "status": "generated",
+ "div": " [HbA1C]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v2-0074",
+ "code": "LAB",
+ "display": "Laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[HbA1C]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "result": [
+ {
+ "reference": "Observation/63ad8984-003c-4e44-bc56-31dd6abc0897"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/2f3ad263-1b4e-443b-95ca-66d2abb6e927",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "2f3ad263-1b4e-443b-95ca-66d2abb6e927",
+ "text": {
+ "status": "generated",
+ "div": " [Total cholesterol:HDL ratio]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[Total cholesterol:HDL ratio]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3"
+ }
+ ],
+ "valueQuantity": {
+ "value": 5.1,
+ "unit": "mmol/L",
+ "system": "http://unitsofmeasure.org",
+ "code": "mmol/L"
+ },
+ "interpretation": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation",
+ "code": "H",
+ "display": "High"
+ }
+ ]
+ }
+ ],
+ "referenceRange": [
+ {
+ "text": "<4 mmol/L (high risk)"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/fe53810f-a341-4093-a959-4048ad62f85b",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "fe53810f-a341-4093-a959-4048ad62f85b",
+ "text": {
+ "status": "generated",
+ "div": " [HDL Cholesterol]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[HDL Cholesterol]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3"
+ }
+ ],
+ "valueQuantity": {
+ "value": 1.5,
+ "unit": "mmol/L",
+ "system": "http://unitsofmeasure.org",
+ "code": "mmol/L"
+ },
+ "interpretation": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation",
+ "code": "N",
+ "display": "Normal"
+ }
+ ]
+ }
+ ],
+ "referenceRange": [
+ {
+ "text": ">1 mmol/L"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/6adb76b4-73f3-4552-87a6-09ac3dc1f558",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "6adb76b4-73f3-4552-87a6-09ac3dc1f558",
+ "text": {
+ "status": "generated",
+ "div": " [LDL Cholesterol]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[LDL Cholesterol]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3"
+ }
+ ],
+ "valueQuantity": {
+ "value": 3.4,
+ "unit": "mmol/L",
+ "system": "http://unitsofmeasure.org",
+ "code": "mmol/L"
+ },
+ "interpretation": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation",
+ "code": "H",
+ "display": "High"
+ }
+ ]
+ }
+ ],
+ "referenceRange": [
+ {
+ "text": "<1.8 mmol/L"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/63ad8984-003c-4e44-bc56-31dd6abc0897",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "63ad8984-003c-4e44-bc56-31dd6abc0897",
+ "text": {
+ "status": "generated",
+ "div": " [HbA1c]
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "laboratory"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "text": "[HbA1c]"
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3"
+ }
+ ],
+ "valueQuantity": {
+ "value": 60,
+ "unit": "mmol/mol",
+ "system": "http://unitsofmeasure.org",
+ "code": "mmol/mol"
+ },
+ "interpretation": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation",
+ "code": "H",
+ "display": "High"
+ }
+ ]
+ }
+ ],
+ "referenceRange": [
+ {
+ "text": "50 – 55 mmol/mol (diabetes)"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/6f64547c-89a3-459d-a993-b89e995c1f14",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "6f64547c-89a3-459d-a993-b89e995c1f14",
+ "text": {
+ "status": "generated",
+ "div": "Body temperature
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8310-5",
+ "display": "Body temperature"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 37.5,
+ "unit": "Cel",
+ "system": "http://unitsofmeasure.org",
+ "code": "Cel"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/da3bbb11-e485-4396-a25c-611354789c65",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "da3bbb11-e485-4396-a25c-611354789c65",
+ "text": {
+ "status": "generated",
+ "div": "Heart rate
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8867-4",
+ "display": "Heart rate"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 84,
+ "unit": "/min",
+ "system": "http://unitsofmeasure.org",
+ "code": "/min"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/5dead0bd-80c7-42f7-9720-3aaf047eb89b",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "5dead0bd-80c7-42f7-9720-3aaf047eb89b",
+ "text": {
+ "status": "generated",
+ "div": "Respiratory rate
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "9279-1",
+ "display": "Respiratory rate"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 18,
+ "unit": "/min",
+ "system": "http://unitsofmeasure.org",
+ "code": "/min"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/126f25f0-d921-4d9a-85a2-5b847cfb89fb",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "126f25f0-d921-4d9a-85a2-5b847cfb89fb",
+ "text": {
+ "status": "generated",
+ "div": "Blood pressure panel with all children optional
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "85354-9",
+ "display": "Blood pressure panel with all children optional"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "component": [
+ {
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8480-6",
+ "display": "Systolic blood pressure"
+ }
+ ]
+ },
+ "valueQuantity": {
+ "value": 136,
+ "unit": "mmHg",
+ "system": "http://unitsofmeasure.org",
+ "code": "mm[Hg]"
+ }
+ },
+ {
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8462-4",
+ "display": "Diastolic blood pressure"
+ }
+ ]
+ },
+ "valueQuantity": {
+ "value": 88,
+ "unit": "mmHg",
+ "system": "http://unitsofmeasure.org",
+ "code": "mm[Hg]"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/cf628f81-f66b-42a7-a33a-c5d38a604861",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "cf628f81-f66b-42a7-a33a-c5d38a604861",
+ "text": {
+ "status": "generated",
+ "div": "Body height
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8302-2",
+ "display": "Body height"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 1.84,
+ "unit": "cm",
+ "system": "http://unitsofmeasure.org",
+ "code": "cm"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/dd309bef-3b36-4422-a202-39d040113a5d",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "dd309bef-3b36-4422-a202-39d040113a5d",
+ "text": {
+ "status": "generated",
+ "div": "Body weight
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "29463-7",
+ "display": "Body weight"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-09-29T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 104,
+ "unit": "kg",
+ "system": "http://unitsofmeasure.org",
+ "code": "kg"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "4c5e0a16-2e2c-47cc-8e1d-a87afee4d6f1",
+ "text": {
+ "status": "generated",
+ "div": "Body temperature
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8310-5",
+ "display": "Body temperature"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 37.2,
+ "unit": "Cel",
+ "system": "http://unitsofmeasure.org",
+ "code": "Cel"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/eda3092b-5228-420b-b0ce-f5eb77e73942",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "eda3092b-5228-420b-b0ce-f5eb77e73942",
+ "text": {
+ "status": "generated",
+ "div": "Heart rate
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8867-4",
+ "display": "Heart rate"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 86,
+ "unit": "/min",
+ "system": "http://unitsofmeasure.org",
+ "code": "/min"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/2d420435-f380-46e1-ad93-b9fef57f4b71",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "2d420435-f380-46e1-ad93-b9fef57f4b71",
+ "text": {
+ "status": "generated",
+ "div": "Respiratory rate
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "9279-1",
+ "display": "Respiratory rate"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 14,
+ "unit": "/min",
+ "system": "http://unitsofmeasure.org",
+ "code": "/min"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/7a422837-80f5-4fa6-b3ac-8a0e44b99356",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "7a422837-80f5-4fa6-b3ac-8a0e44b99356",
+ "text": {
+ "status": "generated",
+ "div": "Blood pressure panel with all children optional
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "85354-9",
+ "display": "Blood pressure panel with all children optional"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "component": [
+ {
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8480-6",
+ "display": "Systolic blood pressure"
+ }
+ ]
+ },
+ "valueQuantity": {
+ "value": 130,
+ "unit": "mmHg",
+ "system": "http://unitsofmeasure.org",
+ "code": "mm[Hg]"
+ }
+ },
+ {
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "8462-4",
+ "display": "Diastolic blood pressure"
+ }
+ ]
+ },
+ "valueQuantity": {
+ "value": 82,
+ "unit": "mmHg",
+ "system": "http://unitsofmeasure.org",
+ "code": "mm[Hg]"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/af9ae822-ae5d-4bec-88bf-4dd250350783",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "af9ae822-ae5d-4bec-88bf-4dd250350783",
+ "text": {
+ "status": "generated",
+ "div": "Body weight
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "vital-signs"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "29463-7",
+ "display": "Body weight"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2023-03-05T00:00:00+00:00",
+ "performer": [
+ {
+ "reference": "PractitionerRole/c9288aea-5e73-4182-8231-aacbe50d3244"
+ }
+ ],
+ "valueQuantity": {
+ "value": 103,
+ "unit": "kg",
+ "system": "http://unitsofmeasure.org",
+ "code": "kg"
+ }
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/Observation/33624327-7e1b-4912-bca1-2d0c8d36b952",
+ "resource": {
+ "resourceType": "Observation",
+ "id": "33624327-7e1b-4912-bca1-2d0c8d36b952",
+ "text": {
+ "status": "generated",
+ "div": "Tobacco smoking status
"
+ },
+ "status": "final",
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/observation-category",
+ "code": "social-history"
+ }
+ ]
+ }
+ ],
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "72166-2",
+ "display": "Tobacco smoking status"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/ZKT9319"
+ },
+ "effectiveDateTime": "2005-06-30",
+ "performer": [
+ {
+ "reference": "Patient/ZKT9319"
+ }
+ ],
+ "valueCodeableConcept": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "LA15920-4",
+ "display": "Former smoker"
+ }
+ ]
+ },
+ "note": [
+ {
+ "text": "30 - pack - year smoking history, quit smoking ~2005."
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "https://terminz.azurewebsites.net/fhir/PractitionerRole/8363e64e-f639-4f55-bd3c-6302bf87a6d3",
+ "resource": {
+ "resourceType": "PractitionerRole",
+ "id": "8363e64e-f639-4f55-bd3c-6302bf87a6d3",
+ "text": {
+ "status": "generated",
+ "div": "Role: Clinical pathologist
"
+ },
+ "code": [
+ {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "81464008",
+ "display": "Clinical pathologist"
+ }
+ ]
+ }
+ ]
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/sources/ips.json b/http-client-tests/resources/sources/ips.json
new file mode 100644
index 00000000..056dc5de
--- /dev/null
+++ b/http-client-tests/resources/sources/ips.json
@@ -0,0 +1,555 @@
+{
+ "resourceType": "Bundle",
+ "id": "bundle-minimal",
+ "language": "en-US",
+ "identifier": {
+ "system": "urn:oid:2.16.724.4.8.10.200.10",
+ "value": "28b95815-76ce-457b-b7ae-a972e527db40"
+ },
+ "type": "document",
+ "timestamp": "2020-12-11T14:30:00+01:00",
+ "entry": [
+ {
+ "fullUrl": "urn:uuid:6e1fb74a-742b-4c7b-8487-171dacb88766",
+ "resource": {
+ "resourceType": "Composition",
+ "id": "6e1fb74a-742b-4c7b-8487-171dacb88766",
+ "text": {
+ "status": "generated",
+ "div": "Generated Narrative
Resource \"6e1fb74a-742b-4c7b-8487-171dacb88766\"
status : final
type : Patient summary Document (LOINC #60591-5)
date : 2020-12-11 02:30:00+0100
author : Beetje van Hulp, MD
title : Patient Summary as of December 11, 2020 14:30
confidentiality : N
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Beetje van Hulp, MD
attester
mode : legal
time : 2020-12-11 02:30:00+0100
party : Anorg Aniza Tion BV
custodian : Anorg Aniza Tion BV
RelatesTos - Code Target[x] * appends id: 20e12ce3-857f-49c0-b888-cb670597f191
Events - Code Period * care provision (ActClass #PCPR) ?? --> 2020-12-11 02:30:00+0100
"
+ },
+ "status": "final",
+ "type": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "60591-5",
+ "display": "Patient summary Document"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/7685713c-e29e-4a75-8a90-45be7ba3be94"
+ },
+ "date": "2020-12-11T14:30:00+01:00",
+ "author": [
+ {
+ "reference": "Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f"
+ }
+ ],
+ "title": "Patient Summary as of December 11, 2020 14:30",
+ "confidentiality": "N",
+ "attester": [
+ {
+ "mode": "legal",
+ "time": "2020-12-11T14:30:00+01:00",
+ "party": {
+ "reference": "Practitioner/98315ba9-ffea-41ef-b59b-a836c039858f"
+ }
+ },
+ {
+ "mode": "legal",
+ "time": "2020-12-11T14:30:00+01:00",
+ "party": {
+ "reference": "Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
+ }
+ }
+ ],
+ "custodian": {
+ "reference": "Organization/bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
+ },
+ "relatesTo": [
+ {
+ "code": "appends",
+ "targetIdentifier": {
+ "system": "urn:oid:2.16.724.4.8.10.200.10",
+ "value": "20e12ce3-857f-49c0-b888-cb670597f191"
+ }
+ }
+ ],
+ "event": [
+ {
+ "code": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-ActClass",
+ "code": "PCPR"
+ }
+ ]
+ }
+ ],
+ "period": {
+ "end": "2020-12-11T14:30:00+01:00"
+ }
+ }
+ ],
+ "section": [
+ {
+ "title": "Active Problems",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "11450-4",
+ "display": "Problem list Reported"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": ""
+ },
+ "entry": [
+ {
+ "reference": "Condition/ad84b7a2-b4dd-474e-bef3-0779e6cb595f"
+ }
+ ]
+ },
+ {
+ "title": "Medication",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "10160-0",
+ "display": "History of Medication use Narrative"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": "Medication Name : Oral anastrozole 1mg tablet
Code :
Status : Active, started March 2015
Instructions: Take 1 time per day
"
+ },
+ "entry": [
+ {
+ "reference": "MedicationStatement/6e883e5e-7648-485a-86de-3640a61601fe"
+ }
+ ]
+ },
+ {
+ "title": "Allergies and Intolerances",
+ "code": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "48765-2",
+ "display": "Allergies and adverse reactions Document"
+ }
+ ]
+ },
+ "text": {
+ "status": "generated",
+ "div": ""
+ },
+ "entry": [
+ {
+ "reference": "AllergyIntolerance/fe2769fd-22c9-4307-9122-ee0466e5aebb"
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:7685713c-e29e-4a75-8a90-45be7ba3be94",
+ "resource": {
+ "resourceType": "Patient",
+ "id": "7685713c-e29e-4a75-8a90-45be7ba3be94",
+ "text": {
+ "status": "generated",
+ "div": "Generated Narrative: Patient
Resource Patient "7685713c-e29e-4a75-8a90-45be7ba3be94"
identifier : id:\u00a0574687583
active : true
name : Martha DeLarosa
telecom : +31788700800
gender : female
birthDate : 1972-05-01
address : Laan Van Europa 1600 Dordrecht 3317 DB NL
Contacts - Relationship Name Telecom Address * mother (RoleCode #MTH) Martha Mum +33-555-20036 Promenade des Anglais 111 Lyon 69001 FR
"
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:2.16.840.1.113883.2.4.6.3",
+ "value": "574687583"
+ }
+ ],
+ "active": true,
+ "name": [
+ {
+ "family": "DeLarosa",
+ "given": [
+ "Martha"
+ ]
+ }
+ ],
+ "telecom": [
+ {
+ "system": "phone",
+ "value": "+31788700800",
+ "use": "home"
+ }
+ ],
+ "gender": "female",
+ "birthDate": "1972-05-01",
+ "address": [
+ {
+ "line": [
+ "Laan Van Europa 1600"
+ ],
+ "city": "Dordrecht",
+ "postalCode": "3317 DB",
+ "country": "NL"
+ }
+ ],
+ "contact": [
+ {
+ "relationship": [
+ {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v3-RoleCode",
+ "code": "MTH"
+ }
+ ]
+ }
+ ],
+ "name": {
+ "family": "Mum",
+ "given": [
+ "Martha"
+ ]
+ },
+ "telecom": [
+ {
+ "system": "phone",
+ "value": "+33-555-20036",
+ "use": "home"
+ }
+ ],
+ "address": {
+ "line": [
+ "Promenade des Anglais 111"
+ ],
+ "city": "Lyon",
+ "postalCode": "69001",
+ "country": "FR"
+ }
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:98315ba9-ffea-41ef-b59b-a836c039858f",
+ "resource": {
+ "resourceType": "Practitioner",
+ "id": "98315ba9-ffea-41ef-b59b-a836c039858f",
+ "text": {
+ "status": "generated",
+ "div": "Generated Narrative: Practitioner
Resource Practitioner "98315ba9-ffea-41ef-b59b-a836c039858f"
identifier : id:\u00a0129854633
active : true
name : Beetje van Hulp
Qualifications - Code * Doctor of Medicine (degreeLicenseCertificate[2.7]#MD)
"
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:2.16.528.1.1007.3.1",
+ "value": "129854633",
+ "assigner": {
+ "display": "CIBG"
+ }
+ }
+ ],
+ "active": true,
+ "name": [
+ {
+ "family": "van Hulp",
+ "given": [
+ "Beetje"
+ ]
+ }
+ ],
+ "qualification": [
+ {
+ "code": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/v2-0360",
+ "version": "2.7",
+ "code": "MD",
+ "display": "Doctor of Medicine"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d",
+ "resource": {
+ "resourceType": "Organization",
+ "id": "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d",
+ "text": {
+ "status": "generated",
+ "div": "Generated Narrative: Organization
Resource Organization "bb6bdf4f-7fcb-4d44-96a5-b858ad031d1d"
identifier : id:\u00a0564738757
active : true
name : Anorg Aniza Tion BV / The best custodian ever
telecom : +31-51-34343400
address : Houttuinen 27 Dordrecht 3311 CE NL (WORK)
"
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:2.16.528.1.1007.3.3",
+ "value": "564738757"
+ }
+ ],
+ "active": true,
+ "name": "Anorg Aniza Tion BV / The best custodian ever",
+ "telecom": [
+ {
+ "system": "phone",
+ "value": "+31-51-34343400",
+ "use": "work"
+ }
+ ],
+ "address": [
+ {
+ "use": "work",
+ "line": [
+ "Houttuinen 27"
+ ],
+ "city": "Dordrecht",
+ "postalCode": "3311 CE",
+ "country": "NL"
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:ad84b7a2-b4dd-474e-bef3-0779e6cb595f",
+ "resource": {
+ "resourceType": "Condition",
+ "id": "ad84b7a2-b4dd-474e-bef3-0779e6cb595f",
+ "text": {
+ "status": "generated",
+ "div": ""
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:1.2.3.999",
+ "value": "cacceb57-395f-48e1-9c88-e9c9704dc2d2"
+ }
+ ],
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "category": [
+ {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "75326-9",
+ "display": "Problem"
+ }
+ ]
+ }
+ ],
+ "severity": {
+ "coding": [
+ {
+ "system": "http://loinc.org",
+ "code": "LA6751-7",
+ "display": "Moderate"
+ }
+ ]
+ },
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "198436008",
+ "display": "Menopausal flushing (finding)",
+ "_display": {
+ "extension": [
+ {
+ "extension": [
+ {
+ "url": "lang",
+ "valueCode": "nl-NL"
+ },
+ {
+ "url": "content",
+ "valueString": "opvliegers"
+ }
+ ],
+ "url": "http://hl7.org/fhir/StructureDefinition/translation"
+ }
+ ]
+ }
+ },
+ {
+ "system": "http://hl7.org/fhir/sid/icd-10",
+ "code": "N95.1",
+ "display": "Menopausal and female climacteric states"
+ }
+ ]
+ },
+ "subject": {
+ "reference": "Patient/7685713c-e29e-4a75-8a90-45be7ba3be94"
+ },
+ "onsetDateTime": "2015",
+ "recordedDate": "2016-10"
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:6e883e5e-7648-485a-86de-3640a61601fe",
+ "resource": {
+ "resourceType": "MedicationStatement",
+ "id": "6e883e5e-7648-485a-86de-3640a61601fe",
+ "text": {
+ "status": "generated",
+ "div": ""
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:1.2.3.999",
+ "value": "8faf0319-89d3-427c-b9d1-e8c8fd390dca"
+ }
+ ],
+ "status": "active",
+ "medicationReference": {
+ "reference": "Medication/6369a973-afc7-4617-8877-3e9811e05a5b"
+ },
+ "subject": {
+ "reference": "Patient/7685713c-e29e-4a75-8a90-45be7ba3be94"
+ },
+ "effectivePeriod": {
+ "start": "2015-03"
+ },
+ "dosage": [
+ {
+ "timing": {
+ "repeat": {
+ "count": 1,
+ "periodUnit": "d"
+ }
+ },
+ "route": {
+ "coding": [
+ {
+ "system": "http://standardterms.edqm.eu",
+ "code": "20053000",
+ "display": "Oral use"
+ }
+ ]
+ },
+ "doseAndRate": [
+ {
+ "type": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/dose-rate-type",
+ "code": "ordered",
+ "display": "Ordered"
+ }
+ ]
+ },
+ "doseQuantity": {
+ "value": 1,
+ "unit": "tablet",
+ "system": "http://unitsofmeasure.org",
+ "code": "1"
+ }
+ }
+ ]
+ }
+ ]
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:6369a973-afc7-4617-8877-3e9811e05a5b",
+ "resource": {
+ "resourceType": "Medication",
+ "id": "6369a973-afc7-4617-8877-3e9811e05a5b",
+ "text": {
+ "status": "generated",
+ "div": "Generated Narrative: Medication
Resource Medication "6369a973-afc7-4617-8877-3e9811e05a5b"
code : Product containing anastrozole (medicinal product) (SNOMED CT #108774000; unknown#99872 "ANASTROZOL 1MG TABLET"; unknown#2076667 "ANASTROZOL CF TABLET FILMOMHULD 1MG"; WHO ATC #L02BG03 "anastrozole")
"
+ },
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "108774000",
+ "display": "Product containing anastrozole (medicinal product)"
+ },
+ {
+ "system": "urn:oid:2.16.840.1.113883.2.4.4.1",
+ "code": "99872",
+ "display": "ANASTROZOL 1MG TABLET"
+ },
+ {
+ "system": "urn:oid:2.16.840.1.113883.2.4.4.7",
+ "code": "2076667",
+ "display": "ANASTROZOL CF TABLET FILMOMHULD 1MG"
+ },
+ {
+ "system": "http://www.whocc.no/atc",
+ "code": "L02BG03",
+ "display": "anastrozole"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "fullUrl": "urn:uuid:fe2769fd-22c9-4307-9122-ee0466e5aebb",
+ "resource": {
+ "resourceType": "AllergyIntolerance",
+ "id": "fe2769fd-22c9-4307-9122-ee0466e5aebb",
+ "text": {
+ "status": "generated",
+ "div": ""
+ },
+ "identifier": [
+ {
+ "system": "urn:oid:1.2.3.999",
+ "value": "8d9566a4-d26d-46be-a3e4-c9f3a0e5cd83"
+ }
+ ],
+ "clinicalStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-clinical",
+ "code": "active"
+ }
+ ]
+ },
+ "verificationStatus": {
+ "coding": [
+ {
+ "system": "http://terminology.hl7.org/CodeSystem/allergyintolerance-verification",
+ "code": "confirmed"
+ }
+ ]
+ },
+ "type": "allergy",
+ "category": [
+ "medication"
+ ],
+ "criticality": "high",
+ "code": {
+ "coding": [
+ {
+ "system": "http://snomed.info/sct",
+ "code": "373270004",
+ "display": "Substance with penicillin structure and antibacterial mechanism of action (substance)"
+ }
+ ]
+ },
+ "patient": {
+ "reference": "Patient/7685713c-e29e-4a75-8a90-45be7ba3be94"
+ },
+ "onsetDateTime": "2010"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/http-client-tests/resources/sources/sql-on-fhir.json b/http-client-tests/resources/sources/sql-on-fhir.json
new file mode 100644
index 00000000..62e64932
--- /dev/null
+++ b/http-client-tests/resources/sources/sql-on-fhir.json
@@ -0,0 +1,38 @@
+{
+ "resourceType": "http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition",
+ "select": [
+ {
+ "column": [
+ {
+ "path": "getResourceKey()",
+ "name": "patient_id"
+ }
+ ]
+ },
+ {
+ "column": [
+ {
+ "path": "line.join('\n')",
+ "name": "street",
+ "description": "The full street address, including newlines if present."
+ },
+ {
+ "path": "use",
+ "name": "use"
+ },
+ {
+ "path": "city",
+ "name": "city"
+ },
+ {
+ "path": "postalCode",
+ "name": "zip"
+ }
+ ],
+ "forEach": "address"
+ }
+ ],
+ "name": "patient_addresses",
+ "status": "draft",
+ "resource": "Patient"
+}
\ No newline at end of file
diff --git a/http-client-tests/tests/explicit-queries.http b/http-client-tests/tests/explicit-queries.http
new file mode 100644
index 00000000..993c64d8
--- /dev/null
+++ b/http-client-tests/tests/explicit-queries.http
@@ -0,0 +1,163 @@
+# These tests do validations using CliContext instances that are manually constructed
+# equivalents to those in commonMain/kotlin/constants/Preset
+
+# Conversely, the preset-queries.http tests will perform the same tests, but using
+# the baseEngine field of the CliContext to utilize the pre-built ValidationEngine
+# from the ValidationService
+
+### Default
+# @name Default
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/default.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 2);
+ client.assert(containsIssue(issues, 88, 12, "This element does not match any known slice defined in the profile http://hl7.org/fhir/StructureDefinition/bp|4.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"));
+ });
+%}
+
+### CDA
+# @name CDA
+# This example is compo
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/cda.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+
+ client.test("Issues are Correct", function () {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 10);
+ client.assert(containsIssue(issues, 20, 24, "Binding has no source, so can't be checked", "CODEINVALID", "INFORMATION"))
+ client.assert(containsIssue(issues, 251, 184, "The OID '2.16.840.1.114222.4.11.1066' is not known, so the code can't be validated", "CODEINVALID", "WARNING"))
+ });
+%}
+
+
+### US-CDA
+# @name US-CDA
+# Check that a request with explicit IG settings returns an expected response
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/us-ccda.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 10)
+ client.assert(containsIssue(issues, 20, 24, "Binding has no source, so can't be checked", "CODEINVALID", "INFORMATION"))
+ client.assert(!containsIssue(issues, 251, 184, "The OID '2.16.840.1.113883.1.11.19830' is not known, so the code can't be validated", "CODEINVALID", "WARNING"))
+ })
+%}
+
+### IPS
+# @name IPS
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/ips.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 45);
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 373270004 (Substance with penicillin structure and antibacterial mechanism of action) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 108774000 (Product containing anastrozole (medicinal product)) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+
+ client.assert(!containsIssue(issues, 314, 4, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips|0.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ client.assert(!containsIssue(issues, 134, 8, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient|0.3.0 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL","INFORMATION"))
+
+ });
+%}
+
+### IPS-AU
+# @name IPS-AU
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/ips-au.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 53);
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 373270004 (Substance with penicillin structure and antibacterial mechanism of action) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 108774000 (Product containing anastrozole (medicinal product)) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 314, 4, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips|0.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ client.assert(containsIssue(issues, 134, 8, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient|0.5.0-ci-build (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ });
+%}
+
+### IPS-NZ
+# @name IPS-NZ
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/ips-nz.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 100);
+ client.assert(containsIssue(issues, 12,10,"This element does not match any known slice defined in the profile https://standards.digital.health.nz/fhir/StructureDefinition/nzps-bundle|0.3.0 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ });
+%}
+
+### SQL-ON-FHIR
+# @name SQL-ON-FHIR
+# Check that a request with explicit IG settings returns an expected response
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/explicit-preset-requests/sql-on-fhir.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 3);
+ client.assert(containsIssue(issues, 20, 21, "The column 'use' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ client.assert(containsIssue(issues, 24, 21, "The column 'city' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ client.assert(containsIssue(issues, 28, 21, "The column 'zip' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ });
+%}
\ No newline at end of file
diff --git a/http-client-tests/tests/preset-queries.http b/http-client-tests/tests/preset-queries.http
new file mode 100644
index 00000000..a4502128
--- /dev/null
+++ b/http-client-tests/tests/preset-queries.http
@@ -0,0 +1,164 @@
+
+# These tests do validations using CliContext instances that use the presents in
+# commonMain/kotlin/constants/Preset
+
+# Conversely, the preset-queries.http tests will perform the same tests, but using
+# the baseEngine field of the CliContext to utilize the pre-built ValidationEngine
+# from the ValidationService
+
+### Default
+# @name Default
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/default.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 2);
+ client.assert(containsIssue(issues, 88, 12, "This element does not match any known slice defined in the profile http://hl7.org/fhir/StructureDefinition/bp|4.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"));
+ });
+%}
+
+### CDA
+# @name CDA
+# This example is compo
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/cda.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+
+ client.test("Issues are Correct", function () {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 10);
+ client.assert(containsIssue(issues, 20, 24, "Binding has no source, so can't be checked", "CODEINVALID", "INFORMATION"))
+ client.assert(containsIssue(issues, 251, 184, "The OID '2.16.840.1.114222.4.11.1066' is not known, so the code can't be validated", "CODEINVALID", "WARNING"))
+ });
+%}
+
+
+### US-CDA
+# @name US-CDA
+# Check that a request with explicit IG settings returns an expected response
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/us-ccda.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 10)
+ client.assert(containsIssue(issues, 20, 24, "Binding has no source, so can't be checked", "CODEINVALID", "INFORMATION"))
+ client.assert(!containsIssue(issues, 251, 184, "The OID '2.16.840.1.113883.1.11.19830' is not known, so the code can't be validated", "CODEINVALID", "WARNING"))
+ })
+%}
+
+### IPS
+# @name IPS
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/ips.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 45);
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 373270004 (Substance with penicillin structure and antibacterial mechanism of action) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 108774000 (Product containing anastrozole (medicinal product)) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+
+ client.assert(!containsIssue(issues, 314, 4, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips|0.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ client.assert(!containsIssue(issues, 134, 8, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient|0.3.0 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL","INFORMATION"))
+
+ });
+%}
+
+### IPS-AU
+# @name IPS-AU
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/ips-au.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 53);
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 373270004 (Substance with penicillin structure and antibacterial mechanism of action) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 1, 2, "The Snomed CT code 108774000 (Product containing anastrozole (medicinal product)) is not a member of the IPS free set", "BUSINESSRULE", "INFORMATION"))
+ client.assert(containsIssue(issues, 314, 4, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/ips/StructureDefinition/Bundle-au-ips|0.0.1 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ client.assert(containsIssue(issues, 134, 8, "This element does not match any known slice defined in the profile http://hl7.org.au/fhir/core/StructureDefinition/au-core-patient|0.5.0-ci-build (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ });
+%}
+
+### IPS-NZ
+# @name IPS-NZ
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/ips-nz.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 100);
+ client.assert(containsIssue(issues, 12,10,"This element does not match any known slice defined in the profile https://standards.digital.health.nz/fhir/StructureDefinition/nzps-bundle|0.3.0 (this may not be a problem, but you should check that it's not intended to match a slice)", "INFORMATIONAL", "INFORMATION"))
+ });
+%}
+
+### SQL-ON-FHIR
+# @name SQL-ON-FHIR
+# Check that a request with explicit IG settings returns an expected response
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/preset-requests/sql-on-fhir.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ import { containsIssue } from "../utilities/assertions";
+ client.test("Issues are Correct", function() {
+ let issues = response.body.outcomes[0].issues
+ client.log("issues:" + issues.length)
+ client.assert(issues.length === 3);
+ client.assert(containsIssue(issues, 20, 21, "The column 'use' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ client.assert(containsIssue(issues, 24, 21, "The column 'city' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ client.assert(containsIssue(issues, 28, 21, "The column 'zip' appears to be a collection based on it's path. Collections are not supported in all execution contexts", "BUSINESSRULE", "WARNING"))
+ });
+%}
\ No newline at end of file
diff --git a/http-client-tests/tests/session-queries.http b/http-client-tests/tests/session-queries.http
new file mode 100644
index 00000000..a4ea52da
--- /dev/null
+++ b/http-client-tests/tests/session-queries.http
@@ -0,0 +1,103 @@
+# These tests check that validation sessions are created and retrieved correctly
+
+### Initial default setting run #1
+# @name Session 1 Validation 1
+< {%
+ client.global.set("SESSION_1_VALIDATION_1_START_TIME", $timestamp);
+%}
+
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/session-requests/session_1_validation_1.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+
+ client.global.set("SESSION_1_ID", response.body.sessionId);
+ client.log("session id: " + client.global.get("SESSION_1_ID"));
+ client.global.set("SESSION_1_VALIDATION_1_RESPONSE_BODY", response.body.outcomes[0].issues.toString());
+ client.global.set("SESSION_1_VALIDATION_1_TOTAL_TIME", ($timestamp - client.global.get("SESSION_1_VALIDATION_1_START_TIME")));
+
+%}
+
+### Initial default setting run #1
+# @name Session 2 Validation 1
+< {%
+ client.global.set("SESSION_2_VALIDATION_1_START_TIME", $timestamp);
+%}
+
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/session-requests/session_2_validation_1.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+
+ client.global.set("SESSION_2_ID", response.body.sessionId);
+ client.log("session id: " + client.global.get("SESSION_2_ID"));
+ client.global.set("SESSION_2_VALIDATION_1_RESPONSE_BODY", response.body.outcomes[0].issues.toString());
+ client.global.set("SESSION_2_VALIDATION_1_TOTAL_TIME", ($timestamp - client.global.get("SESSION_2_VALIDATION_1_START_TIME")));
+
+%}
+
+### Initial default setting run #2
+# @name Session 1 Validation 2
+< {%
+ client.global.set("SESSION_1_VALIDATION_2_START_TIME", $timestamp);
+%}
+
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/session-requests/session_1_validation_2.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ client.test("Session ID Maintained", function() {
+ client.assert(response.body.sessionId === client.global.get("SESSION_1_ID"));
+ });
+ client.test("Validation is faster", function() {
+ const DEFAULT_SESSION_2_TOTAL_TIME = ($timestamp - client.global.get("SESSION_1_VALIDATION_2_START_TIME"));
+ client.assert(client.global.get("SESSION_1_VALIDATION_2_START_TIME") > DEFAULT_SESSION_2_TOTAL_TIME);
+ });
+ client.test("Validation response is the same", function() {
+ client.assert(response.body.outcomes[0].issues.toString() === client.global.get("SESSION_1_VALIDATION_1_RESPONSE_BODY"));
+ });
+
+%}
+
+### Initial default setting run #2
+# @name Session 1 Validation 2
+< {%
+ client.global.set("SESSION_2_VALIDATION_2_START_TIME", $timestamp);
+%}
+
+POST {{host}}/validate
+Content-Type: application/json
+
+< ../resources/session-requests/session_2_validation_2.json
+
+> {%
+ client.test("Validated Successfully", function() {
+ client.assert(response.status === 200, "Response status is not 200");
+ });
+ client.test("Session ID Maintained", function() {
+ client.assert(response.body.sessionId === client.global.get("SESSION_2_ID"));
+ });
+ client.test("Validation is faster", function() {
+ const DEFAULT_SESSION_2_TOTAL_TIME = ($timestamp - client.global.get("SESSION_2_VALIDATION_2_START_TIME"));
+ client.assert(client.global.get("SESSION_2_VALIDATION_2_START_TIME") > DEFAULT_SESSION_2_TOTAL_TIME);
+ });
+ client.test("Validation response is the same", function() {
+ client.assert(response.body.outcomes[0].issues.toString() === client.global.get("SESSION_2_VALIDATION_1_RESPONSE_BODY"));
+ });
+
+%}
\ No newline at end of file
diff --git a/http-client-tests/utilities/assertions.js b/http-client-tests/utilities/assertions.js
new file mode 100644
index 00000000..5f43feda
--- /dev/null
+++ b/http-client-tests/utilities/assertions.js
@@ -0,0 +1,26 @@
+/**
+ * Blocks the execution thread for the at least the specified time in milliseconds.
+ *
+ * Analogous to Java Thread.sleep
+ * @param issues
+ * @param line
+ * @param col
+ * @param message
+ * @param type
+ * @param level
+ */
+export function containsIssue(issues, line, col, message, type, level) {
+ for (let index in issues) {
+ if (issues[index].line === line
+ && issues[index].col === col
+ && issues[index].message === message
+ && issues[index].type === type
+ && issues[index].level === level
+ ) {
+
+ return true;
+ }
+ }
+
+ return false;
+}
\ No newline at end of file
diff --git a/src/commonMain/kotlin/constants/Endpoints.kt b/src/commonMain/kotlin/constants/Endpoints.kt
index 709f0f8d..e32019b2 100644
--- a/src/commonMain/kotlin/constants/Endpoints.kt
+++ b/src/commonMain/kotlin/constants/Endpoints.kt
@@ -2,7 +2,8 @@ package constants
const val VALIDATION_ENDPOINT = "validate"
const val VALIDATOR_VERSION_ENDPOINT = "validator/version"
-const val CONTEXT_ENDPOINT = "context"
+const val VALIDATION_ENGINES_ENDPOINT = "validator/engines"
+
const val IG_ENDPOINT = "ig"
const val IG_VERSIONS_ENDPOINT = "igVersions"
const val VERSIONS_ENDPOINT = "versions"
diff --git a/src/jsMain/kotlin/utils/Preset.kt b/src/commonMain/kotlin/constants/Preset.kt
similarity index 89%
rename from src/jsMain/kotlin/utils/Preset.kt
rename to src/commonMain/kotlin/constants/Preset.kt
index 9e528d2f..5341e1b0 100644
--- a/src/jsMain/kotlin/utils/Preset.kt
+++ b/src/commonMain/kotlin/constants/Preset.kt
@@ -1,12 +1,13 @@
-package utils
+package constants
import model.CliContext
import model.PackageInfo
-import constants.ANY_EXTENSION
import model.BundleValidationRule
val DEFAULT_CONTEXT = CliContext()
+ .setBaseEngine("DEFAULT")
+ .setSv("4.0.1")
val IPS_IG = PackageInfo(
"hl7.fhir.uv.ips",
@@ -31,14 +32,14 @@ val IPS_NZ_IG = PackageInfo(
val CDA_IG = PackageInfo(
"hl7.cda.uv.core",
- "2.0.0-sd-ballot",
+ "2.0.0-sd-snapshot1",
"5.0.0",
"http://hl7.org/cda/stds/core/ImplementationGuide/hl7.cda.uv.core"
)
val CCDA_IG = PackageInfo(
"hl7.cda.us.ccda",
- "current",
+ "3.0.0-ballot",
"5.0.0",
"http://hl7.org/fhir/us/ccda/ImplementationGuide/hl7.fhir.us.ccda"
)
@@ -57,6 +58,7 @@ val IPS_AU_BUNDLE_PROFILE = "http://hl7.org.au/fhir/ips/StructureDefinition/Bund
val IPS_NZ_BUNDLE_PROFILE = "https://standards.digital.health.nz/fhir/StructureDefinition/nzps-bundle"
val IPS_CONTEXT = CliContext()
+ .setBaseEngine("IPS")
.setSv("4.0.1")
.addIg(PackageInfo.igLookupString(IPS_IG))
.setExtensions(listOf(ANY_EXTENSION))
@@ -68,6 +70,7 @@ val IPS_CONTEXT = CliContext()
))
val IPS_AU_CONTEXT = CliContext()
+ .setBaseEngine("IPS_AU")
.setSv("4.0.1")
.addIg(PackageInfo.igLookupString(IPS_AU_IG))
.setExtensions(listOf(ANY_EXTENSION))
@@ -79,8 +82,10 @@ val IPS_AU_CONTEXT = CliContext()
))
val IPS_NZ_CONTEXT = CliContext()
+ .setBaseEngine("IPS_NZ")
.setSv("4.0.1")
.addIg(PackageInfo.igLookupString(IPS_NZ_IG))
+ .setProfiles(listOf(IPS_NZ_BUNDLE_PROFILE))
.setExtensions(listOf(ANY_EXTENSION))
.setCheckIPSCodes(true)
.setBundleValidationRules(listOf(
@@ -91,14 +96,17 @@ val IPS_NZ_CONTEXT = CliContext()
val CDA_CONTEXT = CliContext()
+ .setBaseEngine("CDA")
.setSv("5.0.0")
.addIg(PackageInfo.igLookupString(CDA_IG))
val CCDA_CONTEXT = CliContext()
+ .setBaseEngine("US_CCDA")
.setSv("5.0.0")
.addIg(PackageInfo.igLookupString(CCDA_IG))
val SQL_VIEW_CONTEXT = CliContext()
+ .setBaseEngine("SQL_VIEW")
.setSv("5.0.0")
.addIg(PackageInfo.igLookupString(SQL_ON_FHIR_IG))
@@ -110,6 +118,14 @@ enum class Preset(
val extensionSet: Set,
val profileSet: Set
) {
+ CUSTOM(
+ "CUSTOM",
+ "preset_custom",
+ CliContext(),
+ setOf(),
+ setOf(),
+ setOf()
+ ),
DEFAULT(
"DEFAULT",
"preset_fhir_resource",
@@ -126,6 +142,7 @@ enum class Preset(
setOf(ANY_EXTENSION),
setOf(IPS_BUNDLE_PROFILE)
),
+
IPS_AU(
"IPS_AU",
"preset_ips_au",
@@ -151,7 +168,7 @@ enum class Preset(
setOf()
),
US_CCDA(
- "US_CDA",
+ "US_CCDA",
"preset_us_ccda",
CCDA_CONTEXT,
setOf(CCDA_IG),
@@ -165,8 +182,7 @@ enum class Preset(
setOf(SQL_ON_FHIR_IG),
setOf(),
setOf()
- )
- ;
+ );
companion object {
fun getSelectedPreset(key: String?): Preset? {
diff --git a/src/commonMain/kotlin/model/CliContext.kt b/src/commonMain/kotlin/model/CliContext.kt
index 2b149694..2e7f9205 100644
--- a/src/commonMain/kotlin/model/CliContext.kt
+++ b/src/commonMain/kotlin/model/CliContext.kt
@@ -2,6 +2,9 @@ package model
expect class CliContext() {
+ fun getBaseEngine(): String?
+ fun setBaseEngine(baseEngine: String?) : CliContext
+
fun isDoNative(): Boolean
fun setDoNative(doNative: Boolean): CliContext
@@ -62,4 +65,7 @@ expect class CliContext() {
fun setBundleValidationRules(bundleValidationRules: List) : CliContext
fun getBundleValidationRules():List
+
+ fun addIg(ig: String): CliContext
+
}
\ No newline at end of file
diff --git a/src/commonMain/resources/static-content/polyglot/de_DE.json b/src/commonMain/resources/static-content/polyglot/de_DE.json
index 38ffbbd2..1321ccd0 100644
--- a/src/commonMain/resources/static-content/polyglot/de_DE.json
+++ b/src/commonMain/resources/static-content/polyglot/de_DE.json
@@ -90,7 +90,7 @@
"preset_label" : "Common Validation Options... -German",
"preset_description" : "Click to automatically set options for common validation tasks-German",
"preset_notification" : "Set to validate using %{selectedPreset}. Select the Options tab for more settings. -German",
- "preset_fhir_resource" : "FHIR Resource -German",
+ "preset_fhir_resource" : "FHIR Resource (R4) -German",
"preset_ips" : "IPS Document -German",
"preset_ips_au" : "Australian IPS Document -German",
"preset_ips_nz" : "New Zealand IPS Document -German",
diff --git a/src/commonMain/resources/static-content/polyglot/en.json b/src/commonMain/resources/static-content/polyglot/en.json
index b32d6a84..3f49955d 100644
--- a/src/commonMain/resources/static-content/polyglot/en.json
+++ b/src/commonMain/resources/static-content/polyglot/en.json
@@ -92,7 +92,7 @@
"preset_label" : "Common Validation Options...",
"preset_description" : "Click to automatically set options for common validation tasks",
"preset_notification" : "Set to validate using %{selectedPreset}. Select the Options tab for more settings.",
- "preset_fhir_resource" : "FHIR Resource",
+ "preset_fhir_resource" : "FHIR Resource (R4)",
"preset_ips" : "IPS Document",
"preset_ips_au" : "Australian IPS Document",
"preset_ips_nz" : "New Zealand IPS Document",
diff --git a/src/commonMain/resources/static-content/polyglot/es.json b/src/commonMain/resources/static-content/polyglot/es.json
index 4c55a597..5b01747e 100644
--- a/src/commonMain/resources/static-content/polyglot/es.json
+++ b/src/commonMain/resources/static-content/polyglot/es.json
@@ -90,7 +90,7 @@
"preset_label" : "Common Validation Options... -Spanish",
"preset_description" : "Click to automatically set options for common validation tasks-Spanish",
"preset_notification" : "Set to validate using %{selectedPreset}. Select the Options tab for more settings. -Spanish",
- "preset_fhir_resource" : "FHIR Resource -Spanish",
+ "preset_fhir_resource" : "FHIR Resource (R4) -Spanish",
"preset_ips" : "IPS Document -Spanish",
"preset_ips_au" : "Australian IPS Document -Spanish",
"preset_ips_nz" : "New Zealand IPS Document -Spanish",
diff --git a/src/jsMain/kotlin/App.kt b/src/jsMain/kotlin/App.kt
index bc7578e2..c5153ec8 100644
--- a/src/jsMain/kotlin/App.kt
+++ b/src/jsMain/kotlin/App.kt
@@ -24,7 +24,7 @@ external interface AppProps : Props {
var setLanguage: (Language) -> Unit
var cliContext: CliContext
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
}
val mainScope = MainScope()
@@ -36,7 +36,7 @@ fun languageSetup(props: AppProps) {
if (selectedLanguage != null) {
props.setLanguage(selectedLanguage)
props.fetchPolyglot(selectedLanguage.getLanguageCode());
- props.updateCliContext(props.cliContext.setLocale(selectedLanguage.getLanguageCode()))
+ props.updateCliContext(props.cliContext.setLocale(selectedLanguage.getLanguageCode()), false)
break
}
}
diff --git a/src/jsMain/kotlin/api/StatusApi.kt b/src/jsMain/kotlin/api/StatusApi.kt
index 6e70c4b2..76b6c867 100644
--- a/src/jsMain/kotlin/api/StatusApi.kt
+++ b/src/jsMain/kotlin/api/StatusApi.kt
@@ -2,6 +2,7 @@ package api
import constants.PACKAGES_SERVER_STATUS_ENDPOINT
import constants.TX_SERVER_STATUS_ENDPOINT
+import constants.VALIDATION_ENGINES_ENDPOINT
import io.ktor.client.call.*
import io.ktor.client.request.*
@@ -9,6 +10,10 @@ suspend fun isTerminologyServerUp(): Boolean {
return jsonClient.get(urlString = endpoint + TX_SERVER_STATUS_ENDPOINT).body()
}
+suspend fun getValidationEngines(): Set {
+ return jsonClient.get(urlString = endpoint + VALIDATION_ENGINES_ENDPOINT).body()
+}
+
suspend fun isPackagesServerUp(): Boolean {
return jsonClient.get(urlString = endpoint + PACKAGES_SERVER_STATUS_ENDPOINT).body()
}
diff --git a/src/jsMain/kotlin/model/BundleValidationRule.kt b/src/jsMain/kotlin/model/BundleValidationRule.kt
index 35c7ddb1..469a61cc 100644
--- a/src/jsMain/kotlin/model/BundleValidationRule.kt
+++ b/src/jsMain/kotlin/model/BundleValidationRule.kt
@@ -1,8 +1,6 @@
package model
-import kotlinx.js.Object
import kotlinx.serialization.Serializable
-import utils.Preset
@Serializable
actual class BundleValidationRule actual constructor() {
diff --git a/src/jsMain/kotlin/model/CliContext.kt b/src/jsMain/kotlin/model/CliContext.kt
index a8ecb4d2..1ab3ef39 100644
--- a/src/jsMain/kotlin/model/CliContext.kt
+++ b/src/jsMain/kotlin/model/CliContext.kt
@@ -7,6 +7,7 @@ import kotlinx.serialization.Serializable
@Serializable
actual class CliContext actual constructor() {
+ private var baseEngine: String? = null
private var extensions : List = listOf()
private var doNative = false
private var hintAboutNonMustSupport = false
@@ -35,6 +36,37 @@ actual class CliContext actual constructor() {
locale = "en"
}
+ constructor (cliContext : CliContext) : this() {
+ this.igs = cliContext.igs.toList()
+ this.baseEngine = cliContext.baseEngine
+ this.extensions = cliContext.extensions.toList()
+ this.doNative = cliContext.doNative
+ this.hintAboutNonMustSupport = cliContext.hintAboutNonMustSupport
+ this.assumeValidRestReferences = cliContext.assumeValidRestReferences
+ this.noExtensibleBindingMessages = cliContext.noExtensibleBindingMessages
+ this.showTimes = cliContext.showTimes
+ this.allowExampleUrls = cliContext.allowExampleUrls
+ this.txServer = cliContext.txServer
+ this.txLog = cliContext.txLog
+ this.txCache = cliContext.txCache
+ this.snomedCT = cliContext.snomedCT
+ this.targetVer = cliContext.targetVer
+ this.sv = cliContext.sv
+ this.profiles = cliContext.profiles.toList()
+ this.checkIPSCodes = cliContext.checkIPSCodes
+ this.bundleValidationRules = cliContext.bundleValidationRules.toList()
+ this.locale = cliContext.locale
+ }
+
+ actual fun getBaseEngine() : String? {
+ return baseEngine;
+ }
+
+ actual fun setBaseEngine(baseEngine: String?): CliContext {
+ this.baseEngine = baseEngine
+ return this
+ }
+
actual fun isDoNative(): Boolean {
return doNative
}
@@ -150,7 +182,7 @@ actual class CliContext actual constructor() {
return this
}
- fun addIg(ig: String): CliContext {
+ actual fun addIg(ig: String): CliContext {
this.igs += ig
return this
}
@@ -237,4 +269,6 @@ actual class CliContext actual constructor() {
this.bundleValidationRules = bundleValidationRules
return this
}
+
+
}
\ No newline at end of file
diff --git a/src/jsMain/kotlin/reactredux/containers/AppMain.kt b/src/jsMain/kotlin/reactredux/containers/AppMain.kt
index 2269da93..58239fac 100644
--- a/src/jsMain/kotlin/reactredux/containers/AppMain.kt
+++ b/src/jsMain/kotlin/reactredux/containers/AppMain.kt
@@ -24,7 +24,7 @@ private interface AppStateProps : Props {
private interface AppDispatchProps : Props {
var fetchPolyglot: (String) -> Unit
var setLanguage: (Language) -> Unit
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
}
val app: ComponentClass =
@@ -37,6 +37,6 @@ val app: ComponentClass =
{ dispatch, _ ->
fetchPolyglot = { dispatch(LocalizationSlice.fetchPolyglot(it)) }
setLanguage = { dispatch(LocalizationSlice.SetLanguage(it)) }
- updateCliContext = { dispatch(ValidationContextSlice.UpdateCliContext(it)) }
+ updateCliContext = { cliContext: CliContext, resetBaseEngine: Boolean -> dispatch(ValidationContextSlice.UpdateCliContext(cliContext, resetBaseEngine)) }
}
)(App::class.js.unsafeCast>())
\ No newline at end of file
diff --git a/src/jsMain/kotlin/reactredux/containers/FileUploadTab.kt b/src/jsMain/kotlin/reactredux/containers/FileUploadTab.kt
index 807f2f68..51271c9d 100644
--- a/src/jsMain/kotlin/reactredux/containers/FileUploadTab.kt
+++ b/src/jsMain/kotlin/reactredux/containers/FileUploadTab.kt
@@ -13,11 +13,13 @@ import reactredux.store.AppState
import redux.RAction
import redux.WrapperAction
import ui.components.tabs.uploadtab.FileUploadTab
+import utils.Language
private interface FileUploadTabProps : Props {
var uploadedFiles: List
var cliContext: CliContext
var sessionId: String
+ var language: Language
var polyglot: Polyglot
}
@@ -28,7 +30,7 @@ private interface FileUploadTabDispatchProps : Props {
var toggleValidationInProgress: (Boolean, FileInfo) -> Unit
var addValidationOutcome: (ValidationOutcome) -> Unit
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
var updateIgPackageInfoSet: (Set) -> Unit
var updateExtensionSet: (Set) -> Unit
var updateProfileSet: (Set)-> Unit
@@ -41,6 +43,7 @@ val fileUploadTab: ComponentClass =
uploadedFiles = state.uploadedResourceSlice.uploadedFiles
cliContext = state.validationContextSlice.cliContext
sessionId = state.validationSessionSlice.sessionId
+ language = state.localizationSlice.selectedLanguage
polyglot = state.localizationSlice.polyglotInstance
},
{ dispatch, _ ->
@@ -52,9 +55,7 @@ val fileUploadTab: ComponentClass =
fileInfo))
}
addValidationOutcome = { dispatch(UploadedResourceSlice.AddValidationOutcome(it)) }
- updateCliContext = {
- dispatch(ValidationContextSlice.UpdateCliContext(it))
- }
+ updateCliContext = { cliContext: CliContext, resetBaseEngine: Boolean -> dispatch(ValidationContextSlice.UpdateCliContext(cliContext, resetBaseEngine)) }
updateIgPackageInfoSet = {
dispatch(ValidationContextSlice.UpdateIgPackageInfoSet(it))
}
diff --git a/src/jsMain/kotlin/reactredux/containers/HeaderMenu.kt b/src/jsMain/kotlin/reactredux/containers/HeaderMenu.kt
index bea8b582..7247eb4f 100644
--- a/src/jsMain/kotlin/reactredux/containers/HeaderMenu.kt
+++ b/src/jsMain/kotlin/reactredux/containers/HeaderMenu.kt
@@ -29,7 +29,7 @@ private interface HeaderDispatchProps : Props {
var fetchPolyglot: (String) -> Unit
var setPolyglot: (Polyglot) -> Unit
var setLanguage: (Language) -> Unit
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
}
val header: ComponentClass =
@@ -45,6 +45,6 @@ val header: ComponentClass =
fetchPolyglot = { dispatch(LocalizationSlice.fetchPolyglot(it)) }
setPolyglot = { dispatch(LocalizationSlice.SetPolyglot(it)) }
setLanguage = { dispatch(LocalizationSlice.SetLanguage(it)) }
- updateCliContext = { dispatch(ValidationContextSlice.UpdateCliContext(it)) }
+ updateCliContext = { cliContext: CliContext, resetBaseEngine: Boolean -> dispatch(ValidationContextSlice.UpdateCliContext(cliContext, resetBaseEngine)) }
}
)(Header::class.js.unsafeCast>())
\ No newline at end of file
diff --git a/src/jsMain/kotlin/reactredux/containers/ManualEntryTab.kt b/src/jsMain/kotlin/reactredux/containers/ManualEntryTab.kt
index 0919f977..41947c6c 100644
--- a/src/jsMain/kotlin/reactredux/containers/ManualEntryTab.kt
+++ b/src/jsMain/kotlin/reactredux/containers/ManualEntryTab.kt
@@ -17,12 +17,14 @@ import redux.RAction
import redux.WrapperAction
import ui.components.tabs.entrytab.ManualEntryTab
import ui.components.tabs.entrytab.ManualEntryTabProps
+import utils.Language
private interface ManualEntryTabStateProps : Props {
var cliContext: CliContext
var validationOutcome: ValidationOutcome?
var currentManuallyEnteredText: String
var validatingManualEntryInProgress: Boolean
+ var language: Language
var polyglot: Polyglot
var sessionId: String
}
@@ -46,6 +48,7 @@ val manualEntryTab: ComponentClass =
validationOutcome = state.manualEntrySlice.validationOutcome
currentManuallyEnteredText = state.manualEntrySlice.currentManuallyEnteredText
validatingManualEntryInProgress = state.manualEntrySlice.validatingManualEntryInProgress
+ language = state.localizationSlice.selectedLanguage
polyglot = state.localizationSlice.polyglotInstance
sessionId = state.validationSessionSlice.sessionId
},
@@ -53,20 +56,18 @@ val manualEntryTab: ComponentClass =
setValidationOutcome = { dispatch(ManualEntrySlice.AddManualEntryOutcome(it)) }
toggleValidationInProgress = { dispatch(ManualEntrySlice.ToggleValidationInProgress(it)) }
updateCurrentlyEnteredText = { dispatch(ManualEntrySlice.UpdateCurrentlyEnteredText(it)) }
- updateCliContext = {
- dispatch(ValidationContextSlice.UpdateCliContext(it))
- }
+ updateCliContext = { dispatch(ValidationContextSlice.UpdateCliContext(it, false)) }
updateIgPackageInfoSet = {
- dispatch(ValidationContextSlice.UpdateIgPackageInfoSet(it))
+ dispatch(ValidationContextSlice.UpdateIgPackageInfoSet(it, false))
}
updateExtensionSet = {
- dispatch(ValidationContextSlice.UpdateExtensionSet(it))
+ dispatch(ValidationContextSlice.UpdateExtensionSet(it, false))
}
updateProfileSet = {
- dispatch(ValidationContextSlice.UpdateProfileSet(it))
+ dispatch(ValidationContextSlice.UpdateProfileSet(it, false))
}
updateBundleValidationRuleSet = {
- dispatch(ValidationContextSlice.UpdateBundleValidationRuleSet(it))
+ dispatch(ValidationContextSlice.UpdateBundleValidationRuleSet(it, false))
}
setSessionId = { id: String -> dispatch(ValidationSessionSlice.SetSessionId(id)) }
}
diff --git a/src/jsMain/kotlin/reactredux/containers/OptionsPage.kt b/src/jsMain/kotlin/reactredux/containers/OptionsPage.kt
index 28ed9954..4b875d30 100644
--- a/src/jsMain/kotlin/reactredux/containers/OptionsPage.kt
+++ b/src/jsMain/kotlin/reactredux/containers/OptionsPage.kt
@@ -46,9 +46,7 @@ val optionsPage: ComponentClass =
polyglot = state.localizationSlice.polyglotInstance
},
{ dispatch, _ ->
- updateCliContext = {
- dispatch(ValidationContextSlice.UpdateCliContext(it))
- }
+ updateCliContext = { dispatch(ValidationContextSlice.UpdateCliContext(it, true)) }
updateIgPackageInfoSet = {
dispatch(ValidationContextSlice.UpdateIgPackageInfoSet(it))
}
diff --git a/src/jsMain/kotlin/reactredux/slices/ValidationContextSlice.kt b/src/jsMain/kotlin/reactredux/slices/ValidationContextSlice.kt
index 100310d6..fcb9bab4 100644
--- a/src/jsMain/kotlin/reactredux/slices/ValidationContextSlice.kt
+++ b/src/jsMain/kotlin/reactredux/slices/ValidationContextSlice.kt
@@ -1,5 +1,6 @@
package reactredux.slices
+import constants.Preset
import model.BundleValidationRule
import model.CliContext
import model.PackageInfo
@@ -12,39 +13,52 @@ object ValidationContextSlice {
val extensionSet: Set = mutableSetOf(),
val profileSet: Set = mutableSetOf(),
val bundleValidationRuleSet: Set = mutableSetOf(),
- val cliContext: CliContext = CliContext()
+ val cliContext: CliContext = CliContext().setBaseEngine(Preset.DEFAULT.key)
)
- data class UpdateIgPackageInfoSet(val packageInfo: Set) : RAction
+ data class UpdateIgPackageInfoSet(val packageInfo: Set, val resetBaseEngine: Boolean = true) : RAction
- data class UpdateCliContext(val cliContext: CliContext) : RAction
+ data class UpdateCliContext(val cliContext: CliContext, val resetBaseEngine : Boolean = true) : RAction
- data class UpdateExtensionSet(val extensionSet: Set) : RAction
+ data class UpdateExtensionSet(val extensionSet: Set, val resetBaseEngine : Boolean = true) : RAction
- data class UpdateProfileSet(val profileSet: Set) : RAction
+ data class UpdateProfileSet(val profileSet: Set, val resetBaseEngine : Boolean = true) : RAction
- data class UpdateBundleValidationRuleSet(val bundleValidationRuleSet: Set) : RAction
+ data class UpdateBundleValidationRuleSet(val bundleValidationRuleSet: Set, val resetBaseEngine : Boolean = true) : RAction
+
+ private fun resetBaseEngine(cliContext: CliContext, resetBaseEngine: Boolean): CliContext {
+ return if (resetBaseEngine) cliContext.setBaseEngine(null) else cliContext
+ }
fun reducer(state: State = State(), action: RAction): State {
return when (action) {
is UpdateIgPackageInfoSet -> state.copy(
igPackageInfoSet = action.packageInfo,
- cliContext = state.cliContext.setIgs(action.packageInfo.map{PackageInfo.igLookupString(it)}.toList())
+ cliContext = resetBaseEngine(
+ state.cliContext.setIgs(action.packageInfo.map{PackageInfo.igLookupString(it)}.toList()),
+ action.resetBaseEngine)
+
)
is UpdateCliContext -> state.copy(
- cliContext = action.cliContext
+ cliContext = resetBaseEngine(action.cliContext, action.resetBaseEngine)
)
is UpdateExtensionSet -> state.copy(
extensionSet = action.extensionSet,
- cliContext = state.cliContext.setExtensions(action.extensionSet.toList())
+ cliContext = resetBaseEngine(state.cliContext
+ .setExtensions(action.extensionSet.toList())
+ , action.resetBaseEngine)
)
is UpdateProfileSet -> state.copy(
profileSet = action.profileSet,
- cliContext = state.cliContext.setProfiles(action.profileSet.toList())
+ cliContext = resetBaseEngine(state.cliContext
+ .setProfiles(action.profileSet.toList())
+ , action.resetBaseEngine)
)
is UpdateBundleValidationRuleSet -> state.copy(
bundleValidationRuleSet = action.bundleValidationRuleSet,
- cliContext = state.cliContext.setBundleValidationRules(action.bundleValidationRuleSet.toList())
+ cliContext = resetBaseEngine(state.cliContext
+ .setBundleValidationRules(action.bundleValidationRuleSet.toList())
+ , action.resetBaseEngine)
)
else -> state
}
diff --git a/src/jsMain/kotlin/ui/components/header/Header.kt b/src/jsMain/kotlin/ui/components/header/Header.kt
index ab02228f..4ff0ba56 100644
--- a/src/jsMain/kotlin/ui/components/header/Header.kt
+++ b/src/jsMain/kotlin/ui/components/header/Header.kt
@@ -37,7 +37,7 @@ external interface HeaderProps : Props {
var setLanguage: (Language) -> Unit
var cliContext: CliContext
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
}
class HeaderState : State {
diff --git a/src/jsMain/kotlin/ui/components/header/LanguageOption/LanguageSelect.kt b/src/jsMain/kotlin/ui/components/header/LanguageOption/LanguageSelect.kt
index b50b73f2..6ffb24c2 100644
--- a/src/jsMain/kotlin/ui/components/header/LanguageOption/LanguageSelect.kt
+++ b/src/jsMain/kotlin/ui/components/header/LanguageOption/LanguageSelect.kt
@@ -17,7 +17,7 @@ external interface LanguageSelectProps : Props {
var selectedLanguage : Language
var setLanguage: (Language) -> Unit
var cliContext: CliContext
- var updateCliContext: (CliContext) -> Unit
+ var updateCliContext: (CliContext, Boolean) -> Unit
}
@@ -49,7 +49,7 @@ class LanguageSelect(props : LanguageSelectProps) : RComponent) -> Unit
var updateBundleValidationRuleSet: (Set) -> Unit
var setSessionId: (String) -> Unit
+ var language: Language
var polyglot: Polyglot
}
class PresetSelectState : State {
var snackbarOpen : String? = null
- var preset : String = ""
+ var validationEngines: Set = emptySet()
}
class PresetSelect : RComponent() {
init {
state = PresetSelectState()
+ mainScope.launch {
+ val loadedValidationEngines = getValidationEngines()
+ setState {
+ validationEngines = loadedValidationEngines
+ }
+ }
}
fun handleSnackBarClose() {
@@ -57,7 +65,6 @@ class PresetSelect : RComponent() {
display = Display.inlineFlex
flexDirection = FlexDirection.column
alignSelf = Align.center
-
}
Tooltip {
attrs {
@@ -81,14 +88,18 @@ class PresetSelect : RComponent() {
+props.polyglot.t("preset_label")
}
Select {
+
attrs {
label = ReactNode("Preset")
- value = "".unsafeCast()
+ value = props.cliContext.getBaseEngine().unsafeCast()
onChange = { event, _ ->
val selectedPreset = Preset.getSelectedPreset(event.target.value)
if (selectedPreset != null) {
console.log("updating cli context for preset: " + event.target.value)
- props.updateCliContext(selectedPreset.cliContext)
+ console.log("updating cli context with base engine: " + selectedPreset.cliContext.getBaseEngine())
+
+ val cliContext = CliContext(selectedPreset.cliContext).setLocale(props.language.getLanguageCode())
+ props.updateCliContext(cliContext)
props.updateIgPackageInfoSet(selectedPreset.igPackageInfo)
props.updateExtensionSet(selectedPreset.extensionSet)
props.updateProfileSet(selectedPreset.profileSet)
@@ -107,11 +118,18 @@ class PresetSelect : RComponent() {
}
Preset.values().forEach {
- MenuItem {
- attrs {
- value = it.key
+ if (state.validationEngines.contains(it.key)) {
+ MenuItem {
+ attrs {
+ value = it.key
+ }
+ +props.polyglot.t(it.polyglotKey)
+ console.log(
+ it.key + " " + props.cliContext.getBaseEngine() + ":" + it.key.equals(
+ props.cliContext.getBaseEngine()
+ )
+ )
}
- +props.polyglot.t(it.polyglotKey)
}
}
}
diff --git a/src/jsMain/kotlin/ui/components/tabs/entrytab/ManualEntryTab.kt b/src/jsMain/kotlin/ui/components/tabs/entrytab/ManualEntryTab.kt
index 3861dea4..7eff3ddb 100644
--- a/src/jsMain/kotlin/ui/components/tabs/entrytab/ManualEntryTab.kt
+++ b/src/jsMain/kotlin/ui/components/tabs/entrytab/ManualEntryTab.kt
@@ -2,6 +2,7 @@ package ui.components.tabs.entrytab
import Polyglot
import api.sendValidationRequest
+import constants.Preset
import css.animation.FadeIn.fadeIn
import css.const.BORDER_GRAY
@@ -22,10 +23,7 @@ import ui.components.options.presetSelect
import ui.components.tabs.heading
import ui.components.validation.validationOutcomeContainer
-import utils.assembleRequest
-import utils.getJS
-import utils.isJson
-import utils.isXml
+import utils.*
//TODO make this an intelligent value
private const val VALIDATION_TIME_LIMIT = 120000L
@@ -35,9 +33,9 @@ external interface ManualEntryTabProps : Props {
var validationOutcome: ValidationOutcome?
var currentManuallyEnteredText: String
var validatingManualEntryInProgress: Boolean
+ var language: Language
var polyglot: Polyglot
var sessionId: String
-
var setValidationOutcome: (ValidationOutcome) -> Unit
var toggleValidationInProgress: (Boolean) -> Unit
var updateCurrentlyEnteredText: (String) -> Unit
@@ -123,6 +121,7 @@ class ManualEntryTab : RComponent() {
updateProfileSet = props.updateProfileSet
updateBundleValidationRuleSet = props.updateBundleValidationRuleSet
setSessionId = props.setSessionId
+ language = props.language
polyglot = props.polyglot
}
}
@@ -154,59 +153,70 @@ class ManualEntryTab : RComponent() {
displayingError = false
ohShitYouDidIt = false
}
- props.toggleValidationInProgress(true)
- println("clicontext :: sv == ${props.cliContext.getSv()}, version == ${props.cliContext.getTargetVer()}, languageCode == ${props.cliContext.getLanguageCode()}")
- val request = assembleRequest(
- cliContext = props.cliContext,
- fileName = generateFileName(fileContent),
- fileContent = fileContent,
- fileType = null
- ).setSessionId(props.sessionId)
- mainScope.launch {
- try {
- withTimeout(VALIDATION_TIME_LIMIT) {
- val validationResponse = sendValidationRequest(request)
- props.setSessionId(validationResponse.getSessionId())
- val returnedOutcome = validationResponse.getOutcomes().map { it.setValidated(true) }
- println("File validated\n"
- + "filename -> " + returnedOutcome.first().getFileInfo().fileName
- + "content -> " + returnedOutcome.first().getFileInfo().fileContent
- + "type -> " + returnedOutcome.first().getFileInfo().fileType
- + "Issues ::\n" + returnedOutcome.first().getMessages()
- .joinToString { "\n" })
- props.setValidationOutcome(returnedOutcome.first())
- props.toggleValidationInProgress(false)
- }
- } catch (e: TimeoutCancellationException) {
- setState {
- errorMessage = props.polyglot.t("manual_entry_timeout_exception")
- displayingError = true
- }
- props.toggleValidationInProgress(false)
- } catch (e : ValidationResponseException) {
- setState {
- errorMessage = props.polyglot.t("manual_entry_validation_response_exception",
- getJS(arrayOf(Pair("httpResponseCode", e.httpStatusCode)))
- )
- displayingError = true
- }
- println("Exception ${e.message}")
- }
- catch (e: Exception) {
- setState {
- if (props.currentManuallyEnteredText.contains("Mark is super dorky")) {
- ohShitYouDidIt = true
- props.updateCurrentlyEnteredText("Ken is super dorky.")
- errorMessage = "Never gonna give you up, never gonna let you down, never gonna run around..."
+ println("Attempting to validate with: " + props.cliContext.getBaseEngine())
+ val cliContext : CliContext? = if (props.cliContext.getBaseEngine() == null) {
+ println("Custom validation")
+ props.cliContext
+ } else {
+ println("Preset")
+ Preset.getSelectedPreset(props.cliContext.getBaseEngine())?.cliContext
+ }
+ if (cliContext != null) {
+ props.toggleValidationInProgress(true)
+ println("clicontext :: sv == ${cliContext.getSv()}, version == ${props.cliContext.getTargetVer()}, languageCode == ${props.cliContext.getLanguageCode()}")
+ val request = assembleRequest(
+ cliContext = CliContext(cliContext).setLocale(props.cliContext.getLanguageCode()),
+ fileName = generateFileName(fileContent),
+ fileContent = fileContent,
+ fileType = null
+ ).setSessionId(props.sessionId)
+ mainScope.launch {
+ try {
+ withTimeout(VALIDATION_TIME_LIMIT) {
+ val validationResponse = sendValidationRequest(request)
+ props.setSessionId(validationResponse.getSessionId())
+ val returnedOutcome = validationResponse.getOutcomes().map { it.setValidated(true) }
+ println("File validated\n"
+ + "filename -> " + returnedOutcome.first().getFileInfo().fileName
+ + "content -> " + returnedOutcome.first().getFileInfo().fileContent
+ + "type -> " + returnedOutcome.first().getFileInfo().fileType
+ + "Issues ::\n" + returnedOutcome.first().getMessages()
+ .joinToString { "\n" })
+ props.setValidationOutcome(returnedOutcome.first())
+ props.toggleValidationInProgress(false)
+ }
+ } catch (e: TimeoutCancellationException) {
+ setState {
+ errorMessage = props.polyglot.t("manual_entry_timeout_exception")
displayingError = true
- } else {
- errorMessage = props.polyglot.t("manual_entry_cannot_parse_exception")
+ }
+ props.toggleValidationInProgress(false)
+ } catch (e: ValidationResponseException) {
+ setState {
+ errorMessage = props.polyglot.t(
+ "manual_entry_validation_response_exception",
+ getJS(arrayOf(Pair("httpResponseCode", e.httpStatusCode)))
+ )
displayingError = true
}
+ println("Exception ${e.message}")
+ } catch (e: Exception) {
+ setState {
+ if (props.currentManuallyEnteredText.contains("Mark is super dorky")) {
+ ohShitYouDidIt = true
+ props.updateCurrentlyEnteredText("Ken is super dorky.")
+ errorMessage =
+ "Never gonna give you up, never gonna let you down, never gonna run around..."
+ displayingError = true
+ } else {
+ errorMessage = props.polyglot.t("manual_entry_cannot_parse_exception")
+ displayingError = true
+ }
+ }
+ println("Exception ${e.message}")
+ } finally {
+ props.toggleValidationInProgress(false)
}
- println("Exception ${e.message}")
- } finally {
- props.toggleValidationInProgress(false)
}
}
}
diff --git a/src/jsMain/kotlin/ui/components/tabs/uploadtab/FileUploadTab.kt b/src/jsMain/kotlin/ui/components/tabs/uploadtab/FileUploadTab.kt
index 38d979dd..f2ad26dd 100644
--- a/src/jsMain/kotlin/ui/components/tabs/uploadtab/FileUploadTab.kt
+++ b/src/jsMain/kotlin/ui/components/tabs/uploadtab/FileUploadTab.kt
@@ -18,12 +18,14 @@ import ui.components.options.presetSelect
import ui.components.tabs.heading
import ui.components.tabs.uploadtab.filelist.fileEntryList
import ui.components.validation.validationOutcomePopup
+import utils.Language
import utils.assembleRequest
external interface FileUploadTabProps : Props {
var uploadedFiles: List
var cliContext: CliContext
var sessionId: String
+ var language: Language
var polyglot: Polyglot
var deleteFile: (FileInfo) -> Unit
@@ -110,6 +112,7 @@ class FileUploadTab : RComponent() {
updateProfileSet = props.updateProfileSet
updateBundleValidationRuleSet = props.updateBundleValidationRuleSet
setSessionId = props.setSessionId
+ language = props.language
polyglot = props.polyglot
}
}
diff --git a/src/jsMain/kotlin/utils/RequestUtils.kt b/src/jsMain/kotlin/utils/RequestUtils.kt
index 073e7293..2edfc5ef 100644
--- a/src/jsMain/kotlin/utils/RequestUtils.kt
+++ b/src/jsMain/kotlin/utils/RequestUtils.kt
@@ -19,5 +19,21 @@ fun assembleRequest(cliContext: CliContext, file: FileInfo): ValidationRequest {
}
fun assembleRequest(cliContext: CliContext, files: List): ValidationRequest {
- return ValidationRequest(cliContext, files)
-}
\ No newline at end of file
+ val assembledCliContext : CliContext= assembleCliContext(cliContext);
+ return ValidationRequest(assembledCliContext, files)
+}
+
+fun assembleCliContext(cliContext: CliContext): CliContext {
+ if (cliContext.getBaseEngine() == null) {
+ return cliContext
+ }
+ console.log("Building new CLI Context")
+ val baseEngineContext = CliContext()
+
+ baseEngineContext.setBaseEngine(cliContext.getBaseEngine())
+ for (profile in cliContext.getProfiles()) {
+ baseEngineContext.addProfile(profile)
+ }
+ baseEngineContext.setLocale(cliContext.getLanguageCode())
+ return baseEngineContext;
+}
diff --git a/src/jvmMain/kotlin/Config.kt b/src/jvmMain/kotlin/Config.kt
new file mode 100644
index 00000000..070c1282
--- /dev/null
+++ b/src/jvmMain/kotlin/Config.kt
@@ -0,0 +1 @@
+data class Config(val host: String, val port: Int)
diff --git a/src/jvmMain/kotlin/Module.kt b/src/jvmMain/kotlin/Module.kt
index 43c0a42a..33334690 100644
--- a/src/jvmMain/kotlin/Module.kt
+++ b/src/jvmMain/kotlin/Module.kt
@@ -9,12 +9,14 @@ import controller.version.versionModule
import desktop.launchLocalApp
import io.ktor.server.application.*
import io.ktor.server.plugins.callloging.*
-import io.ktor.server.plugins.cors.*
+
import io.ktor.server.plugins.compression.*
import io.ktor.server.plugins.contentnegotiation.*
import io.ktor.http.*
import io.ktor.server.http.content.*
import io.ktor.serialization.jackson.*
+
+import io.ktor.server.plugins.cors.routing.*
import io.ktor.server.response.*
import io.ktor.server.routing.*
diff --git a/src/jvmMain/kotlin/Server.kt b/src/jvmMain/kotlin/Server.kt
index 92e24cb7..f425da8c 100644
--- a/src/jvmMain/kotlin/Server.kt
+++ b/src/jvmMain/kotlin/Server.kt
@@ -1,11 +1,8 @@
import api.ApiInjection
-import com.typesafe.config.ConfigFactory
import controller.ControllersInjection
import io.ktor.server.application.*
-import io.ktor.server.config.*
import io.ktor.server.engine.*
import io.ktor.server.jetty.*
-import io.ktor.util.*
import org.hl7.fhir.validation.ValidatorCli
import org.hl7.fhir.validation.cli.utils.Params
import org.koin.dsl.module
@@ -13,7 +10,6 @@ import org.koin.ktor.plugin.Koin
import utils.PackageCacheDownloaderRunnable
import java.util.concurrent.TimeUnit
-private const val DEFAULT_ENVIRONMENT: String = "dev"
private const val FULL_STACK_FLAG = "-startServer"
private const val LOCAL_APP_FLAG = "-gui"
@@ -59,8 +55,8 @@ fun main(args: Array) {
}
fun startServer(args: Array) {
- val environment = System.getenv()["ENVIRONMENT"] ?: handleDefaultEnvironment()
- val config = extractConfig(environment, HoconApplicationConfig(ConfigFactory.load()))
+
+ val config = ValidatorApplicationConfig.config
val preloadCache = System.getenv()["PRELOAD_CACHE"] ?: "false"
@@ -101,21 +97,5 @@ private fun runningAsDesktopApp(args: Array): Boolean {
return args.isNotEmpty() && Params.hasParam(args, LOCAL_APP_FLAG) && !Params.hasParam(args, FULL_STACK_FLAG)
}
-data class Config(val host: String, val port: Int)
-
-fun extractConfig(environment: String, hoconConfig: HoconApplicationConfig): Config {
- val hoconEnvironment = hoconConfig.config("ktor.deployment.$environment")
- return Config(
- hoconEnvironment.property("host").getString(),
- Integer.parseInt(hoconEnvironment.property("port").getString()),
- )
-}
-/**
- * Returns default environment.
- */
-fun handleDefaultEnvironment(): String {
- println("Falling back to default environment 'dev'")
- return DEFAULT_ENVIRONMENT
-}
\ No newline at end of file
diff --git a/src/jvmMain/kotlin/ValidatorApplicationConfig.kt b/src/jvmMain/kotlin/ValidatorApplicationConfig.kt
new file mode 100644
index 00000000..959991c9
--- /dev/null
+++ b/src/jvmMain/kotlin/ValidatorApplicationConfig.kt
@@ -0,0 +1,34 @@
+import com.typesafe.config.ConfigFactory
+import io.ktor.server.config.*
+
+private const val DEFAULT_ENVIRONMENT: String = "dev"
+
+class ValidatorApplicationConfig {
+
+ companion object {
+ val config = extractConfig(detectEnvironment(), HoconApplicationConfig(ConfigFactory.load()))
+
+ private fun detectEnvironment(): String {
+ return System.getenv()["ENVIRONMENT"] ?: handleDefaultEnvironment()
+ }
+
+ /**
+ * Returns default environment.
+ */
+ private fun handleDefaultEnvironment(): String {
+ println("Falling back to default environment 'dev'")
+ return DEFAULT_ENVIRONMENT
+ }
+
+ private fun extractConfig(environment: String, hoconConfig: HoconApplicationConfig): Config {
+ val hoconEnvironment = hoconConfig.config("ktor.deployment.$environment")
+ return Config(
+ hoconEnvironment.property("host").getString(),
+ Integer.parseInt(hoconEnvironment.property("port").getString())
+ )
+ }
+ }
+
+
+
+}
\ No newline at end of file
diff --git a/src/jvmMain/kotlin/api/ApiInjection.kt b/src/jvmMain/kotlin/api/ApiInjection.kt
index 7277a0cf..d9e34f76 100644
--- a/src/jvmMain/kotlin/api/ApiInjection.kt
+++ b/src/jvmMain/kotlin/api/ApiInjection.kt
@@ -15,7 +15,9 @@ object ApiInjection {
private const val PACKAGE_CLIENT_ADDRESS = "https://packages.fhir.org"
val koinBeans = module {
- single { ValidationServiceFactoryImpl() }
+ single(createdAtStart = true) {
+
+ ValidationServiceFactoryImpl() }
single { PackageClient(PackageServer(PACKAGE_CLIENT_ADDRESS)) }
single { TerminologyApiImpl() }
single { EndpointApiImpl() }
diff --git a/src/jvmMain/kotlin/controller/validation/GuavaSessionCacheAdapter.kt b/src/jvmMain/kotlin/controller/validation/GuavaSessionCacheAdapter.kt
new file mode 100644
index 00000000..cf9b9c4c
--- /dev/null
+++ b/src/jvmMain/kotlin/controller/validation/GuavaSessionCacheAdapter.kt
@@ -0,0 +1,54 @@
+package controller.validation
+
+import com.google.common.cache.Cache
+import com.google.common.cache.CacheBuilder
+import org.hl7.fhir.validation.ValidationEngine
+import org.hl7.fhir.validation.cli.services.SessionCache
+import java.util.*
+import java.util.concurrent.TimeUnit
+
+class GuavaSessionCacheAdapter(cacheSize : Long, cacheDuration: Long) : SessionCache {
+ private val cache: Cache = CacheBuilder.newBuilder().expireAfterAccess(cacheDuration, TimeUnit.MINUTES).maximumSize(cacheSize).build()
+
+ override fun cacheSession(validationEngine: ValidationEngine): String {
+ val generatedId = generateID()
+ cache.put(generatedId, validationEngine)
+ println("Cache size: " + cache.size())
+ return generatedId
+ }
+
+ override fun cacheSession(sessionId: String?, validationEngine: ValidationEngine): String {
+ var sessionIdVar = sessionId
+ if (sessionIdVar == null) {
+ sessionIdVar = cacheSession(validationEngine)
+ } else {
+ cache.put(sessionIdVar, validationEngine)
+ println("Cache size: " + cache.size())
+ }
+ return sessionIdVar
+ }
+
+ override fun sessionExists(sessionKey: String?): Boolean {
+ return cache.asMap().containsKey(sessionKey)
+ }
+
+ override fun fetchSessionValidatorEngine(sessionKey: String): ValidationEngine? {
+ return cache.getIfPresent(sessionKey)
+ }
+
+ override fun getSessionIds(): Set {
+ return cache.asMap().keys
+ }
+
+ override fun cleanUp() {
+ cache.cleanUp()
+ }
+
+ /**
+ * Session ids generated internally are UUID [String].
+ * @return A new [String] session id.
+ */
+ private fun generateID(): String {
+ return UUID.randomUUID().toString()
+ }
+}
\ No newline at end of file
diff --git a/src/jvmMain/kotlin/controller/validation/ValidationController.kt b/src/jvmMain/kotlin/controller/validation/ValidationController.kt
index b5c13ba9..499c54ff 100644
--- a/src/jvmMain/kotlin/controller/validation/ValidationController.kt
+++ b/src/jvmMain/kotlin/controller/validation/ValidationController.kt
@@ -7,5 +7,7 @@ import org.hl7.fhir.validation.cli.model.ValidationRequest
interface ValidationController {
suspend fun validateRequest(validationRequest: ValidationRequest): ValidationResponse
+ suspend fun getValidationEngines() : Set
+
suspend fun getAppVersions() : AppVersions
}
\ No newline at end of file
diff --git a/src/jvmMain/kotlin/controller/validation/ValidationControllerImpl.kt b/src/jvmMain/kotlin/controller/validation/ValidationControllerImpl.kt
index 1b0a831f..a07dd8bb 100644
--- a/src/jvmMain/kotlin/controller/validation/ValidationControllerImpl.kt
+++ b/src/jvmMain/kotlin/controller/validation/ValidationControllerImpl.kt
@@ -29,4 +29,8 @@ class ValidationControllerImpl : ValidationController, KoinComponent {
override suspend fun getAppVersions(): AppVersions {
return AppVersions(getValidatorWrapperVersion(), VersionUtil.getVersion())
}
+
+ override suspend fun getValidationEngines(): Set {
+ return validationServiceFactory.getValidationService().baseEngineKeys;
+ }
}
\ No newline at end of file
diff --git a/src/jvmMain/kotlin/controller/validation/ValidationModule.kt b/src/jvmMain/kotlin/controller/validation/ValidationModule.kt
index 0f11ed47..776775fe 100644
--- a/src/jvmMain/kotlin/controller/validation/ValidationModule.kt
+++ b/src/jvmMain/kotlin/controller/validation/ValidationModule.kt
@@ -2,6 +2,7 @@ package controller.validation
import constants.VALIDATION_ENDPOINT
import constants.VALIDATOR_VERSION_ENDPOINT
+import constants.VALIDATION_ENGINES_ENDPOINT
import io.ktor.http.*
import io.ktor.server.application.*
@@ -53,4 +54,8 @@ fun Route.validationModule() {
get(VALIDATOR_VERSION_ENDPOINT) {
call.respond(HttpStatusCode.OK, validationController.getAppVersions())
}
+
+ get(VALIDATION_ENGINES_ENDPOINT) {
+ call.respond(HttpStatusCode.OK, validationController.getValidationEngines())
+ }
}
diff --git a/src/jvmMain/kotlin/controller/validation/ValidationServiceFactoryImpl.kt b/src/jvmMain/kotlin/controller/validation/ValidationServiceFactoryImpl.kt
index 509ea0e6..ac342950 100644
--- a/src/jvmMain/kotlin/controller/validation/ValidationServiceFactoryImpl.kt
+++ b/src/jvmMain/kotlin/controller/validation/ValidationServiceFactoryImpl.kt
@@ -1,30 +1,56 @@
package controller.validation
-import java.util.concurrent.TimeUnit;
-
-import org.hl7.fhir.validation.cli.services.ValidationService
-import org.hl7.fhir.validation.cli.services.SessionCache
+import com.typesafe.config.ConfigFactory
+import constants.Preset
+import io.ktor.server.config.*
+import model.PackageInfo
import org.hl7.fhir.validation.cli.services.PassiveExpiringSessionCache
+import org.hl7.fhir.validation.cli.services.SessionCache
+import org.hl7.fhir.validation.cli.services.ValidationService
+import java.util.concurrent.TimeUnit
+import kotlin.concurrent.thread
+
-private const val MIN_FREE_MEMORY = 250000000
private const val SESSION_DEFAULT_DURATION: Long = 60
+private const val SESSION_DEFAULT_SIZE: Long = 4
+
class ValidationServiceFactoryImpl : ValidationServiceFactory {
private var validationService: ValidationService
init {
validationService = createValidationServiceInstance();
+
}
- fun createValidationServiceInstance() : ValidationService {
+ fun createValidationServiceInstance(): ValidationService {
val sessionCacheDuration = System.getenv("SESSION_CACHE_DURATION")?.toLong() ?: SESSION_DEFAULT_DURATION;
- val sessionCache: SessionCache = PassiveExpiringSessionCache(sessionCacheDuration, TimeUnit.MINUTES).setResetExpirationAfterFetch(true);
- return ValidationService(sessionCache);
+ val sessionCacheSize = System.getenv("SESSION_CACHE_SIZE")?.toLong() ?: SESSION_DEFAULT_SIZE
+
+ val sessionCache: SessionCache =
+ GuavaSessionCacheAdapter(sessionCacheSize, sessionCacheDuration)
+ val validationService = ValidationService(sessionCache);
+ thread {
+ Preset.values().forEach {
+ if (it != Preset.CUSTOM) {
+ println("Loading preset: " + it.key)
+ try {
+ validationService.putBaseEngine(it.key, it.cliContext)
+ } catch (e: Exception) {
+ println("Error loading preset: " + it.key)
+ e.printStackTrace()
+ }
+ println("Preset loaded: " + it.key);
+ }
+ }
+ }
+ return validationService
}
override fun getValidationService() : ValidationService {
- if (java.lang.Runtime.getRuntime().freeMemory() < MIN_FREE_MEMORY) {
- println("Free memory ${java.lang.Runtime.getRuntime().freeMemory()} is less than ${MIN_FREE_MEMORY}. Re-initializing validationService");
+ val engineReloadThreshold = (System.getenv("ENGINE_RELOAD_THRESHOLD") ?: "250000000").toLong()
+ if (java.lang.Runtime.getRuntime().freeMemory() < engineReloadThreshold) {
+ println("Free memory ${java.lang.Runtime.getRuntime().freeMemory()} is less than ${engineReloadThreshold}. Re-initializing validationService");
validationService = createValidationServiceInstance();
}
return validationService;
diff --git a/src/jvmTest/kotlin/controller/validation/GuavaCacheTest.kt b/src/jvmTest/kotlin/controller/validation/GuavaCacheTest.kt
new file mode 100644
index 00000000..08268a8d
--- /dev/null
+++ b/src/jvmTest/kotlin/controller/validation/GuavaCacheTest.kt
@@ -0,0 +1,41 @@
+package controller.validation
+
+import io.mockk.mockk
+import org.hl7.fhir.validation.ValidationEngine
+import org.junit.jupiter.api.Test
+import org.junit.jupiter.api.TestInstance
+
+@TestInstance(TestInstance.Lifecycle.PER_CLASS)
+class GuavaCacheTest {
+
+ @Test
+ fun `test happy path`() {
+ val sessionCache: GuavaSessionCacheAdapter =
+ GuavaSessionCacheAdapter(2, 10)
+ val sessionIds : Set = sessionCache.getSessionIds();
+ val engine1 : ValidationEngine = mockk()
+ val sessionId1 = sessionCache.cacheSession(engine1);
+
+ val engine2 : ValidationEngine = mockk()
+ val sessionId2 = sessionCache.cacheSession(engine2);
+
+ assert(sessionCache.sessionIds.size == 2)
+
+ val engine3 : ValidationEngine = mockk()
+ val sessionId3 = sessionCache.cacheSession(engine3);
+
+ assert(sessionCache.sessionIds.size == 2)
+ assert(sessionCache.sessionExists(sessionId2));
+ assert(sessionCache.sessionExists(sessionId3));
+
+ sessionCache.fetchSessionValidatorEngine(sessionId2);
+
+ val engine4 : ValidationEngine = mockk()
+ val sessionId4 = sessionCache.cacheSession(engine4);
+
+ assert(sessionCache.sessionIds.size == 2)
+ assert(sessionCache.sessionExists(sessionId2));
+ assert(sessionCache.sessionExists(sessionId4));
+
+ }
+}
\ No newline at end of file