From 532a38ddcd1ea7ef74c69262f63b7afc59b37e88 Mon Sep 17 00:00:00 2001 From: healthedata1 Date: Thu, 19 Oct 2023 22:39:56 -0700 Subject: [PATCH] add fhir write mockup --- add-add'l-USCDI-extensions.ipynb | 2384 ++- fsh-generated/includes/fsh-link-references.md | 2 + fsh-generated/includes/menu.xml | 3 + .../ImplementationGuide-uscdi4-sandbox.json | 34 +- input/data/additional-uscdi-requirements.csv | 2 + input/data/ig.yml | 35 +- input/data/uscdi-table.csv | 136 + .../Procedure-R4-defib-implant.yml | 47 + .../examples/Procedure-R4-defib-implant.json | 72 + .../includes/additional-requirements-intro.md | 2 +- input/includes/link-list.md | 1 + input/includes/sd_link.html | 7 + input/includes/uscdi-uscore-map.html | 6 +- input/includes/uscdi-uscore-map.html.tmp | 118 + ...ctureDefinition-us-core-procedure-intro.md | 53 + input/pagecontent/fhir-write.md | 194 + input/pagecontent/future.md | 81 + input/pagecontent/guidance.md | 30 +- ...inition-us-core-average-blood-pressure.yml | 11 +- ...ion-us-core-care-experience-preference.yml | 4 +- .../StructureDefinition-us-core-location.yml | 11 +- ...finition-us-core-medication-adherence.yml} | 33 +- ...tureDefinition-us-core-observation-lab.yml | 6 +- .../StructureDefinition-us-core-patient.yml | 53 +- .../StructureDefinition-us-core-procedure.yml | 108 + .../StructureDefinition-us-core-specimen.yml | 12 +- ...core-treatment-intervention-preference.yml | 8 +- ...inition-us-core-average-blood-pressure.yml | 16 +- .../StructureDefinition-us-core-location.yml | 221 +- ...medicationrequest-compliance-extension.yml | 168 - ...tureDefinition-us-core-observation-lab.yml | 11 +- .../StructureDefinition-us-core-patient.yml | 133 +- .../StructureDefinition-us-core-procedure.yml | 132 + .../StructureDefinition-us-core-specimen.yml | 17 +- ...core-treatment-intervention-preference.yml | 4 +- ...eDefinition-uscore-medicationstatement.yml | 254 - ...inition-us-core-average-blood-pressure.yml | 11 +- ...ion-us-core-care-experience-preference.yml | 4 +- .../StructureDefinition-us-core-location.yml | 11 +- ...finition-us-core-medication-adherence.yml} | 39 +- ...tureDefinition-us-core-observation-lab.yml | 6 +- .../StructureDefinition-us-core-patient.yml | 53 +- .../StructureDefinition-us-core-procedure.yml | 108 + .../StructureDefinition-us-core-specimen.yml | 12 +- ...core-treatment-intervention-preference.yml | 8 +- ...nition-us-core-average-blood-pressure.json | 13 +- ...on-us-core-care-experience-preference.json | 4 +- .../StructureDefinition-us-core-location.json | 11 +- ...inition-us-core-medication-adherence.json} | 38 +- ...ureDefinition-us-core-observation-lab.json | 6 +- .../StructureDefinition-us-core-patient.json | 48 +- ...StructureDefinition-us-core-procedure.json | 169 + .../StructureDefinition-us-core-specimen.json | 14 +- ...ore-treatment-intervention-preference.json | 8 +- input/resources/assessments-valuesets.xlsx | Bin 6394 -> 0 bytes remove-USCDI-extensions.ipynb | 15440 +++++++++++++++- sushi-config.yaml | 6 + 57 files changed, 18907 insertions(+), 1511 deletions(-) create mode 100644 input/data/uscdi-table.csv create mode 100644 input/examples-yaml/Procedure-R4-defib-implant.yml create mode 100644 input/examples/Procedure-R4-defib-implant.json create mode 100644 input/includes/sd_link.html create mode 100644 input/includes/uscdi-uscore-map.html.tmp create mode 100644 input/intro-notes/StructureDefinition-us-core-procedure-intro.md create mode 100644 input/pagecontent/fhir-write.md create mode 100644 input/pagecontent/future.md rename input/resources-yaml-copy/{StructureDefinition-us-core-medicationrequest-compliance-extension.yml => StructureDefinition-us-core-medication-adherence.yml} (83%) create mode 100644 input/resources-yaml-copy/StructureDefinition-us-core-procedure.yml delete mode 100644 input/resources-yaml-old/StructureDefinition-us-core-medicationrequest-compliance-extension.yml create mode 100644 input/resources-yaml-old/StructureDefinition-us-core-procedure.yml delete mode 100644 input/resources-yaml-old/StructureDefinition-uscore-medicationstatement.yml rename input/resources-yaml/{StructureDefinition-us-core-medicationrequest-compliance-extension.yml => StructureDefinition-us-core-medication-adherence.yml} (79%) create mode 100644 input/resources-yaml/StructureDefinition-us-core-procedure.yml rename input/resources/{StructureDefinition-us-core-medicationrequest-compliance-extension.json => StructureDefinition-us-core-medication-adherence.json} (86%) create mode 100644 input/resources/StructureDefinition-us-core-procedure.json delete mode 100644 input/resources/assessments-valuesets.xlsx diff --git a/add-add'l-USCDI-extensions.ipynb b/add-add'l-USCDI-extensions.ipynb index d61dfd92..03678300 100644 --- a/add-add'l-USCDI-extensions.ipynb +++ b/add-add'l-USCDI-extensions.ipynb @@ -19,25 +19,18 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 1, + "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "('2023-10-11',\n", - " PosixPath('/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml'),\n", - " PosixPath('/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml-copy'))" + "('2023-10-17',\n", + " PosixPath('/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml'),\n", + " PosixPath('/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml-copy'))" ] }, - "execution_count": 1, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -50,12 +43,14 @@ "from datetime import datetime\n", "from fhir.resources.structuredefinition import StructureDefinition\n", "\n", - "in_path = Path(r'/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml')\n", - "R4_path = Path(r'/Users/ehaas/.fhir/packages/hl7.fhir.r4.core#4.0.1/package')\n", - "\n", - "out_path = Path(r'/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml-copy')\n", - "#create out_path using pathlib Path.mkdir(parents=True, exist_ok=True)\n", + "my_path = r'/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input'\n", + "# my_path = r'/Users/ehaas/Documents/FHIR/US-Core/input'\n", + "in_path = Path(my_path) / 'resources-yaml'\n", + "out_path = Path(my_path) / 'resources-yaml-copy'\n", "out_path.mkdir(parents=True, exist_ok=True)\n", + "#create out_path using pathlib Path.mkdir(parents=True, exist_ok=True)\n", + "\n", + "R4_path = Path(r'/Users/ehaas/.fhir/packages/hl7.fhir.r4.core#4.0.1/package')\n", "\n", "today = datetime.today().strftime('%Y-%m-%d')\n", "today, in_path, out_path" @@ -63,7 +58,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 6, "metadata": {}, "outputs": [ { @@ -84,6 +79,8 @@ " 'Patient.name.suffix',\n", " 'ServiceRequest.reasonCode',\n", " 'ServiceRequest.reasonReference',\n", + " 'Procedure.reasonCode',\n", + " 'Procedure.reasonReference',\n", " 'MedicationRequest.reasonCode',\n", " 'MedicationRequest.reasonReference',\n", " 'MedicationRequest.extension:medicationAdherence',\n", @@ -94,7 +91,7 @@ " 'Specimen.condition']" ] }, - "execution_count": 2, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } @@ -102,7 +99,8 @@ "source": [ "# get csv file of add'l uscdi elements using pandas\n", "import pandas as pd\n", - "df = pd.read_csv(r'/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/data/additional-uscdi-requirements.csv')\n", + "additional_uscdi = Path(my_path) / 'data/additional-uscdi-requirements.csv'\n", + "df = pd.read_csv(additional_uscdi)\n", "\n", "#list the FHIR Element column\n", "addl_uscdi_elements = df['FHIR Element'].tolist()\n", @@ -114,14 +112,29 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-specimen.yml***********\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-sex.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-specimen.yml***********\n", "☞ ☞ ☞ Type = Specimen\n", "☞ ☞ ☞ element 0: Specimen\n", "❗❗❗ done with element\n", @@ -129,98 +142,141 @@ "☞ ☞ ☞ element 1: Specimen.identifier\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Specimen.accessionIdentifier\n", - "❗❗❗ done with element\n", - "----------\n", - "☞ ☞ ☞ element 3: Specimen.type\n", + "☞ ☞ ☞ element 2: Specimen.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Specimen.subject\n", + "☞ ☞ ☞ element 3: Specimen.subject\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Specimen.collection\n", + "☞ ☞ ☞ element 4: Specimen.collection\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: Specimen.collection.bodySite\n", + "☞ ☞ ☞ element 5: Specimen.collection.bodySite\n", "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: Specimen.condition\n", + "☞ ☞ ☞ element 6: Specimen.condition\n", "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-medicationrequest-compliance-extension.yml***********\n", - "☞ ☞ ☞ Type = Extension\n", - "☞ ☞ ☞ element 0: Extension\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-pregnancystatus.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: Extension.extension\n", + "☞ ☞ ☞ element 1: Observation.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Extension.extension:medicationAdherence\n", + "☞ ☞ ☞ element 2: Observation.category\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Extension.extension:medicationAdherence.url\n", + "☞ ☞ ☞ element 3: Observation.category:SocialHistory\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Extension.extension:medicationAdherence.value[x]\n", + "☞ ☞ ☞ element 4: Observation.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Extension.extension:dateAsserted\n", + "☞ ☞ ☞ element 5: Observation.subject\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: Extension.extension:dateAsserted.url\n", + "☞ ☞ ☞ element 6: Observation.effectiveDateTime\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: Extension.extension:dateAsserted.value[x]\n", + "☞ ☞ ☞ element 7: Observation.valueCodeableConcept\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 8: Extension.extension:informationSource\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-occupation.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 9: Extension.extension:informationSource.url\n", + "☞ ☞ ☞ element 1: Observation.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 10: Extension.extension:informationSource.value[x]\n", + "☞ ☞ ☞ element 2: Observation.category\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 11: Extension.url\n", + "☞ ☞ ☞ element 3: Observation.category:socialhistory\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 12: Extension.value[x]\n", + "☞ ☞ ☞ element 4: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.effectivePeriod\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.valueCodeableConcept\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.component\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.component:industry\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Observation.component:industry.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Observation.component:industry.valueCodeableConcept\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml***********\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-sexual-orientation.yml***********\n", "☞ ☞ ☞ Type = Observation\n", "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: Observation.category:us-core\n", + "☞ ☞ ☞ element 1: Observation.status\n", "❗❗❗ done with element\n", "----------\n", "☞ ☞ ☞ element 2: Observation.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Observation.derivedFrom\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 3: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueCodeableConcept\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-birthsex.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml***********\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml***********\n", "☞ ☞ ☞ Type = Observation\n", "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", @@ -233,325 +289,2275 @@ "----------\n", "☞ ☞ ☞ element 3: Observation.derivedFrom\n", "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-location.yml***********\n", - "☞ ☞ ☞ Type = Location\n", - "☞ ☞ ☞ element 0: Location\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-careplan.yml***********\n", + "☞ ☞ ☞ Type = CarePlan\n", + "☞ ☞ ☞ element 0: CarePlan\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: Location.identifier\n", + "☞ ☞ ☞ element 1: CarePlan.text\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Location.status\n", + "☞ ☞ ☞ element 2: CarePlan.text.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Location.name\n", + "☞ ☞ ☞ element 3: CarePlan.text.div\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Location.type\n", + "☞ ☞ ☞ element 4: CarePlan.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Location.telecom\n", + "☞ ☞ ☞ element 5: CarePlan.intent\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: Location.address\n", + "☞ ☞ ☞ element 6: CarePlan.category\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: Location.address.line\n", + "☞ ☞ ☞ element 7: CarePlan.category:AssessPlan\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 8: Location.address.city\n", + "☞ ☞ ☞ element 8: CarePlan.subject\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 9: Location.address.state\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-diagnosticreport-note.yml***********\n", + "☞ ☞ ☞ Type = DiagnosticReport\n", + "☞ ☞ ☞ element 0: DiagnosticReport\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 10: Location.address.postalCode\n", + "☞ ☞ ☞ element 1: DiagnosticReport.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 11: Location.managingOrganization\n", + "☞ ☞ ☞ element 2: DiagnosticReport.category\n", "❗❗❗ done with element\n", "----------\n", - "❗❗❗ done with SD\n", - "----------------------------------------\n", - "\n", - "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-uscore-medicationstatement.yml***********\n", - "☞ ☞ ☞ Type = MedicationStatement\n", - "☞ ☞ ☞ element 0: MedicationStatement\n", + "☞ ☞ ☞ element 3: DiagnosticReport.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: DiagnosticReport.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: DiagnosticReport.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: DiagnosticReport.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: DiagnosticReport.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: DiagnosticReport.issued\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: DiagnosticReport.performer\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: DiagnosticReport.result\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: MedicationStatement.extension:med-adherence\n", + "☞ ☞ ☞ element 11: DiagnosticReport.media\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: MedicationStatement.basedOn\n", + "☞ ☞ ☞ element 12: DiagnosticReport.media.link\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: MedicationStatement.status\n", + "☞ ☞ ☞ element 13: DiagnosticReport.presentedForm\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: MedicationStatement.medication[x]\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-provenance.yml***********\n", + "☞ ☞ ☞ Type = Provenance\n", + "☞ ☞ ☞ element 0: Provenance\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: MedicationStatement.subject\n", + "☞ ☞ ☞ element 1: Provenance.target\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: MedicationStatement.effective[x]\n", + "☞ ☞ ☞ element 2: Provenance.target.reference\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: MedicationStatement.dateAsserted\n", + "☞ ☞ ☞ element 3: Provenance.recorded\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 8: MedicationStatement.informationSource\n", + "☞ ☞ ☞ element 4: Provenance.agent\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 9: MedicationStatement.reasonCode\n", + "☞ ☞ ☞ element 5: Provenance.agent.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 10: MedicationStatement.reasonReference\n", + "☞ ☞ ☞ element 6: Provenance.agent.who\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 11: MedicationStatement.dosage\n", + "☞ ☞ ☞ element 7: Provenance.agent.onBehalfOf\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 12: MedicationStatement.dosage.text\n", + "☞ ☞ ☞ element 8: Provenance.agent:ProvenanceAuthor\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 13: MedicationStatement.dosage.timing\n", + "☞ ☞ ☞ element 9: Provenance.agent:ProvenanceAuthor.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 14: MedicationStatement.dosage.doseAndRate\n", + "☞ ☞ ☞ element 10: Provenance.agent:ProvenanceTransmitter\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 15: MedicationStatement.dosage.doseAndRate.dose[x]\n", + "☞ ☞ ☞ element 11: Provenance.agent:ProvenanceTransmitter.type\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-patient.yml***********\n", - "☞ ☞ ☞ Type = Patient\n", - "☞ ☞ ☞ element 0: Patient\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-blood-pressure.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: Patient.extension:race\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 1: Observation.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Patient.extension:ethnicity\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 2: Observation.component\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Patient.extension:tribalAffiliation\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 3: Observation.component:systolic\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Patient.extension:birthsex\n", + "☞ ☞ ☞ element 4: Observation.component:systolic.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Patient.extension:sex\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 5: Observation.component:systolic.valueQuantity\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: Patient.extension:genderIdentity\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 6: Observation.component:systolic.valueQuantity.value\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: Patient.identifier\n", + "☞ ☞ ☞ element 7: Observation.component:systolic.valueQuantity.unit\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 8: Patient.identifier.system\n", + "☞ ☞ ☞ element 8: Observation.component:systolic.valueQuantity.system\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 9: Patient.identifier.value\n", + "☞ ☞ ☞ element 9: Observation.component:systolic.valueQuantity.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 10: Patient.name\n", + "☞ ☞ ☞ element 10: Observation.component:diastolic\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 11: Patient.name.use\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 11: Observation.component:diastolic.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 12: Patient.name.family\n", + "☞ ☞ ☞ element 12: Observation.component:diastolic.valueQuantity\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 13: Patient.name.given\n", + "☞ ☞ ☞ element 13: Observation.component:diastolic.valueQuantity.value\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 14: Patient.name.suffix\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 14: Observation.component:diastolic.valueQuantity.unit\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 15: Patient.name.period\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 15: Observation.component:diastolic.valueQuantity.system\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 16: Patient.telecom\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the short element from the base\n", + "☞ ☞ ☞ element 16: Observation.component:diastolic.valueQuantity.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 17: Patient.telecom.system\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-condition-encounter-diagnosis.yml***********\n", + "☞ ☞ ☞ Type = Condition\n", + "☞ ☞ ☞ element 0: Condition\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 18: Patient.telecom.value\n", + "☞ ☞ ☞ element 1: Condition.extension:assertedDate\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 19: Patient.telecom.use\n", + "☞ ☞ ☞ element 2: Condition.clinicalStatus\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 20: Patient.gender\n", + "☞ ☞ ☞ element 3: Condition.verificationStatus\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 21: Patient.birthDate\n", + "☞ ☞ ☞ element 4: Condition.category\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 22: Patient.deceased[x]\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the short element from the base\n", + "☞ ☞ ☞ element 5: Condition.category:us-core\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 23: Patient.address\n", + "☞ ☞ ☞ element 6: Condition.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 24: Patient.address.use\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "☞ ☞ ☞ element 7: Condition.subject\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 25: Patient.address.line\n", + "☞ ☞ ☞ element 8: Condition.encounter\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 26: Patient.address.city\n", + "☞ ☞ ☞ element 9: Condition.onset[x]\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 27: Patient.address.state\n", + "☞ ☞ ☞ element 10: Condition.abatement[x]\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 28: Patient.address.postalCode\n", + "☞ ☞ ☞ element 11: Condition.recordedDate\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 29: Patient.address.period\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-heart-rate.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 30: Patient.communication\n", - "❗❗❗add the USCDI extension\n", - "❗❗❗add the short element from the base\n", + "☞ ☞ ☞ element 1: Observation.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 31: Patient.communication.language\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml***********\n", - "☞ ☞ ☞ Type = Observation\n", - "☞ ☞ ☞ element 0: Observation\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-medication.yml***********\n", + "☞ ☞ ☞ Type = Medication\n", + "☞ ☞ ☞ element 0: Medication\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 1: Observation.code\n", + "☞ ☞ ☞ element 1: Medication.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Observation.effective[x]\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-coverage.yml***********\n", + "☞ ☞ ☞ Type = Coverage\n", + "☞ ☞ ☞ element 0: Coverage\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Observation.component\n", + "☞ ☞ ☞ element 1: Coverage.identifier\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Observation.component:systolic\n", + "☞ ☞ ☞ element 2: Coverage.identifier:memberid\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Observation.component:systolic.code\n", + "☞ ☞ ☞ element 3: Coverage.identifier:memberid.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 6: Observation.component:systolic.valueQuantity\n", + "☞ ☞ ☞ element 4: Coverage.status\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 7: Observation.component:systolic.valueQuantity.value\n", + "☞ ☞ ☞ element 5: Coverage.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 8: Observation.component:systolic.valueQuantity.unit\n", + "☞ ☞ ☞ element 6: Coverage.subscriberId\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 9: Observation.component:systolic.valueQuantity.system\n", + "☞ ☞ ☞ element 7: Coverage.beneficiary\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 10: Observation.component:systolic.valueQuantity.code\n", + "☞ ☞ ☞ element 8: Coverage.relationship\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 11: Observation.component:diastolic\n", + "☞ ☞ ☞ element 9: Coverage.period\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 12: Observation.component:diastolic.code\n", + "☞ ☞ ☞ element 10: Coverage.payor\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 13: Observation.component:diastolic.valueQuantity\n", + "☞ ☞ ☞ element 11: Coverage.class\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 14: Observation.component:diastolic.valueQuantity.value\n", + "☞ ☞ ☞ element 12: Coverage.class:group\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 15: Observation.component:diastolic.valueQuantity.unit\n", + "☞ ☞ ☞ element 13: Coverage.class:group.type\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 16: Observation.component:diastolic.valueQuantity.system\n", + "☞ ☞ ☞ element 14: Coverage.class:group.value\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 17: Observation.component:diastolic.valueQuantity.code\n", + "☞ ☞ ☞ element 15: Coverage.class:group.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Coverage.class:plan\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Coverage.class:plan.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 18: Coverage.class:plan.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 19: Coverage.class:plan.name\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", "\n", - "***********/Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml***********\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-pediatric-weight-for-height.yml***********\n", "☞ ☞ ☞ Type = Observation\n", - "☞ ☞ ☞ element 0: Observation.category:us-core\n", + "☞ ☞ ☞ element 0: Observation\n", "❗❗❗ done with element\n", "----------\n", "☞ ☞ ☞ element 1: Observation.code\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 2: Observation.value[x]\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 3: Observation.interpretation\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 4: Observation.specimen\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", "❗❗❗ done with element\n", "----------\n", - "☞ ☞ ☞ element 5: Observation.referenceRange\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", "❗❗❗ done with element\n", "----------\n", "❗❗❗ done with SD\n", "----------------------------------------\n", "\n", - "\n" - ] - } - ], - "source": [ + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-questionnaireresponse.yml***********\n", + "☞ ☞ ☞ Type = QuestionnaireResponse\n", + "☞ ☞ ☞ element 0: QuestionnaireResponse\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: QuestionnaireResponse.questionnaire\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: QuestionnaireResponse.questionnaire.extension:url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: QuestionnaireResponse.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: QuestionnaireResponse.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: QuestionnaireResponse.authored\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: QuestionnaireResponse.author\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: QuestionnaireResponse.item\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: QuestionnaireResponse.item.linkId\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: QuestionnaireResponse.item.answer.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.derivedFrom\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-implantable-device.yml***********\n", + "☞ ☞ ☞ Type = Device\n", + "☞ ☞ ☞ element 0: Device\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Device.udiCarrier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Device.udiCarrier.deviceIdentifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Device.udiCarrier.carrierHRF\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Device.distinctIdentifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Device.manufactureDate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Device.expirationDate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Device.lotNumber\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Device.serialNumber\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Device.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Device.patient\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-head-occipital-frontal-circumference-percentile.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-direct.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-location.yml***********\n", + "☞ ☞ ☞ Type = Location\n", + "☞ ☞ ☞ element 0: Location\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Location.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Location.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Location.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Location.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Location.telecom\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Location.address\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Location.address.line\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Location.address.city\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Location.address.state\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Location.address.postalCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Location.managingOrganization\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-head-circumference.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-pulse-oximetry.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.code.coding\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.code.coding:PulseOx\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.code.coding:O2Sat\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Observation.component\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Observation.component:FlowRate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Observation.component:FlowRate.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Observation.component:FlowRate.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Observation.component:FlowRate.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Observation.component:FlowRate.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Observation.component:FlowRate.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Observation.component:FlowRate.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 18: Observation.component:Concentration\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 19: Observation.component:Concentration.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 20: Observation.component:Concentration.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 21: Observation.component:Concentration.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 22: Observation.component:Concentration.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 23: Observation.component:Concentration.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 24: Observation.component:Concentration.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-servicerequest.yml***********\n", + "☞ ☞ ☞ Type = ServiceRequest\n", + "☞ ☞ ☞ element 0: ServiceRequest\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: ServiceRequest.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: ServiceRequest.intent\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: ServiceRequest.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: ServiceRequest.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: ServiceRequest.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: ServiceRequest.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: ServiceRequest.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: ServiceRequest.occurrence[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: ServiceRequest.authoredOn\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: ServiceRequest.requester\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: ServiceRequest.reasonCode\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: ServiceRequest.reasonReference\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-medication-adherence.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.extension:medicationAdherence\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Extension.extension:medicationAdherence.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Extension.extension:medicationAdherence.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Extension.extension:dateAsserted\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Extension.extension:dateAsserted.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Extension.extension:dateAsserted.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Extension.extension:informationSource\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Extension.extension:informationSource.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Extension.extension:informationSource.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-bmi.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-immunization.yml***********\n", + "☞ ☞ ☞ Type = Immunization\n", + "☞ ☞ ☞ element 0: Immunization\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Immunization.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Immunization.statusReason\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Immunization.vaccineCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Immunization.patient\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Immunization.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Immunization.occurrence[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Immunization.primarySource\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Immunization.location\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-practitionerrole.yml***********\n", + "☞ ☞ ☞ Type = PractitionerRole\n", + "☞ ☞ ☞ element 0: PractitionerRole\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: PractitionerRole.practitioner\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: PractitionerRole.organization\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: PractitionerRole.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: PractitionerRole.specialty\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: PractitionerRole.location\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: PractitionerRole.healthcareService\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: PractitionerRole.telecom\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: PractitionerRole.telecom.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: PractitionerRole.telecom.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: PractitionerRole.endpoint\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-patient.yml***********\n", + "☞ ☞ ☞ Type = Patient\n", + "☞ ☞ ☞ element 0: Patient\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Patient.extension:race\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Patient.extension:ethnicity\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Patient.extension:tribalAffiliation\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Patient.extension:birthsex\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Patient.extension:sex\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Patient.extension:genderIdentity\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Patient.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Patient.identifier.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Patient.identifier.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Patient.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Patient.name.use\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗element not found in base SD - look at the datatype in the path Patient.name.use\n", + "parent_element_path = Patient.name datatype_element_path = use\n", + "datatype = HumanName\n", + "type = HumanName, path = HumanName.use\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Patient.name.family\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Patient.name.given\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Patient.name.suffix\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗element not found in base SD - look at the datatype in the path Patient.name.suffix\n", + "parent_element_path = Patient.name datatype_element_path = suffix\n", + "datatype = HumanName\n", + "type = HumanName, path = HumanName.suffix\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Patient.name.period\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗element not found in base SD - look at the datatype in the path Patient.name.period\n", + "parent_element_path = Patient.name datatype_element_path = period\n", + "datatype = HumanName\n", + "type = HumanName, path = HumanName.period\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Patient.telecom\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Patient.telecom.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 18: Patient.telecom.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 19: Patient.telecom.use\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 20: Patient.gender\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 21: Patient.birthDate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 22: Patient.deceased[x]\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 23: Patient.address\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 24: Patient.address.use\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗element not found in base SD - look at the datatype in the path Patient.address.use\n", + "parent_element_path = Patient.address datatype_element_path = use\n", + "datatype = Address\n", + "type = Address, path = Address.use\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 25: Patient.address.line\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 26: Patient.address.city\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 27: Patient.address.state\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 28: Patient.address.postalCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 29: Patient.address.period\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗element not found in base SD - look at the datatype in the path Patient.address.period\n", + "parent_element_path = Patient.address datatype_element_path = period\n", + "datatype = Address\n", + "type = Address, path = Address.period\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 30: Patient.communication\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 31: Patient.communication.language\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-tribal-affiliation.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.extension:tribalAffiliation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Extension.extension:tribalAffiliation.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Extension.extension:tribalAffiliation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Extension.extension:isEnrolled\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Extension.extension:isEnrolled.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Extension.extension:isEnrolled.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-race.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.extension:ombCategory\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Extension.extension:ombCategory.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Extension.extension:ombCategory.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Extension.extension:detailed\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Extension.extension:detailed.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Extension.extension:detailed.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Extension.extension:text\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Extension.extension:text.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Extension.extension:text.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-allergyintolerance.yml***********\n", + "☞ ☞ ☞ Type = AllergyIntolerance\n", + "☞ ☞ ☞ element 0: AllergyIntolerance\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: AllergyIntolerance.clinicalStatus\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: AllergyIntolerance.verificationStatus\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: AllergyIntolerance.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: AllergyIntolerance.patient\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: AllergyIntolerance.reaction\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: AllergyIntolerance.reaction.manifestation\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-organization.yml***********\n", + "☞ ☞ ☞ Type = Organization\n", + "☞ ☞ ☞ element 0: Organization\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Organization.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Organization.identifier.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Organization.identifier.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Organization.identifier:NPI\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Organization.identifier:CLIA\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Organization.identifier:NAIC\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Organization.active\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Organization.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Organization.telecom\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Organization.telecom.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Organization.telecom.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Organization.address\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Organization.address.line\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Organization.address.city\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Organization.address.state\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Organization.address.postalCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Organization.address.country\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-uscdi-requirements.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-medicationrequest.yml***********\n", + "☞ ☞ ☞ Type = MedicationRequest\n", + "☞ ☞ ☞ element 0: MedicationRequest\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: MedicationRequest.extension:medicationAdherence\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: MedicationRequest.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: MedicationRequest.intent\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: MedicationRequest.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: MedicationRequest.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: MedicationRequest.reported[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: MedicationRequest.medication[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: MedicationRequest.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: MedicationRequest.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: MedicationRequest.authoredOn\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: MedicationRequest.requester\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: MedicationRequest.reasonCode\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: MedicationRequest.reasonReference\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: MedicationRequest.dosageInstruction\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: MedicationRequest.dosageInstruction.text\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: MedicationRequest.dosageInstruction.timing\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: MedicationRequest.dosageInstruction.doseAndRate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 18: MedicationRequest.dosageInstruction.doseAndRate.dose[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 19: MedicationRequest.dispenseRequest\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 20: MedicationRequest.dispenseRequest.numberOfRepeatsAllowed\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 21: MedicationRequest.dispenseRequest.quantity\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-ethnicity.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.extension:ombCategory\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Extension.extension:ombCategory.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Extension.extension:ombCategory.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Extension.extension:detailed\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Extension.extension:detailed.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Extension.extension:detailed.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Extension.extension:text\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Extension.extension:text.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Extension.extension:text.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.component\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.component:systolic\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.component:systolic.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.component:systolic.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.component:systolic.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.component:systolic.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.component:systolic.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Observation.component:systolic.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Observation.component:diastolic\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Observation.component:diastolic.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Observation.component:diastolic.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Observation.component:diastolic.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Observation.component:diastolic.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Observation.component:diastolic.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Observation.component:diastolic.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-vital-signs.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:VSCat\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.category:VSCat.coding\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.category:VSCat.coding.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.category:VSCat.coding.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Observation.dataAbsentReason\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Observation.component\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Observation.component.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Observation.component.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Observation.component.dataAbsentReason\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-simple-observation.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.performer\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.derivedFrom\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.interpretation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.specimen\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.referenceRange\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-medicationdispense.yml***********\n", + "☞ ☞ ☞ Type = MedicationDispense\n", + "☞ ☞ ☞ element 0: MedicationDispense\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: MedicationDispense.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: MedicationDispense.medication[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: MedicationDispense.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: MedicationDispense.context\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: MedicationDispense.performer\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: MedicationDispense.performer.actor\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: MedicationDispense.authorizingPrescription\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: MedicationDispense.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: MedicationDispense.quantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: MedicationDispense.whenHandedOver\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: MedicationDispense.dosageInstruction\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: MedicationDispense.dosageInstruction.text\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: MedicationDispense.dosageInstruction.timing\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: MedicationDispense.dosageInstruction.doseAndRate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: MedicationDispense.dosageInstruction.doseAndRate.dose[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-careteam.yml***********\n", + "☞ ☞ ☞ Type = CareTeam\n", + "☞ ☞ ☞ element 0: CareTeam\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: CareTeam.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: CareTeam.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: CareTeam.participant\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: CareTeam.participant.role\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: CareTeam.participant.member\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-genderidentity.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-procedure.yml***********\n", + "☞ ☞ ☞ Type = Procedure\n", + "☞ ☞ ☞ element 0: Procedure\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Procedure.basedOn\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Procedure.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Procedure.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Procedure.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Procedure.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Procedure.performed[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-documentreference.yml***********\n", + "☞ ☞ ☞ Type = DocumentReference\n", + "☞ ☞ ☞ element 0: DocumentReference\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: DocumentReference.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: DocumentReference.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: DocumentReference.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: DocumentReference.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: DocumentReference.category:uscore\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the short element from the base\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: DocumentReference.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: DocumentReference.date\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: DocumentReference.author\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: DocumentReference.content\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: DocumentReference.content.attachment\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: DocumentReference.content.attachment.contentType\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: DocumentReference.content.attachment.data\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: DocumentReference.content.attachment.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: DocumentReference.content.format\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: DocumentReference.context\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: DocumentReference.context.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: DocumentReference.context.period\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-jurisdiction.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-clinical-result.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.dataAbsentReason\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-body-height.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-encounter.yml***********\n", + "☞ ☞ ☞ Type = Encounter\n", + "☞ ☞ ☞ element 0: Encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Encounter.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Encounter.identifier.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Encounter.identifier.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Encounter.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Encounter.class\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Encounter.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Encounter.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Encounter.participant\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Encounter.participant.type\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Encounter.participant.period\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Encounter.participant.individual\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Encounter.period\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Encounter.reasonCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Encounter.reasonReference\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Encounter.hospitalization\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 16: Encounter.hospitalization.dischargeDisposition\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 17: Encounter.location\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 18: Encounter.location.location\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 19: Encounter.serviceProvider\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-body-temperature.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-smokingstatus.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:SocialHistory\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.effectiveDateTime\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-body-weight.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-respiratory-rate.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-diagnosticreport-lab.yml***********\n", + "☞ ☞ ☞ Type = DiagnosticReport\n", + "☞ ☞ ☞ element 0: DiagnosticReport\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: DiagnosticReport.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: DiagnosticReport.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: DiagnosticReport.category:LaboratorySlice\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: DiagnosticReport.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: DiagnosticReport.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: DiagnosticReport.encounter\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: DiagnosticReport.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: DiagnosticReport.issued\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: DiagnosticReport.performer\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: DiagnosticReport.result\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-extension-questionnaire-uri.yml***********\n", + "☞ ☞ ☞ Type = Extension\n", + "☞ ☞ ☞ element 0: Extension\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Extension.url\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Extension.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-pregnancyintent.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:SocialHistory\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.effectiveDateTime\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.valueCodeableConcept\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-relatedperson.yml***********\n", + "☞ ☞ ☞ Type = RelatedPerson\n", + "☞ ☞ ☞ element 0: RelatedPerson\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: RelatedPerson.active\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: RelatedPerson.patient\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: RelatedPerson.relationship\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: RelatedPerson.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: RelatedPerson.telecom\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: RelatedPerson.address\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-condition-problems-health-concerns.yml***********\n", + "☞ ☞ ☞ Type = Condition\n", + "☞ ☞ ☞ element 0: Condition\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Condition.extension:assertedDate\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Condition.clinicalStatus\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Condition.verificationStatus\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Condition.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Condition.category:us-core\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Condition.category:screening-assessment\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Condition.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Condition.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Condition.onset[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Condition.abatement[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Condition.recordedDate\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-goal.yml***********\n", + "☞ ☞ ☞ Type = Goal\n", + "☞ ☞ ☞ element 0: Goal\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Goal.lifecycleStatus\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Goal.description\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Goal.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Goal.start[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Goal.target\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Goal.target.due[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-practitioner.yml***********\n", + "☞ ☞ ☞ Type = Practitioner\n", + "☞ ☞ ☞ element 0: Practitioner\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Practitioner.identifier\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Practitioner.identifier.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Practitioner.identifier.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Practitioner.identifier:NPI\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Practitioner.name\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Practitioner.name.family\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Practitioner.telecom\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Practitioner.telecom.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Practitioner.telecom.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Practitioner.address\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Practitioner.address.line\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Practitioner.address.city\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 13: Practitioner.address.state\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 14: Practitioner.address.postalCode\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 15: Practitioner.address.country\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-pediatric-bmi-for-age.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.valueQuantity\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.valueQuantity.value\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.valueQuantity.unit\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.valueQuantity.system\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.valueQuantity.code\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n", + "***********/Users/ehaas/Documents/FHIR/US-Core/input/resources-yaml/StructureDefinition-us-core-observation-screening-assessment.yml***********\n", + "☞ ☞ ☞ Type = Observation\n", + "☞ ☞ ☞ element 0: Observation\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 1: Observation.status\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 2: Observation.category\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 3: Observation.category:survey\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 4: Observation.category:screening-assessment\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 5: Observation.code\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 6: Observation.subject\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 7: Observation.effective[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 8: Observation.performer\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 9: Observation.value[x]\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 10: Observation.dataAbsentReason\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 11: Observation.hasMember\n", + "❗❗❗ done with element\n", + "----------\n", + "☞ ☞ ☞ element 12: Observation.derivedFrom\n", + "❗❗❗add the USCDI extension\n", + "❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\n", + "❗❗❗ done with element\n", + "----------\n", + "❗❗❗ done with SD\n", + "----------------------------------------\n", + "\n", + "\n" + ] + } + ], + "source": [ + "def get_shorty(r_type, element_path):\n", + " for sd_base in R4_path.glob(f'StructureDefinition*-{r_type}.json'):\n", + " try:\n", + " r_base = loads(sd_base.read_text())\n", + " except Exception as e:\n", + " print(\"Exception: {}\".format(type(e).__name__))\n", + " print(\"Exception message: {}\".format(e))\n", + " # print(f\"======{sd_base}, {r_base['type']}======\")\n", + " for element in r_base['differential']['element']:\n", + " if element['id'] == element_path:\n", + " return element['short']\n", + " \n", + " print(f'❗❗❗element not found in base SD - look at the datatype in the path {element_path}')\n", + " #use the penultimate element in element_path to find the datatype in the base SD\n", + " parent_element_path = element_path.rsplit('.', 1)[0]\n", + " #use the last two element in element_path to find the datatype element in the base SD\n", + " datatype_element_path = element_path.split('.', )[-1]\n", + "\n", + " print(f\"parent_element_path = {parent_element_path} datatype_element_path = {datatype_element_path}\")\n", + "\n", + " #get the datatype\n", + " for element in r_base['differential']['element']:\n", + " if element['id'] == parent_element_path:\n", + " for type in element['type']:\n", + " print(f\"datatype = {type['code']}\")\n", + " #get the datatype SD short and compare to the shorty\n", + " path = f\"{type['code']}.{datatype_element_path}\"\n", + " print(f\"type = {type['code']}, path = {path}\")\n", + " return get_shorty(type['code'], (f\"{type['code']}.{datatype_element_path}\"),)\n", + "\n", + "\n", + "\n", "# read StructureDefinitions from resources-yaml folder using pathlib\n", "for sd in in_path.glob('Struct*.yml'):\n", " print(f\"***********{sd}***********\")\n", @@ -564,15 +2570,18 @@ " if element['id'] in addl_uscdi_elements:\n", " print('❗❗❗add the USCDI extension')\n", " r_copy['differential']['element'][i][\"extension\"] = [{\n", - " \"url\": \"http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi\",\n", + " \"url\": \"http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement\",\n", " \"valueBoolean\": True\n", " }]\n", " if 'short' in element.keys():\n", - " print(\"❗❗❗add the '𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\")\n", - " r_copy['differential']['element'][i][\"short\"] = f\"𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜: {element['short']}\"\n", + " shorty = element['short']\n", " else:\n", " print(\"❗❗❗add the short element from the base\")\n", + " shorty = get_shorty(r['type'], element['path'])\n", "\n", + " print(\"❗❗❗add the '𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜:' tag to short\")\n", + " r_copy['differential']['element'][i][\"short\"] = f\"𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: {shorty}\"\n", + " \n", " print('❗❗❗ done with element')\n", " print('-'*10)\n", "\n", @@ -596,13 +2605,14 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 8, "metadata": {}, "outputs": [], "source": [ - "##### DO THIS ONLY when you want to start over with removing all tags because it overwrites the original source folder ####\n", + "%%bash -s \"$in_path\" \"$out_path\"\n", + "##### DO THIS ONLY when you want to overwrite resources-yaml folder with resources-yaml-copy ####\n", "\n", - "#!cp /Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml-copy/Struct*.yml /Users/ehaas/Documents/FHIR/USCDI4-Sandbox/input/resources-yaml" + "cp $2/Struct*.yml $1" ] } ], diff --git a/fsh-generated/includes/fsh-link-references.md b/fsh-generated/includes/fsh-link-references.md index 670097c8..3b656f94 100644 --- a/fsh-generated/includes/fsh-link-references.md +++ b/fsh-generated/includes/fsh-link-references.md @@ -25,6 +25,7 @@ [medication-adherence-oral-axid]: Observation-medication-adherence-oral-axid.html [medication-adherence-oral-axid-boolean]: Observation-medication-adherence-oral-axid-boolean.html [medication-adherence-self-tylenol]: Observation-medication-adherence-self-tylenol.html +[defib-implant]: Procedure-defib-implant.html [serum-glucose]: Observation-serum-glucose.html [substance-use-status]: Observation-substance-use-status.html [TAPS-item-example-75889-6]: Observation-TAPS-item-example-75889-6.html @@ -45,6 +46,7 @@ [USCoreMedicationstatementStatus]: ValueSet-uscore-medicationstatement-status.html [USCoreMedicationStatement]: StructureDefinition-us-core-medicationstatement.html [USCorePatientProfile]: StructureDefinition-us-core-patient.html +[USCoreProcedureProfile]: StructureDefinition-us-core-procedure.html [USCoreSpecimenProfile]: StructureDefinition-us-core-specimen.html [USCoreTreatmentInterventionPreferenceCodeSystem]: CodeSystem-uscore-treatment-intervention-preference.html [USCoreTreatmentInterventionPreferenceProfile]: StructureDefinition-us-core-treatment-intervention-preference.html diff --git a/fsh-generated/includes/menu.xml b/fsh-generated/includes/menu.xml index fba11d4d..c018cb67 100644 --- a/fsh-generated/includes/menu.xml +++ b/fsh-generated/includes/menu.xml @@ -16,6 +16,9 @@
  • General Guidance
  • +
  • + Future +
  • Screening and Assessments
  • diff --git a/fsh-generated/resources/ImplementationGuide-uscdi4-sandbox.json b/fsh-generated/resources/ImplementationGuide-uscdi4-sandbox.json index 90d7f736..3e50f91a 100644 --- a/fsh-generated/resources/ImplementationGuide-uscdi4-sandbox.json +++ b/fsh-generated/resources/ImplementationGuide-uscdi4-sandbox.json @@ -217,7 +217,7 @@ }, "description": "This is an example hospital location for the *US Core Location Profile*.", "name": "Hospital Location", - "exampleCanonical": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location" + "exampleBoolean": true }, { "reference": { @@ -275,13 +275,21 @@ "name": "Observation Medication Adherence Self Tylenol (OTC) Example", "exampleCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-simple-observation" }, + { + "reference": { + "reference": "Procedure/defib-implant" + }, + "description": "This *US Core Procedure Profile* is an example of an Defibrillator implant Procedure. In this example, the reason for a referral is communicated through `Procedure.code'.", + "name": "Procedure Defibrillator Implant Example", + "exampleCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure" + }, { "reference": { "reference": "Observation/serum-glucose" }, "description": "This is a serum glucose example for the *US Core Observation Lab Profile*.", "name": "Serum Glucose Example", - "exampleCanonical": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab" + "exampleBoolean": true }, { "reference": { @@ -407,7 +415,7 @@ "reference": { "reference": "StructureDefinition/us-core-medication-adherence" }, - "description": "A MedicationRequest extension representing whether the medication is or is not being consumed or administered.", + "description": "A MedicationRequest extension representing reported adherence to prescribed medication instructions. In other words, whether a medication was consumed according to instructions.", "exampleBoolean": false, "name": "US Core Medication Adherence Extension" }, @@ -435,6 +443,14 @@ "exampleBoolean": false, "name": "US Core Patient Profile" }, + { + "reference": { + "reference": "StructureDefinition/us-core-procedure" + }, + "description": "The US Core Procedure Profile is based upon the core FHIR Procedure Resource and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' requirements. This profile sets minimum expectations for the Procedure resource to record, search, and fetch procedures associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.", + "exampleBoolean": false, + "name": "US Core Procedure Profile" + }, { "reference": { "reference": "StructureDefinition/us-core-specimen" @@ -484,6 +500,18 @@ } ] }, + { + "nameUrl": "future.html", + "title": "Futures Page Mock UP", + "generation": "markdown", + "page": [ + { + "nameUrl": "fhir-write.html", + "title": "FHIR Write Guidance for Vital Sign Observations", + "generation": "markdown" + } + ] + }, { "nameUrl": "guidance.html", "title": "Guidance", diff --git a/input/data/additional-uscdi-requirements.csv b/input/data/additional-uscdi-requirements.csv index 80405e5c..860e0a88 100644 --- a/input/data/additional-uscdi-requirements.csv +++ b/input/data/additional-uscdi-requirements.csv @@ -13,6 +13,8 @@ Previous Name,[US Core Patient Profile],Patient.name.use or Patient.name.period Suffix,[US Core Patient Profile],Patient.name.suffix A Reason Or Indication For Referral Or Consultation,[US Core ServiceRequest Profile],ServiceRequest.reasonCode A Reason Or Indication For Referral Or Consultation,[US Core ServiceRequest Profile],ServiceRequest.reasonReference +A Reason Or Indication For Referral Or Consultation,[US Core Procedure Profile],Procedure.reasonCode +A Reason Or Indication For Referral Or Consultation,[US Core Procedure Profile],Procedure.reasonReference The Reason Or Indication For The Prescription,[US Core MedicationRequest Profile],MedicationRequest.reasonCode The Reason Or Indication For The Prescription,[US Core MedicationRequest Profile],MedicationRequest.reasonReference Medication Adherence,[US Core MedicationRequest Profile],MedicationRequest.extension:medicationAdherence diff --git a/input/data/ig.yml b/input/data/ig.yml index 4a835435..67ff5427 100644 --- a/input/data/ig.yml +++ b/input/data/ig.yml @@ -175,7 +175,7 @@ definition: reference: Location/hospital description: This is an example hospital location for the *US Core Location Profile*. name: Hospital Location - exampleCanonical: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location + exampleBoolean: true - reference: reference: MedicationRequest/coded-oral-axid-with-compliance description: This example demonstrates medication adherence for a prescribed medication @@ -226,12 +226,19 @@ definition: is reference using the basedOn element. name: Observation Medication Adherence Self Tylenol (OTC) Example exampleCanonical: http://hl7.org/fhir/us/core/StructureDefinition/us-core-simple-observation + - reference: + reference: Procedure/defib-implant + description: This *US Core Procedure Profile* is an example of an Defibrillator + implant Procedure. In this example, the reason for a referral is communicated + through `Procedure.code'. + name: Procedure Defibrillator Implant Example + exampleCanonical: http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure - reference: reference: Observation/serum-glucose description: This is a serum glucose example for the *US Core Observation Lab Profile*. name: Serum Glucose Example - exampleCanonical: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab + exampleBoolean: true - reference: reference: Observation/substance-use-status description: This is an Substance-use-status example for the *Simple Observation @@ -366,8 +373,9 @@ definition: name: US Core Location Profile - reference: reference: StructureDefinition/us-core-medication-adherence - description: A MedicationRequest extension representing whether the medication - is or is not being consumed or administered. + description: A MedicationRequest extension representing reported adherence to + prescribed medication instructions. In other words, whether a medication was + consumed according to instructions. exampleBoolean: false name: US Core Medication Adherence Extension - reference: @@ -407,6 +415,18 @@ definition: for standards development for specific use cases. exampleBoolean: false name: US Core Patient Profile + - reference: + reference: StructureDefinition/us-core-procedure + description: The US Core Procedure Profile is based upon the core FHIR Procedure + Resource and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' + requirements. This profile sets minimum expectations for the Procedure resource + to record, search, and fetch procedures associated with a patient to promote + interoperability and adoption through common implementation. It identifies + which core elements, extensions, vocabularies, and value sets **SHALL** be present + in the resource and constrains the way the elements are used when using this + profile. It provides the floor for standards development for specific use cases. + exampleBoolean: false + name: US Core Procedure Profile - reference: reference: StructureDefinition/us-core-specimen description: This profile sets minimum expectations for the Specimen resource @@ -452,6 +472,13 @@ definition: extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft + - nameUrl: future.html + title: Futures Page Mock UP + generation: markdown + page: + - nameUrl: fhir-write.html + title: FHIR Write Guidance for Vital Sign Observations + generation: markdown - nameUrl: guidance.html title: Guidance generation: markdown diff --git a/input/data/uscdi-table.csv b/input/data/uscdi-table.csv new file mode 100644 index 00000000..d2ce74b9 --- /dev/null +++ b/input/data/uscdi-table.csv @@ -0,0 +1,136 @@ +data_class_number,data_class,uscore_profile,data_element,resource_type,,extension,fhir_path,comment,comment_link +1,Allergies and Intolerances,US Core AllergyIntolerance Profile,,,,,AllergyIntolerance,, +,Allergies and Intolerances,US Core AllergyIntolerance Profile,Substance (Medication),AllergyIntolerance,AllergyIntolerance,,AllergyIntolerance.code,, +,Allergies and Intolerances,US Core AllergyIntolerance Profile,Substance (Drug Class),AllergyIntolerance,AllergyIntolerance,,AllergyIntolerance.code,, +,Allergies and Intolerances,US Core AllergyIntolerance Profile,Substance (Non-Medication),AllergyIntolerance,AllergyIntolerance,,AllergyIntolerance.code,, +,Allergies and Intolerances,US Core AllergyIntolerance Profile,Reaction,AllergyIntolerance,AllergyIntolerance,,AllergyIntolerance.reaction,, +2,Care Team Members,US Core CareTeam Profile,,,,,CareTeam.participant,, +,Care Team Members,US Core Practitioner Profile| US Core Patient Profile| US Core RelatedPerson Profile,Name,CareTeam,CareTeam,,"Practitioner.name, RelatedPerson.name",, +,Care Team Members,US Core Practitioner Profile| US Core Patient Profile,Identifier,CareTeam,CareTeam,,Practitioner.identifier,, +,Care Team Members,US Core PractitionerRole Profile| US Core Practitioner Profile| US Core Patient Profile| US Core RelatedPerson Profile,Location,CareTeam,CareTeam,,"PractitionerRole.address, Practitioner.address, RelatedPerson.address",, +,Care Team Members,US Core PractitionerRole Profile| US Core Practitioner Profile| US Core Patient Profile| US Core RelatedPerson Profile,Telecom,CareTeam,CareTeam,,"PractitionerRole.telecom, Practitioner.telecom, RelatedPerson.telecom",, +,Care Team Members,US Core CareTeam Profile,Role,CareTeam,CareTeam,,CareTeam.participant.role,, +3,Clinical Notes,US Core DocumentReference Profile|US Core DiagnosticReport Profile for Report and Note Exchange,,,,,"DocumentReference,DiagnosticReport",See Clinical Notes Guidance,clinical-notes.html +,Clinical Notes,US Core DocumentReference Profile,Consultation Note,DocumentReference,DocumentReference,,DocumentReference,, +,Clinical Notes,US Core DocumentReference Profile,Discharge Summary Note,DocumentReference,DocumentReference,,DocumentReference,, +,Clinical Notes,US Core DocumentReference Profile,History & Physical,DocumentReference,DocumentReference,,DocumentReference,, +,Clinical Notes,US Core DocumentReference Profile|US Core DiagnosticReport Profile for Report and Note Exchange,Imaging Narrative,DocumentReference | DiagnosticReport,DocumentReference | DiagnosticReport,,"DocumentReference,DiagnosticReport",, +,Clinical Notes,US Core DocumentReference Profile|US Core DiagnosticReport Profile for Report and Note Exchange,Laboratory Report Narrative,DocumentReference | DiagnosticReport,DocumentReference | DiagnosticReport,,"DocumentReference,DiagnosticReport",, +,Clinical Notes,US Core DocumentReference Profile|US Core DiagnosticReport Profile for Report and Note Exchange,Pathology Report Narrative,DocumentReference | DiagnosticReport,DocumentReference | DiagnosticReport,,"DocumentReference,DiagnosticReport",, +,Clinical Notes,US Core DocumentReference Profile|US Core DiagnosticReport Profile for Report and Note Exchange,Procedure Note,DocumentReference | DiagnosticReport,DocumentReference | DiagnosticReport,,"DocumentReference,DiagnosticReport",, +,Clinical Notes,US Core DocumentReference Profile,Progress Note,,,,DocumentReference,, +4,Clinical Tests,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,Clinical Tests,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation, DiagnosticReport",, +,Clinical Tests,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,Clinical Test,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation, DiagnosticReport",, +,Clinical Tests,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,Clinical Test Result/Report,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation, DiagnosticReport",, +5,Diagnostic Imaging,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,,,,,"Observation, DiagnosticReport",, +,Diagnostic Imaging,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,Diagnostic Imaging Test,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation, DiagnosticReport",, +,Diagnostic Imaging,US Core Observation Clinical Result Profile| US Core DiagnosticReport Profile for Report and Note Exchange,Diagnostic Imaging Result/Report,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation, DiagnosticReport",, +6,Encounter,US Core Encounter Profile,,,,,Encounter,, +,Encounter,US Core Encounter Profile,Identifier,Encounter,Encounter,,Encounter.identifier,, +,Encounter,US Core Encounter Profile,Type,Encounter,Encounter,,Encounter.type,, +,Encounter,US Core Condition Encounter Diagnosis Profile,Diagnosis,Condition,Condition,,Condition.code,, +,Encounter,US Core Encounter Profile,Time,Encounter,Encounter,,Encounter.period,, +,Encounter,US Core Encounter Profile,Location,Encounter,Encounter,,Encounter.location.location,, +,Encounter,US Core Encounter Profile,Disposition,Encounter,Encounter,,Encounter.hospitalization.dischargeDisposition,, +7,Facility Information,US Core Location Profile,,,,,Location,See Facility Information Guidance,StructureDefinition-us-core-location.html +,Facility Information,US Core Location Profile,Identifier,Location,Location,,Location.identifier,, +,Facility Information,US Core Location Profile,Type,Location,Location,,Location.type,, +,Facility Information,US Core Location Profile,Name,Location,Location,,Location.name,, +8,Goals and Preferences,US Core Goal Profile,,,,,Goal,, +,Goals and Preferences,US Core Goal Profile,Patient Goals,Goal,Goal,,Goal,, +,Goals and Preferences,US Core Goal Profile,SDOH Goals,Goal,Goal,,Goal,See Screening and Assessments Guidance,screening-and-assessments.html +,Goals and Preferences,US Core Treatment Intervention Preference Profile,Treatment Intervention Preference,Observation,Observation,,Observation,, +,Goals and Preferences,US Core Care Experience Preference Profile,Care Experience Preference,Observation,Observation,,Observation,, +9,Health Insurance Information,US Core Coverage Profile | US Core Organization Profile ,,,,,Coverage | Organization,, +,Health Insurance Information,US Core Coverage Profile,Coverage Status,Coverage,Coverage,,Coverage.status + Coverage.period,, +,Health Insurance Information,US Core Coverage Profile,Coverage Type,Coverage,Coverage,,Coverage.type,, +,Health Insurance Information,US Core Coverage Profile,Relationship to Subscriber,Coverage,Coverage,,"Coverage,relationship",, +,Health Insurance Information,US Core Coverage Profile,Member Identifier,Coverage,Coverage,,Coverage.identifier,, +,Health Insurance Information,US Core Coverage Profile,Subscriber Identifier,Coverage,Coverage,,Coverage.subscriberId,, +,Health Insurance Information,US Core Coverage Profile,Group Number,Coverage,Coverage,,Coverage.class,, +,Health Insurance Information,US Core Coverage Profile | US Core Organization Profile ,Payer Identifier,Coverage | Organization,Coverage | Organization,,Coverage.payer | Organization.identifier,, +10,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,,,,,"Observation,Condition,QuestionnaireResponse",, +,Health Status Assessments,US Core Condition Problems and Health Concerns Profile,Health Concerns,Condition,Condition,,Condition,, +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Functional Status,Observation,Observation,,Observation,See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Disability Status,Observation,Observation,,Observation,See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Mental/Cognitive Status,Observation,Observation,,Observation,See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Observation Pregnancy Status Profile| US Core Observation Pregnancy Intent Profile,Pregnancy Status,Observation,Observation,,Observation,, +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Alcohol Use,Simple | Condition | QuestionnaireResponse,Simple | Condition | QuestionnaireResponse,,"Observation,Condition,QuestionnaireResponse",See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Substance Use,Simple | Condition | QuestionnaireResponse,Simple | Condition | QuestionnaireResponse,,"Observation,Condition,QuestionnaireResponse",See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,Physical Activity,Simple | Condition | QuestionnaireResponse,Simple | Condition | QuestionnaireResponse,,"Observation,Condition,QuestionnaireResponse",See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Simple Observation Profile | US Core Condition Problems and Health Concerns Profile | US Core Observation Screening Assessment Profile | US Core QuestionnaireResponse Profile,SDOH Assessment,Simple | Condition | QuestionnaireResponse,Simple | Condition | QuestionnaireResponse,,"Observation,Condition,QuestionnaireResponse",See Screening and Assessments Guidance,screening-and-assessments.html +,Health Status Assessments,US Core Smoking Status Observation Profile,Smoking Status,Observation,Observation,,Observation,, +11,Immunizations,US Core Immunization Profile,,,,,Immunization,, +,Immunizations,US Core Immunization Profile,,Immunization,Immunization,,Immunization,, +12,Laboratory,US Core Laboratory Result Observation Profile| US Core DiagnosticReport Profile for Laboratory Results Reporting | US Core Specimen Profile,,,,,"Observation, DiagnosticReport,Specimen",, +,Laboratory,US Core Laboratory Result Observation Profile| US Core DiagnosticReport Profile for Laboratory Results Reporting,Tests,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation.code, DiagnosticReport.code",, +,Laboratory,US Core Laboratory Result Observation Profile| US Core DiagnosticReport Profile for Laboratory Results Reporting,Values/Results,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation.value[x], DiagnosticReport.result",, +,Laboratory,US Core Laboratory Result Observation Profile| US Core Specimen Profile,Specimen Type,Observation | Specimen,Observation | Specimen,,"Observation.specimen, Specimen",, +,Laboratory,US Core Laboratory Result Observation Profile| US Core DiagnosticReport Profile for Laboratory Results Reporting,Result Status,Observation | DiagnosticReport,Observation | DiagnosticReport,,"Observation.status, DiagnosticReport.status",, +,Laboratory,US Core Laboratory Result Observation Profile,Result Unit of Measure,Observation,Observation,,(Observation.value.ofType(Quantity)).code,, +,Laboratory,US Core Laboratory Result Observation Profile,Result Reference Range,Observation,Observation,,Observation.referenceRange,, +,Laboratory,US Core Laboratory Result Observation Profile,Result Interpretation,Observation,Observation,,Observation.interpretation,, +,Laboratory,US Core Specimen Profile,Specimen Identifier,Specimen,Specimen,,Specimen.identifier,, +,Laboratory,US Core Specimen Profile,Specimen Source Site,Specimen,Specimen,,Specimen.collection.bodySite,, +,Laboratory,US Core Specimen Profile,Specimen Condition Acceptability,Specimen,Specimen,,Specimen.condition,, +13,Medical Devices,US Core Implantable Device Profile,,,,,Device,, +,Medical Devices,US Core Implantable Device Profile,Unique Device Identifier(s) for a Patient's Implantable Device(s),Device,Device,,Device,, +14,Medications,US Core MedicationRequest Profile | US Core MedicationDispense Profile | US Core Medication Profile,,,,,"MedicationRequest, MedicationDispense, Medication",See Medication List Guidance,medication-list.html +,Medications,US Core Medication Profile | US Core MedicationRequest Profile,Medications,Medication | MedicationRequest,Medication | MedicationRequest,,"Medication.code, MedicationRequest.medication[x]",, +,Medications,US Core MedicationRequest Profile,Dose,MedicationRequest,MedicationRequest,,MedicationRequest.dosageInstruction.doseAndRate,, +,Medications,US Core MedicationRequest Profile,Dose Unit of Measure,MedicationRequest,MedicationRequest,,MedicationRequest.dosageInstruction.doseAndRate,, +,Medications,US Core MedicationRequest Profile,Indication,MedicationRequest,MedicationRequest,,MedicationRequest.reasonCode | Medication.reasonReference,, +,Medications,US Core MedicationRequest Profile,Medication Instructions,MedicationRequest,MedicationRequest,,MedicationRequest.dosageInstruction,, +,Medications,US Core MedicationRequest Profile,Medication Adherence,MedicationRequest,MedicationRequest,US Core Medication Adherence Extension,MedicationRequest.extension.where(url='Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherence'),, +,Medications,US Core MedicationDispense Profile,Fill Status,Medication | MedicationDispense,Medication | MedicationDispense,,MedicationDispense,, +15,Patient Demographics,US Core Patient Profile | US Core Observation Sexual Orientation Profile | US Core Observation Sexual Orientation Profile | US Core Observation Sexual Orientation Profile |US Core Observation Occupation Profile,,,,,"Patient, Observation",, +,Patient Demographics,US Core Patient Profile,First Name,Patient,Patient,,Patient.name.given,, +,Patient Demographics,US Core Patient Profile,Last Name,Patient,Patient,,Patient.name.family,, +,Patient Demographics,US Core Patient Profile,Previous Name,Patient,Patient,,Patient.name,, +,Patient Demographics,US Core Patient Profile,Middle Name (including middle initial),Patient,Patient,,Patient.name.given,, +,Patient Demographics,US Core Patient Profile,Suffix,Patient,Patient,,Patient.name.suffix,, +,Patient Demographics,US Core Patient Profile | US Core Sex Extension,Sex,Patient,Patient,US Core Sex Extension,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex'),, +,Patient Demographics,US Core Patient Profile,Date of Birth,Patient,Patient,,Patient.birthDate,, +,Patient Demographics,US Core Patient Profile,Date of Death,Patient,Patient,,Patient.deceased[x],, +,Patient Demographics,US Core Race Extension,Race,Patient,Patient,US Core Race Extension,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-race'),, +,Patient Demographics,US Core Patient Profile | US Core Ethnicity Extension,Ethnicity,Patient,Patient,US Core Ethnicity Extension,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity'),, +,Patient Demographics,US Core Patient Profile | US Core Tribal Affiliation Extension,Tribal Affiliation,Patient,Patient,US Core Tibal Affiliation Extension,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation'),, +,Patient Demographics,US Core Patient Profile | US Core Gender Identity Extension,Gender Identity,Patient,Patient,Gender Identity Extension,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity'),, +,Patient Demographics,US Core Observation Sexual Orientation Profile,Sexual Orientation,Observation,Observation,,Observation,, +,Patient Demographics,US Core Patient Profile,Preferred Language,Patient,Patient,,Patient.communication,, +,Patient Demographics,US Core Patient Profile,Address,Patient,Patient,,Patient.address,, +,Patient Demographics,US Core Patient Profile,Previous Address,Patient,Patient,,Patient.address,, +,Patient Demographics,US Core Patient Profile,Email,Patient,Patient,,Patient.telecom,, +,Patient Demographics,US Core Patient Profile,Phone Number,Patient,Patient,,Patient.telecom,, +,Patient Demographics,US Core RelatedPerson Profile,Related Person's Name,RelatedPerson,RelatedPerson,,RelatedPerson.name,, +,Patient Demographics,US Core RelatedPerson Profile,Related Person's Relationship,RelatedPerson,RelatedPerson,,RelatedPerson.relationship,, +,Patient Demographics,US Core Observation Occupation Profile,Occupation,Observation,Observation,,Observation,, +,Patient Demographics,US Core Observation Occupation Profile,Occupation Industry,Observation,Observation,,Observation,, +16,Patient Summary and Plan,US Core CarePlan Profile,,,,,CarePlan,, +,Patient Summary and Plan,US Core CarePlan Profile,Assessment and Plan of Treatment,CarePlan,CarePlan,,CarePlan,, +17,Problems,US Core Condition Problems and Health Concerns Profile,,Condition,Condition,,Condition,, +,Problems,US Core Condition Problems and Health Concerns Profile,Date of Resolution,Condition,Condition,,Condition.abatement[x],, +,Problems,US Core Condition Problems and Health Concerns Profile,Date of Diagnosis,Condition,Condition,assertedDate Extension,Condition.extension.where(url='http://hl7.org/fhir/StructureDefinition/condition-assertedDate') | Condition.onset[x] | Condition.onsetDate,, +,Problems,US Core Condition Problems and Health Concerns Profile,SDOH Problems/Health Concerns,Condition,Condition,,Condition,See Screening and Assessments Guidance,screening-and-assessments.html +18,Procedures,US Core Procedure Profile | US Core ServiceRequest Profile,,,,,"Procedure, ServiceRequest",, +,Procedures,US Core Procedure Profile,Procedure,Procedure,Procedure,,Procedure,, +,Procedures,US Core Procedure Profile|US Core DiagnosticReport Profile for Report and Note Exchange|US Core Immunization Profile,Time of Procedure,Procedure | DiagnosticRepor | Immunization,Procedure | DiagnosticRepor | Immunization,,"Procedure.pertormed[x],DiagnosticReport.effective[x],Immunization.occurrence[x]",, +,Procedures,US Core ServiceRequest Profile,Reason for Referral,ServiceRequest,ServiceRequest,,"ServiceRequest.reasonCode, ServiceRequest.reasonReference",, +,Procedures,US Core ServiceRequest Profile | US Core Procedure Profile,SDOH Interventions,ServiceRequest | Procedure,ServiceRequest | Procedure,,"ServiceRequest, Procedure",See Screening and Assessments Guidance,screening-and-assessments.html +19,Provenance,US Core Provenance Profile,,,,,Provenance,See Basic Provenance Guidance,basic-provenance.html +,Provenance,US Core Provenance Profile,Author Time Stamp,Provenance,Provenance,,Provenance.recorded,, +,Provenance,US Core Provenance Profile,Author Organization,Provenance,Provenance,,Provenance.agent,, +20,Vital Signs,US Core Vital Signs Profile,,,,,Observation,, +,Vital Signs,US Core Average Blood Pressure Profile ,Average Blood Pressure,Observation,Observation,,Observation,, +,Vital Signs,US Core Blood Pressure Profile ,Diastolic blood pressure,Observation,Observation,,Observation,, +,Vital Signs,US Core Blood Pressure Profile ,Systolic blood pressure,Observation,Observation,,Observation,, +,Vital Signs,US Core Body Height Profile ,Body height,Observation,Observation,,Observation,, +,Vital Signs,US Core Body Weight Profile ,Body weight,Observation,Observation,,Observation,, +,Vital Signs,US Core Heart Rate Profile ,Heart rate,Observation,Observation,,Observation,, +,Vital Signs,US Core Respiratory Rate Profile ,Respiratory rate,Observation,Observation,,Observation,, +,Vital Signs,US Core Body Temperature Profile ,Body temperature,Observation,Observation,,Observation,, +,Vital Signs,US Core Pulse Oximetry Profile ,Pulse oximetry,Observation,Observation,,Observation,, +,Vital Signs,US Core Pulse Oximetry Profile ,Inhaled oxygen concentration,Observation,Observation,,Observation,, +,Vital Signs,US Core Pediatric BMI for Age Observation Profile ,BMI Percentile (2-20 years old),Observation,Observation,,Observation,, +,Vital Signs,US Core Pediatric Weight for Height Observation Profile ,Weight-for-length Percentile (Birth - 36 months),Observation,Observation,,Observation,, +,Vital Signs,US Core Pediatric Head Occipital Frontal Circumference Percentile Profile,Occipital Frontal Head Circumference Percentile (Birth - 36 months),Observation,Observation,,Observation,, \ No newline at end of file diff --git a/input/examples-yaml/Procedure-R4-defib-implant.yml b/input/examples-yaml/Procedure-R4-defib-implant.yml new file mode 100644 index 00000000..42e47138 --- /dev/null +++ b/input/examples-yaml/Procedure-R4-defib-implant.yml @@ -0,0 +1,47 @@ +resourceType: Procedure +id: defib-implant +meta: + profile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure + extension: + - url: http://hl7.org/fhir/StructureDefinition/instance-name + valueString: Procedure Defibrillator Implant Example + - url: http://hl7.org/fhir/StructureDefinition/instance-description + valueMarkdown: This *US Core Procedure Profile* is an example of an Defibrillator + implant Procedure. In this example, the reason for a referral is communicated through `Procedure.code'. +identifier: +- system: urn:ietf:rfc:3986 + value: urn:uuid:b2a737f2-2fdb-49c1-b097-dac173d07aff +# basedOn: +# - reference: ServiceRequest/defib-implant +status: completed +code: + coding: + - system: http://www.ama-assn.org/go/cpt + code: '33249' + text: Insertion or replacement of permanent implantable defibrillator system with + transvenous lead(s), single or dual chamber +subject: + reference: Patient/example +encounter: + reference: Encounter/example-1 + display: Office Visit +performedPeriod: + start: '2019-03-26T12:55:26-07:00' + end: '2019-03-26T13:25:26-07:00' +performer: +- actor: + reference: Practitioner/practitioner-1 + +reasonCode: +- coding: + - system: http://hl7.org/fhir/sid/icd-10-cm + code: I49.01 + display: Ventricular fibrillation + text: Ventricular fibrillation + + +focalDevice: +- manipulated: + reference: Device/udi-2 + diff --git a/input/examples/Procedure-R4-defib-implant.json b/input/examples/Procedure-R4-defib-implant.json new file mode 100644 index 00000000..df727d26 --- /dev/null +++ b/input/examples/Procedure-R4-defib-implant.json @@ -0,0 +1,72 @@ +{ + "resourceType": "Procedure", + "id": "defib-implant", + "meta": { + "profile": [ + "http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure" + ], + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/instance-name", + "valueString": "Procedure Defibrillator Implant Example" + }, + { + "url": "http://hl7.org/fhir/StructureDefinition/instance-description", + "valueMarkdown": "This *US Core Procedure Profile* is an example of an Defibrillator implant Procedure. In this example, the reason for a referral is communicated through `Procedure.code'." + } + ] + }, + "identifier": [ + { + "system": "urn:ietf:rfc:3986", + "value": "urn:uuid:b2a737f2-2fdb-49c1-b097-dac173d07aff" + } + ], + "status": "completed", + "code": { + "coding": [ + { + "system": "http://www.ama-assn.org/go/cpt", + "code": "33249" + } + ], + "text": "Insertion or replacement of permanent implantable defibrillator system with transvenous lead(s), single or dual chamber" + }, + "subject": { + "reference": "Patient/example" + }, + "encounter": { + "reference": "Encounter/example-1", + "display": "Office Visit" + }, + "performedPeriod": { + "start": "2019-03-26T12:55:26-07:00", + "end": "2019-03-26T13:25:26-07:00" + }, + "performer": [ + { + "actor": { + "reference": "Practitioner/practitioner-1" + } + } + ], + "reasonCode": [ + { + "coding": [ + { + "system": "http://hl7.org/fhir/sid/icd-10-cm", + "code": "I49.01", + "display": "Ventricular fibrillation" + } + ], + "text": "Ventricular fibrillation" + } + ], + "focalDevice": [ + { + "manipulated": { + "reference": "Device/udi-2" + } + } + ] +} \ No newline at end of file diff --git a/input/includes/additional-requirements-intro.md b/input/includes/additional-requirements-intro.md index 1627da0f..756715d0 100644 --- a/input/includes/additional-requirements-intro.md +++ b/input/includes/additional-requirements-intro.md @@ -7,4 +7,4 @@ for example {% raw %} {% include additional-requirements-intro.md type="Patient" plural="true" %} or {% include additional-requirements-intro.md type="DocumentReference" %} {% endraw %} --> -For ONC's USCDI requirements, each {{include.type}} Must Support the following additional {% if include.plural %}elements. These elements are{% else %}element. This element is{% endif %} included in the formal definition of the profile and the {{include.type}} examples. \ No newline at end of file +For ONC's USCDI requirements, each {{include.type}} Must Support the following additional {% if include.plural %}elements. These elements are{% else %}element as [Additional USCDI Requirements]. This element is{% endif %} included in the formal definition of the profile and the {{include.type}} examples. \ No newline at end of file diff --git a/input/includes/link-list.md b/input/includes/link-list.md index a86106ec..8ce19c6b 100644 --- a/input/includes/link-list.md +++ b/input/includes/link-list.md @@ -4,3 +4,4 @@ [National Drug Codes (NDC)]: https://www.fda.gov/drugs/drug-approvals-and-databases/national-drug-code-directory [extensible]: {{site.data.fhir.path}}terminologies.html#extensible [component]: foo.html +[Additional USCDI Requirements]: must-support.html#additional-uscdi-requirements \ No newline at end of file diff --git a/input/includes/sd_link.html b/input/includes/sd_link.html new file mode 100644 index 00000000..ff80e0fe --- /dev/null +++ b/input/includes/sd_link.html @@ -0,0 +1,7 @@ +{%- for sd_hash in site.data.structuredefinitions -%} + {%- assign sd = sd_hash[1] -%} + {%- if sd.title == include.title -%} + {{sd.path}} + {%- break -%} + {%- endif -%} +{%- endfor -%} diff --git a/input/includes/uscdi-uscore-map.html b/input/includes/uscdi-uscore-map.html index 3f50041f..a3433885 100644 --- a/input/includes/uscdi-uscore-map.html +++ b/input/includes/uscdi-uscore-map.html @@ -74,13 +74,13 @@ {% assign profiles = item.uscore_profile | split: "|" %} {% for profile in profiles %} {% capture title %}{{profile | strip}}{% endcapture %} - {{ profile }} + {{ title }} {% unless forloop.last %}
    {% endunless %} {% endfor %} - {{ item.comment }} + @@ -94,7 +94,7 @@ {% assign profiles = item.uscore_profile | split: "|" %} {% for profile in profiles %} {% capture title %}{{profile | strip}}{% endcapture %} - {{ profile }} + {{ title }} {% unless forloop.last %}
    {% endunless %} diff --git a/input/includes/uscdi-uscore-map.html.tmp b/input/includes/uscdi-uscore-map.html.tmp new file mode 100644 index 00000000..3f50041f --- /dev/null +++ b/input/includes/uscdi-uscore-map.html.tmp @@ -0,0 +1,118 @@ + + +{% assign rows = site.data.uscdi-table %} +{% assign items_grouped = rows | group_by: "data_class" %} + + + + + +
    +
    + USCDI Logo +
    +

    US Core Data for Interoperability USCDI

    +
    + +{% for group in items_grouped %} +{% for item in group.items %} +{% if forloop.first %} + +
    +
    +
    + {{item.data_class}} +
    + + + + + + + + + + + {% else %} + + + + + + + + + + {% if forloop.last %} + +
    {{ item.data_class }} + {% assign profiles = item.uscore_profile | split: "|" %} + {% for profile in profiles %} + {% capture title %}{{profile | strip}}{% endcapture %} + {{ profile }} + {% unless forloop.last %} +
    + {% endunless %} + {% endfor %} +
    {{ item.comment }}
        •{{ item.data_element }} + {% assign profiles = item.uscore_profile | split: "|" %} + {% for profile in profiles %} + {% capture title %}{{profile | strip}}{% endcapture %} + {{ profile }} + {% unless forloop.last %} +
    + {% endunless %} + {% endfor %} +
    + {{ item.comment }} +
    +
    +
    + +{% endif %} +{% endif %} +{% endfor %} +{% endfor %} \ No newline at end of file diff --git a/input/intro-notes/StructureDefinition-us-core-procedure-intro.md b/input/intro-notes/StructureDefinition-us-core-procedure-intro.md new file mode 100644 index 00000000..22d2ad3d --- /dev/null +++ b/input/intro-notes/StructureDefinition-us-core-procedure-intro.md @@ -0,0 +1,53 @@ + +**Example Usage Scenarios:** + +The following are example usage scenarios for this profile: + +- Query for procedures performed on a Patient +- [Record or update] a procedure performed on a Patient + + +### Mandatory and Must Support Data Elements + + +The following data-elements must always be present ([Mandatory] definition) or must be supported if the data is present in the sending system ([Must Support] definition). They are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The [Formal Views] below provides the formal summary, definitions, and terminology requirements. + +**Each Procedure Must Have:** + +1. a status +1. a code that identifies the type of procedure performed on the patient +1. a patient +2. when the procedure was performed* + +\*This elements have the following constraints: **SHALL** be present if status is 'completed' or 'in-progress'. + +**Each Procedure Must Support:** + +1. the encounter associated with the procedure + + +**Additional USCDI Requirements** + +{% include additional-requirements-intro.md type="Procedure" %} + +1. a reason or indication for referral or consultation* + +\*see guidance below + +**Profile Specific Implementation Guidance:** + +- Procedure codes can be taken from SNOMED-CT, CPT, HCPCS II, ICD-10-PCS, CDT. LOINC. + - Only LOINC concepts that reflect actual procedures **SHOULD** be used +- A procedure including an implantable device **SHOULD** use `Procedure.focalDevice` with a reference to the [US Core Implantable Device Profile]. +- See the [Screening and Assessments] guidance page for more information when exchanging Social Determinants of Health (SDOH) Procedures +- *The Reason or justification for a referral or consultation is communicated through: + 1. `ServiceRequest.reason` or `ServiceRequest.reason`, and `Procedure.basedOn` that links the Procedure to the US Core ServiceRequest Profile. + - `ServiceRequest.reasonCode` and `ServiceRequest.reasonReference` are marked as Additional USCDI Requirements. The certifying server system is not required to support both but **SHALL** support at least one of these elements. The certifying client application **SHALL** support both elements. + - As documented [here](general-guidance.html#referencing-us-core-profiles), when using `ServiceRequest.reasonReference`, the referenced resources **SHOULD** be a US Core Profile. + 1. `Procedure.reasonCode` or `Procedure.reasonReference` when the Procedure does not have an associated ServiceRequest. + - Although both `Procedure.reasonCode` and `Procedure.reasonReference` are marked as Additional USCDI Requirements. The certifying server system is not required to support both but **SHALL** support at least one of these elements. The certifying client application **SHALL** support both elements. + - As documented [here](general-guidance.html#referencing-us-core-profiles), when using `Procedure.reasonReference`, the referenced resources **SHOULD** be a US Core Profile. + + Certifying Servers and Clients **SHALL** support options 1 and 2 as Additional USCDI Requirements. + +{% include link-list.md %} diff --git a/input/pagecontent/fhir-write.md b/input/pagecontent/fhir-write.md new file mode 100644 index 00000000..d59775ae --- /dev/null +++ b/input/pagecontent/fhir-write.md @@ -0,0 +1,194 @@ + + +### SMART Configuration +EHR systems with support for writing FHIR vital sign Observation resources from patient-facing apps, provider-facing apps or system apps SHALL include a `vitals-write` capability in `.well-known/smart-configuration` [capabilities array](https://build.fhir.org/ig/HL7/smart-app-launch/conformance.html#launch-context-for-standalone-launch). + +### Writing from Patient-Facing Apps + +EHR systems providing the ability to write FHIR vital sign Observation resources from patient-facing apps SHALL support the registration and authorization of apps with the `patient/Observation.c` SMART scope and MAY require limiting this scope to `category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs`. Note that `read` and `search` capabilities are already implied by [US Core Vital Signs profile](http://build.fhir.org/ig/HL7/US-Core/StructureDefinition-us-core-vital-signs.html). + +EHR systems providing the ability to write FHIR vital sign Observation resources from patient-facing apps SHOULD also support the registration and authorization of apps with either `patient/Observation.u` or `patient/Observation.u?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs` SMART scope. Note, systems are allowed to only support limited [update](#Updating-Previously-Submitted-Observations) capabilities. + +When offering a patient write capability, health systems MAY choose to enable or disable this capability in the system based on factors such as the provider, patient, payer, app, and vital type, or MAY choose to enable the capability broadly. If patients and/or apps attempting to write data are not enabled, and this can be discerned during the authorization process, the EHR SHALL omit these unsupported scopes from the resulting access token. If an app uses an access token without the required scopes to submit an `Observation` or the patient is not enabled to write data, the EHR SHALL return an error and SHOULD include an `OperationOutcome` in the response body. + + +Examples: +- Direct write - a provider creates an order in the EHR for patient home monitoring. Then, the patient's blood pressure cuff sends data to an app on the patient's phone that uses SMART to write the data into their record. The EHR automatically associates the blood pressure data with the appropriate order. +- Mediated write - a patient uses a SMART app to write vitals from an outside source (e.g., specialist visit summary). + +### Writing from Provider-Facing Apps + +EHR systems providing the ability to write FHIR vital sign Observation resources from provider-facing apps SHALL support the registration and authorization of apps with the `user/Observation.c` and `system/Observation.c` SMART scopes and MAY require limiting these scopes to `category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs`. Note that `read` and `search` capabilities are already implied by [US Core Vital Signs profile](http://build.fhir.org/ig/HL7/US-Core/StructureDefinition-us-core-vital-signs.html). + +EHR systems providing the ability to write FHIR vital sign Observation resources from patient-facing apps SHOULD also support the registration and authorization of apps with either `user/Observation.u` and `system/Observation.u` SMART scopes, or `user/Observation.u?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs` and `system/Observation.u?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs` SMART scopes. Note, systems are allowed to only support limited [update](#Updating-Previously-Submitted-Observations) capabilities. + +Examples: +- Direct write - a blood pressure cuff sends readings to a standalone launch SMART app on a practice tablet that a clinical user then uses to write the data to a patient's record in the EHR. +- Mediated write - a patient app saves data to a repository controlled by the app developer. Then, the patient uses a "share with provider" function to enable the provider to access this data with a SMART app. The provider writes some or all of the observations into the patient’s record in the EHR. + +### Resource Submission + +EHR systems SHALL support the submission of Observation resources that _are not_ the result of a calculation and validate against a [US Core Vital Sign Profile](https://build.fhir.org/ig/HL7/US-Core/profiles-and-extensions.html#observation) that corresponds to a version used by the EHR for vital sign Observation read requests. + +EHR systems MAY support the submission of Observation resources that _are_ the result of a calculation (such as the "US Core Pediatric BMI for Age Observation Profile") and validate against a [US Core Vital Sign Profile](https://build.fhir.org/ig/HL7/US-Core/profiles-and-extensions.html#observation) that corresponds to a version used by the EHR for vital sign Observation read requests. + +EHR systems SHALL respond to supported and valid vital sign Observation creation requests with a status code of `200 OK` and a content location header, or with a status code of `202 Accepted`. If a content location header is provided, the resources SHALL be visible in subsequent read API calls and accessible within the EHR in the same manner as other patient submitted data. If a content location header is not provided, and EHR systems do not subsequently make the resource accessible in read API calls, the EHR system SHALL have a documented and discoverable reason why it was discarded (e.g., a log entry describing rejection during a review workflow or the applicability of a condition in the "Discarding" section below). + +EHR systems SHALL support the creation of a single vital sign through a FHIR `create` operation and MAY support the creation of multiple vitals signs by submitting a FHIR `Batch` bundle. When batch creation is supported, clients MAY use this approach to indicate that a set of Observation resources should be reviewed as a group and EHR systems MAY use this information when sending notifications or displaying the data. + +EHRs may choose to segregate data that originated from a patient from other vital sign data for the patient (for example, showing it on a separate patient flow sheet). + +Workflow for submitted Observations is the responsibility of the receiving system and is out of scope for this version of the IG (e.g., requiring provider review for patient submitted resources before fully integrating them in the chart). + +#### Observation Elements + +`meta.tag` +- Client - When writing patient-mediated data into the EHR, provider-facing apps SHALL include a `Meta.tag` with a system of `http://hl7.org/fhir/us/core/CodeSystem/us-core-tags` and a value of `patient-supplied` to indicate that the data was supplied by a patient or patient designee (such as a parent or spouse) rather than by a healthcare provider. +- EHRs SHALL associate the `patient-supplied` tag with vital signs supplied by a patient written through this API, and MAY associate the tag with vital signs supplied by a patient regardless of how they arrive in the EHR. Provider-facing apps writing data supplied by a patient SHALL include this tag in the Observation resources being submitted. The EHR MAY subsequently dissociate the tag from the data through an explicit reconciliation process. + +`encounter` +- Client - If populating this element, apps SHALL use a reference to an Encounter resource in the EHR, and MAY use the value returned by the `launch/encounter` SMART scope. +- EHR - Systems SHOULD document whether the `encounter` element is required to create a vital sign. When not required, EHRs MAY determine this value based on context if it is omitted. + +`subject` +- Client - Apps SHALL populate the `subject` reference with a reference to a Patient resource in the EHR. Patient-facing apps SHOULD populate this element based on the value returned as part of the `launch/patient` SMART scope. + +`device` +- Client - Apps MAY populate the `device` reference with a reference to Device resource in the EHR, or a contained Device resource within the Observation. This is the device used to measure the vital sign (e.g., a BP cuff), not the device used to transmit the data (e.g., a phone). Contained device resources SHALL populate at least one `deviceName` element. +- EHR - When provided by an app, systems SHOULD log this data, but do not need to expose it in EHR user interface or in the `device` element when returning the Observation. + +`performer` +- Client - Apps SHOULD populate the `performer` element with a reference to a resource in the EHR when the resource exists or the app has the ability to create it. For patient-facing apps, if the app knows that a patient collected this data, the app SHALL set the `performer` to a reference to the patient based on the the SMART launch context (this should also match the `Observation.subject`). If the relevant resource does not exist and the app is unable to create it, the app SHOULD populate `performer.display`. +- EHR - Systems SHALL persist this value when it is provided. + + +### Discarding Observations + +For a given vital sign type, if many Observations are submitted that have `effectiveDateTime` or `effectivePeriod` values that are close in time, an EHR MAY choose to discard a portion of these Observations or MAY reject submitted Observations with an appropriate OperationOutcome. EHRs SHALL clearly document this behavior or the ways in which this behavior may be customized by health systems in the APIs documentation. + +If an EHR determines that a vital sign is a duplicate of one it has already stored, the EHR MAY ignore the Observation or MAY reject the submitted Observation with an appropriate OperationOutcome. EHRs SHALL clearly document this behavior or the ways in which this behavior may be customized by health systems in the APIs documentation. + +### Updating Previously Submitted Observations + +EHR systems SHOULD support the ability for patients-facing apps to update the `status` element of a vital sign resource the user previously wrote to the system from any app to `entered-in-error` through an `update` interaction. This capability SHOULD only be used by apps to address data mistakes in data submission. + +### Including Provenance Information + +EHR systems MAY ignore contained Provenance resources in an Observation being submitted, but SHALL not return an error due to their presence. + +#### Resource retrieved from an external organization + +![](https://hackmd.io/_uploads/S1h87epp2.png) + +When writing an Observation that was retrieved from an external organization (e.g., a health system's EHR or a device manufacturer's cloud data store): + +- Apps SHALL pass through any Provenance resources received from the source system, unaltered (except for references, as described below), as contained resources on the Observation. A source system compliant with the US Core FHIR profiles SHOULD include a Provenance resource with `agent.type = author` that the app can pass through. The app SHALL also pass through resources referenced in elements that are labeled as "Must Support" in the USCDI Provenance profile and populated in the Provenance resources, including them as contained resources in the Observation and updating the references to them. +- When a Provenance resource with `agent.type = author` is not received from the source system, apps SHALL generate a contained Provenance resource with: + - `recorded` set to date and time recorded + - `agent.type = author` that has `agent.who` set to the organization/provider that authored the content, with at least the `who.display` element populated. + - When available, a `who.identifier.value` should be set to the url where that data was retrieved and `who.identifier.system` should be set to `urn:ietf:rfc:3986` +- Apps MAY include a Provenance resource with `agent.type = transmitter` with information on the entity that submitted the data. EHR systems MAY store and display this information and/or MAY populate this information based on the SMART context associated with the write. + +Example: +```js +{ + "resourceType": "Observation", + "contained": [{ + "resourceType": "Provenance", + "id": "contained_1", + "target": [{"reference": "#"}], + "recorded": "2019-07-09T15:26:23.217+00:00", + "agent": [{ + "type": { + "coding": [{ + "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type", + "code": "author", + "display": "Author" + }] + }, + "who": { + "display": "Saint Luke\'s Hospital of Kansas City", + // identifier could be an url as in Patient Access Brands + "identifier": { + "system": "urn:ietf:rfc:3986", + "value": "https://stlukes.example.org" + } + } + },{ + "type": { + "coding": [{ + "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type", + "code": "transmitter", + "display": "Transmitter" + }] + }, + "who": { + //this is the user submitting the data + //can be populated by the EHR based on the SMART context if omitted + "reference": "Patient/123" + } + }] + }] + // ... other Observation elements +} +``` + +#### Resources not retrieved from an external organization + +![](https://hackmd.io/_uploads/B1PWv1pah.png) + +When writing an Observation that was not retrieved from an external organization (e.g., transmitted by a home blood pressure cuff, or manually entered by a patient): + + - App MAY include a contained Provenance resource with `agent.type = author` with information on the party that wrote the data. EHR systems MAY store and display this information and/or MAY populate this information based on the SMART context associated with the write. + + - App MAY include one or more contained Provenance resources with `agent.type = composer` and/or `agent.type = assembler` with information on the device, app, or apps that captured or passed along the data. + +Example: +```js +[{ + "resourceType": "Provenance", + "target": [{"reference": "#"}], + "recorded": "2019-07-08", + "agent": [{ + "type": { + "coding": [{ + "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type", + "code": "composer", + "display": "Composer" + }] + }, + "who": { + //this is the app that provided the original data + "display": "OMRON for iOS" + } + },{ + "type": { + "coding": [{ + "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type", + "code": "author", + "display": "Author" + }] + }, + "who": { + "reference": "Patient/123" + } + }] +},{ + "resourceType": "Provenance", + "target": [{"reference": "#"}], + "recorded": "2019-07-09T10:26:23.217+00:00", + "agent": [{ + "type": { + "coding": [{ + "system": "http://terminology.hl7.org/CodeSystem/provenance-participant-type", + "code": "assembler", + "display": "Assembler" + }] + }, + "who": { + //this is the app that's transmitting the data + "display": "Healthkit" + } + }] +}] +``` \ No newline at end of file diff --git a/input/pagecontent/future.md b/input/pagecontent/future.md new file mode 100644 index 00000000..7536f7c7 --- /dev/null +++ b/input/pagecontent/future.md @@ -0,0 +1,81 @@ + +The US Core FHIR Profiles are designed to be the base set of requirements for FHIR implementation in the US. All US Realm implementation guides **SHALL** use the US Core Profiles or **SHALL** explicitly state why they are unable to use. Throughout the development of US Core, implementers, the government, and the clinical community have brought forward additional requirements for US Core. This section outlines the approach to growth and a place for items that may be added to US Core. + +### US Core Yearly Updates + +Yearly US Core updates reflect changes to [U.S. Core Data for Interoperability (USCDI)] and requests from the US Realm FHIR community. This approach is outlined in the figure below: + + + +### Growth Path of US Core + +The US Core implementation Guide will grow following these steps: + + + +1. Declare candidacy - this step can be completed by presenting a Project Proposal to the US Realm Steering Committee. +1. Get published - Develop a formal profile, an implementation guide, or get requirements directly published in FHIR Core. The initial publication could be an outside consortium or vendor publication. +1. Pilot - coordinate with three or more implementers an in-person or virtual connectathon. Testing and piloting is the way to identify issues with the new proposal. +1. Propose candidate for US Core to US Realm Steering Committee - receive formal approval from the US Realm SC to add. +1. Submit formal STU comments, or propose through a ballot + +A new US Regulatory requirement may jump over some of these steps. However, regulators **SHOULD** be encouraged to complete pilot testing. With pilot testing, it is easier to understand how a change will affect real-world implementation. + + + +### Future Candidate Requirements Under Consideration + +Past Balloters, STU commenters, and Accelerator Project teams submitted the following items for consideration to add US Core. Additional requirements gathering is required before testing may occur on these items: + +#### Additional pilot Testing of UDI elements +In the January ballot of 2019 we tested this process with the FDA requesting US Core include all the parts of UDI. In prior efforts, the FDA had successfully enhanced the base FHIR specification to include the UDI components. + +#### [Device] +The US Core Implantable Device Profile is intended to *only* be used for implantable devices. Please submit your successful implementation of a general non-implantable Device Profile (for example, software or crutches) for consideration in a future update of US Core. + +#### [MedicationAdministration] +The US Core design is based on the assumption that access to the Active Medication List is through searching MedicationRequest. (See: https://build.fhir.org/ig/HL7/US-Core/medication-list-guidance.html) The orders (MedicationRequest) capture all the medications, whether they have been fulfilled. MedicationAdministration can be used as well, but systems will need to be careful to link to appropriate MedicationRequest. Future versions of US Core may test and add MedicationAdministration. + +#### Searching for Multiple Patients +Searching for multiple patients has been called out in the ONC Health IT Certification Program. Defining capabilities for multiple patient access would focus on querying real-time data for a user-facing provider app across patients. Examples of the type of queries that would be addressed include searching for all of a provider's patients: + +- with recent lab results +- currently in the Emergency Department +- with an Allergy to X +- being seen by a provider for the day + +#### Timezones and Time Offsets +Clients currently face challenges displaying the source data's times and timezone regardless of the end user's current timezone. A solution is to define requirements and best practices for servers to preserve and represent time offsets and time zones. + +>A *timezone* is a geographical region in which residents observe the same standard time. A *time offset* is an amount of time subtracted from or added to Coordinated Universal Time (UTC) time to get the current civil time, whether it is standard time or daylight saving time (DST).[^1] + + Common practice is to preserve the source data time offsets as the original offset or converted to Coordinated Universal Time (UTC) time. Making this a requirement is one consideration. Another consideration is the addition of server best practices for preserving source timezones using the FHIR standard [timezone extension]. A third consideration is providing a client algorithm for resolving time offsets and time zones. + + + +#### Record or Update Data + +
    + +Systems may use operations that create and update resources for any of the profiles in this IG. However, more guidance is needed on writing and updating data in the context of US Core Profiles to support consistency between implementations. Multiple issues will need to be considered when defining expected behavior by the various actors to support updates and writes to the data, including: + + - Defining the overall approach + - direct updates to a particular resource via FHIR RESTful transactions + - new Profiles to represent the context and issue and request + - Write failure scenarios (e.g., insufficient data to create) + - Recording and updating data in the context of the Must Support fields + - Indicating the source of the update + + +The Argonaut project has defined [FHIR Write Guidance for Vital Sign Observations](fhir-write.html) for creating and updating vital sign Observations resources from patient-facing and provider-facing applications and expects to develop similar guidance for other Observation categories and resource types. After adequate testing by implementers, we will assess the feasibility of incorporating this guidance into the US Core API. + +
    + + +------------------------------------------------------------------------ +Footnotes + +[^1]: https://en.wikipedia.org/w/index.php?title=UTC_offset#Time_zones_and_time_offsets + + +{% include link-list.md %} diff --git a/input/pagecontent/guidance.md b/input/pagecontent/guidance.md index 6249d063..5474ce1b 100644 --- a/input/pagecontent/guidance.md +++ b/input/pagecontent/guidance.md @@ -1 +1,29 @@ -### Guidance \ No newline at end of file +### Guidance + + + +The US Core Profiles were originally designed to meet the 2015 Edition certification criterion for Patient Selection 170.315(g)(7) and Application Access – Data Category Request 170.315(g)(8). They were created for each item in the [2015 Edition Common Clinical Data Set (CCDS)]. The Location, Organization, and Practitioner Profiles are not called out specifically in the certification criteria but are included because other profiles directly reference them. The US Core Profiles are informed by the prior [Data Access Framework] and the [Argonaut Data Query] Implementation Guides. However, the profiles here are stand-alone and include requirements from the [U.S. Core Data for Interoperability (USCDI) v4]. + +The table below lists the US Core Profile and FHIR Resources used for the corresponding USCDI Data elements. This information is also available as a [csv](uscdi-table.csv) or [excel](uscdi-table.xlsx) file: + +{% include uscdi-uscore-map.html %} + + + +{% include link-list.md %} \ No newline at end of file diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-average-blood-pressure.yml b/input/resources-yaml-copy/StructureDefinition-us-core-average-blood-pressure.yml index 04dd4284..06a08c7f 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-average-blood-pressure.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-average-blood-pressure.yml @@ -5,7 +5,7 @@ name: USCoreAverageBloodPressureProfile title: US Core Average Blood Pressure Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch average diastolic and systolic blood pressure observations with standard @@ -41,6 +41,7 @@ differential: short: clinically relevant time-period for the average of blood pressure (BP) readings type: + - code: dateTime - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: true @@ -83,7 +84,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.value path: Observation.component.valueQuantity.value - short: Numerical value (with implicit precision) min: 1 max: '1' type: @@ -91,7 +91,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.unit path: Observation.component.valueQuantity.unit - short: Unit representation min: 1 max: '1' type: @@ -99,7 +98,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.system path: Observation.component.valueQuantity.system - short: System that defines coded unit form min: 1 max: '1' type: @@ -108,7 +106,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.code path: Observation.component.valueQuantity.code - short: Coded form of the unit min: 1 max: '1' type: @@ -140,7 +137,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.value path: Observation.component.valueQuantity.value - short: Numerical value (with implicit precision) min: 1 max: '1' type: @@ -148,7 +144,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.unit path: Observation.component.valueQuantity.unit - short: Unit representation min: 1 max: '1' type: @@ -156,7 +151,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.system path: Observation.component.valueQuantity.system - short: System that defines coded unit form min: 1 max: '1' type: @@ -165,7 +159,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.code path: Observation.component.valueQuantity.code - short: Coded form of the unit min: 1 max: '1' type: diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-care-experience-preference.yml b/input/resources-yaml-copy/StructureDefinition-us-core-care-experience-preference.yml index ef1f9180..7ea7b053 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-care-experience-preference.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-care-experience-preference.yml @@ -5,7 +5,7 @@ name: USCoreCareExperiencePreferenceProfile title: US Core Care Experience Preference Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's care experience preferences. It is based on the US Core @@ -50,7 +50,7 @@ differential: mustSupport: true - id: Observation.derivedFrom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Observation.derivedFrom short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-location.yml b/input/resources-yaml-copy/StructureDefinition-us-core-location.yml index a66463ce..4858ea2e 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-location.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-location.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-location -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-location name: USCoreLocation title: US Core Location Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: This profile sets minimum expectations for the Location resource for recording, searching, and fetching a "physical place of available services or resources." It identifies which core elements, extensions, vocabularies, and value sets **SHALL** @@ -34,7 +34,6 @@ differential: mustSupport: true - id: Location.status path: Location.status - short: active | suspended | inactive mustSupport: true - id: Location.name path: Location.name @@ -53,31 +52,26 @@ differential: valueSet: http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType - id: Location.telecom path: Location.telecom - short: Contact details of the location mustSupport: true - id: Location.address path: Location.address - short: Physical location mustSupport: true mapping: - identity: servd map: n/a - id: Location.address.line path: Location.address.line - short: Street name, number, direction & P.O. Box etc. max: '*' type: - code: string mustSupport: true - id: Location.address.city path: Location.address.city - short: Name of city, town etc. type: - code: string mustSupport: true - id: Location.address.state path: Location.address.state - short: Sub-unit of country (abbreviations ok) type: - code: string mustSupport: true @@ -96,7 +90,6 @@ differential: mustSupport: true - id: Location.managingOrganization path: Location.managingOrganization - short: Organization responsible for provisioning and upkeep type: - code: Reference targetProfile: diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-medicationrequest-compliance-extension.yml b/input/resources-yaml-copy/StructureDefinition-us-core-medication-adherence.yml similarity index 83% rename from input/resources-yaml-copy/StructureDefinition-us-core-medicationrequest-compliance-extension.yml rename to input/resources-yaml-copy/StructureDefinition-us-core-medication-adherence.yml index 423377a1..321d0f63 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-medicationrequest-compliance-extension.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-medication-adherence.yml @@ -4,9 +4,10 @@ url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherenc name: USCoreMedicationAdherenceExtension title: US Core Medication Adherence Extension status: active -date: 2023-10-12 -description: A MedicationRequest extension representing whether the medication is - or is not being consumed or administered. +date: 2023-10-19 +description: A MedicationRequest extension representing reported adherence to prescribed + medication instructions. In other words, whether a medication was consumed according + to instructions. fhirVersion: 4.0.1 kind: complex-type abstract: false @@ -20,11 +21,7 @@ differential: element: - id: Extension path: Extension - code: - - system: http://loinc.org - code: 71799-1 - display: Adherence to prescribed medication instructions [Reported] - definition: Whether the medication is or is not being consumed or administered + definition: Reported adherence to prescribed medication instructions. min: 0 max: '*' - id: Extension.extension @@ -38,14 +35,19 @@ differential: - id: Extension.extension:medicationAdherence path: Extension.extension sliceName: medicationAdherence - short: Code indicating whether the medication is or is not being consumed or administered - definition: Code indicating whether the medication is or is not being consumed - or administered + code: + - system: http://loinc.org + code: 71799-1 + display: Adherence to prescribed medication instructions [Reported] + short: Medication adherence code + definition: Code stating whether the patient is consuming or being administered + the medication has according to instructions. For example, the patient in not + taking the medication as prescribed, or the patient is taking the medication + as prescribed. min: 1 max: '1' type: - code: Extension - mustSupport: true - id: Extension.extension:medicationAdherence.url path: Extension.extension.url min: 1 @@ -62,7 +64,7 @@ differential: binding: strength: extensible description: Medication Adherence Codes - valueSet: http://hl7.org/fhir/us/core//ValueSet/medication-adherence + valueSet: http://hl7.org/fhir/us/core/ValueSet/medication-adherence - id: Extension.extension:dateAsserted path: Extension.extension sliceName: dateAsserted @@ -72,7 +74,6 @@ differential: max: '1' type: - code: Extension - mustSupport: true - id: Extension.extension:dateAsserted.url path: Extension.extension.url min: 1 @@ -96,7 +97,6 @@ differential: max: '*' type: - code: Extension - mustSupport: true - id: Extension.extension:informationSource.url path: Extension.extension.url min: 1 @@ -128,9 +128,10 @@ differential: - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: false + mustSupport: true - id: Extension.url path: Extension.url - fixedUri: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationrequest-compliance-extension + fixedUri: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherence - id: Extension.value[x] path: Extension.value[x] min: 0 diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-observation-lab.yml b/input/resources-yaml-copy/StructureDefinition-us-core-observation-lab.yml index 40bb9ca5..397b134d 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-observation-lab.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-observation-lab.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-observation-lab -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab name: USCoreLaboratoryResultObservationProfile title: US Core Laboratory Result Observation Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: "The US Core Laboratory Result Observation Profile is based upon the US Core Observation Clinical Result Profile and, along with the US Core DiagnosticReport Profile for Laboratory Results Reporting, meets the U.S. Core Data for Interoperability @@ -31,7 +31,6 @@ differential: - id: Observation.category:us-core path: Observation.category sliceName: us-core - short: Classification of type of observation min: 1 max: '1' patternCodeableConcept: @@ -111,7 +110,6 @@ differential: valueSet: http://hl7.org/fhir/ValueSet/observation-interpretation - id: Observation.specimen path: Observation.specimen - short: (USCDI) Specimen used for this observation type: - code: Reference targetProfile: diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-patient.yml b/input/resources-yaml-copy/StructureDefinition-us-core-patient.yml index e9bfbcaa..b0175400 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-patient.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-patient.yml @@ -5,7 +5,7 @@ name: USCorePatientProfile title: US Core Patient Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: The US Core Patient Profile meets the U.S. Core Data for Interoperability (USCDI) v3 'Patient Demographics' requirements. This profile sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other @@ -34,7 +34,7 @@ differential: map: Patient - id: Patient.extension:race extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: race @@ -52,7 +52,7 @@ differential: map: Patient.extension - id: Patient.extension:ethnicity extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: ethnicity @@ -70,7 +70,7 @@ differential: map: Patient.extension - id: Patient.extension:tribalAffiliation extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: tribalAffiliation @@ -99,7 +99,7 @@ differential: map: Patient.extension - id: Patient.extension:sex extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: sex @@ -114,7 +114,7 @@ differential: mustSupport: false - id: Patient.extension:genderIdentity extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: genderIdentity @@ -130,7 +130,6 @@ differential: mustSupport: false - id: Patient.identifier path: Patient.identifier - short: An identifier for this patient min: 1 mustSupport: true mapping: @@ -138,7 +137,6 @@ differential: map: Patient.identifier - id: Patient.identifier.system path: Patient.identifier.system - short: The namespace for the identifier value min: 1 mustSupport: true mapping: @@ -154,7 +152,6 @@ differential: map: Patient.identifier.value - id: Patient.name path: Patient.name - short: A name associated with the patient min: 1 constraint: - key: us-core-6 @@ -171,7 +168,7 @@ differential: map: Patient.name - id: Patient.name.use extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.use short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -179,7 +176,6 @@ differential: | nickname | anonymous | old | maiden" - id: Patient.name.family path: Patient.name.family - short: Family name (often called 'Surname') condition: - us-core-6 mustSupport: true @@ -188,7 +184,6 @@ differential: map: Patient.name.family - id: Patient.name.given path: Patient.name.given - short: Given names (not always 'first'). Includes middle names condition: - us-core-6 mustSupport: true @@ -197,7 +192,7 @@ differential: map: Patient.name.given - id: Patient.name.suffix extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.suffix short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -209,7 +204,7 @@ differential: map: NA - id: Patient.name.period extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.period short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -221,16 +216,18 @@ differential: map: NA - id: Patient.telecom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.telecom + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A contact detail for the + individual" mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.telecom.system path: Patient.telecom.system - short: phone | fax | email | pager | url | sms | other min: 1 mustSupport: true binding: @@ -242,7 +239,6 @@ differential: map: NA - id: Patient.telecom.value path: Patient.telecom.value - short: The actual contact point details min: 1 mustSupport: true mapping: @@ -250,7 +246,6 @@ differential: map: NA - id: Patient.telecom.use path: Patient.telecom.use - short: home | work | temp | old | mobile - purpose of this contact point mustSupport: true binding: strength: required @@ -260,7 +255,6 @@ differential: map: NA - id: Patient.gender path: Patient.gender - short: male | female | other | unknown min: 1 type: - code: code @@ -273,26 +267,27 @@ differential: map: Patient.gender - id: Patient.birthDate path: Patient.birthDate - short: The date of birth for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.birthDate - id: Patient.deceased[x] extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.deceased[x] + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: Indicates if the individual + is deceased or not" - id: Patient.address path: Patient.address - short: An address for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.birthDate - id: Patient.address.use extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.use short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -300,21 +295,18 @@ differential: | billing - purpose of this address" - id: Patient.address.line path: Patient.address.line - short: Street name, number, direction & P.O. Box etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.city path: Patient.address.city - short: Name of city, town etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.state path: Patient.address.state - short: Sub-unit of country (abbreviations ok) mustSupport: true binding: strength: extensible @@ -334,7 +326,7 @@ differential: map: NA - id: Patient.address.period extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.period short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -345,17 +337,18 @@ differential: map: NA - id: Patient.communication extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.communication + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A language which may be + used to communicate with the patient about his or her health" mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: Patient.communication - id: Patient.communication.language path: Patient.communication.language - short: The language which can be used to communicate with the patient about his - or her health mustSupport: true binding: strength: extensible diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-procedure.yml b/input/resources-yaml-copy/StructureDefinition-us-core-procedure.yml new file mode 100644 index 00000000..fcc0dd9c --- /dev/null +++ b/input/resources-yaml-copy/StructureDefinition-us-core-procedure.yml @@ -0,0 +1,108 @@ +resourceType: StructureDefinition +id: us-core-procedure +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure +name: USCoreProcedureProfile +title: US Core Procedure Profile +status: active +experimental: false +date: 2023-10-19 +publisher: HL7 US Realm Steering Committee +description: The US Core Procedure Profile is based upon the core FHIR Procedure Resource + and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' requirements. + This profile sets minimum expectations for the Procedure resource to record, search, + and fetch procedures associated with a patient to promote interoperability and adoption + through common implementation. It identifies which core elements, extensions, vocabularies, + and value sets **SHALL** be present in the resource and constrains the way the elements + are used when using this profile. It provides the floor for standards development + for specific use cases. +fhirVersion: 4.0.1 +kind: resource +abstract: false +type: Procedure +baseDefinition: http://hl7.org/fhir/StructureDefinition/Procedure +derivation: constraint +differential: + element: + - id: Procedure + path: Procedure + definition: \- + comment: \- + constraint: + - key: us-core-7 + severity: error + human: Performed SHALL be present if the status is 'completed' or 'in-progress' + expression: (status='completed' or status='in-progress') implies performed.exists() + mustSupport: false + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure + - id: Procedure.basedOn + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.basedOn + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A request for this procedure" + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-servicerequest + mustSupport: false + - id: Procedure.status + path: Procedure.status + condition: + - us-core-7 + mustSupport: true + binding: + strength: required + valueSet: http://hl7.org/fhir/ValueSet/event-status + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.status + - id: Procedure.code + path: Procedure.code + min: 1 + mustSupport: true + binding: + strength: extensible + description: Codes describing the type of Procedure + valueSet: http://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.code + - id: Procedure.subject + path: Procedure.subject + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.subject + - id: Procedure.encounter + path: Procedure.encounter + short: Encounter associated with the procedure + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter + mustSupport: true + - id: Procedure.performed[x] + path: Procedure.performed[x] + type: + - extension: + - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support + valueBoolean: true + code: dateTime + - code: Period + - code: string + - code: Age + - code: Range + condition: + - us-core-7 + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.performed[x] diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-specimen.yml b/input/resources-yaml-copy/StructureDefinition-us-core-specimen.yml index 5a7cbdb1..e2499440 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-specimen.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-specimen.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-specimen -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-specimen +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen name: USCoreSpecimenProfile title: US Core Specimen Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: This profile sets minimum expectations for the Specimen resource to record, search, and fetch "substances being sampled or tested. (e.g., nasopharyngeal swab, whole blood, serum, urine, wound swab)" associated with a patient to promote interoperability @@ -30,10 +30,6 @@ differential: path: Specimen.identifier short: Specimen identifier mustSupport: true - - id: Specimen.accessionIdentifier - path: Specimen.accessionIdentifier - short: Specimen identifier assigned by the lab - mustSupport: true - id: Specimen.type path: Specimen.type min: 1 @@ -53,7 +49,7 @@ differential: path: Specimen.collection - id: Specimen.collection.bodySite extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Specimen.collection.bodySite short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -65,7 +61,7 @@ differential: valueSet: http://hl7.org/fhir/ValueSet/body-site - id: Specimen.condition extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Specimen.condition short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources-yaml-copy/StructureDefinition-us-core-treatment-intervention-preference.yml b/input/resources-yaml-copy/StructureDefinition-us-core-treatment-intervention-preference.yml index c883e3a8..040f7250 100644 --- a/input/resources-yaml-copy/StructureDefinition-us-core-treatment-intervention-preference.yml +++ b/input/resources-yaml-copy/StructureDefinition-us-core-treatment-intervention-preference.yml @@ -6,7 +6,7 @@ name: USCoreTreatmentInterventionPreferenceProfile title: US Core Treatment Intervention Preference Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's treatment intervention preferences. It is based on the @@ -37,7 +37,7 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category - code: intervention-preference + code: treatment-intervention-preference mustSupport: true - id: Observation.code path: Observation.code @@ -47,11 +47,11 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category - code: intervention-preference + code: treatment-intervention-preference mustSupport: true - id: Observation.derivedFrom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Observation.derivedFrom short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources-yaml-old/StructureDefinition-us-core-average-blood-pressure.yml b/input/resources-yaml-old/StructureDefinition-us-core-average-blood-pressure.yml index b294de4d..5f1a3fe4 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-average-blood-pressure.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-average-blood-pressure.yml @@ -43,6 +43,8 @@ differential: - system: http://loinc.org code: 96607-7 mustSupport: true + + - id: Observation.effective[x] extension: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement @@ -50,17 +52,17 @@ differential: path: Observation.effective[x] short: (USCDI) clinically relevant time-period for the average of blood pressure (BP) readings type: - # - extension: - # - url: >- - # http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - # valueBoolean: true - # code: dateTime - - extension: + + - code: dateTime + - code: Period + extension: - url: >- http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: true - code: Period + mustSupport: true + + - id: Observation.component extension: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement diff --git a/input/resources-yaml-old/StructureDefinition-us-core-location.yml b/input/resources-yaml-old/StructureDefinition-us-core-location.yml index c7a642ca..1a89d1d4 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-location.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-location.yml @@ -1,141 +1,116 @@ resourceType: StructureDefinition id: us-core-location -# url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-location -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location +url: 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-location' name: USCoreLocation title: US Core Location Profile status: active experimental: false -date: 2023-08-06 -description: This profile sets minimum expectations for the Location resource for - recording, searching, and fetching a "physical place of available services or resources." It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains how the elements are used when using the profile. It provides the floor for standards development for specific use cases to promote interoperability and adoption through common implementation. +date: '2022-04-20' +description: >- + This profile sets minimum expectations for the Location resource for + recording, searching, and fetching a "physical place of available services or + resources." It identifies which core elements, extensions, vocabularies, and + value sets **SHALL** be present and constrains how the elements are used when + using the profile. It provides the floor for standards development for + specific use cases to promote interoperability and adoption through common + implementation. fhirVersion: 4.0.1 kind: resource abstract: false type: Location -baseDefinition: http://hl7.org/fhir/StructureDefinition/Location +baseDefinition: 'http://hl7.org/fhir/StructureDefinition/Location' derivation: constraint differential: element: - - id: Location - path: Location - definition: \- - comment: \- - mustSupport: false - mapping: - - identity: servd - map: Organization + - id: Location + path: Location + definition: '\-' + comment: '\-' + mustSupport: false + mapping: + - identity: servd + map: Organization -#=== new USCDI requirement === - - id: Location.identifier - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Location.identifier - short: (USCDI Requirement) Unique business identifier for facility or location. - mustSupport: true + - id: Location.identifier + extension: + - url: 'http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement' + valueBoolean: true + path: Location.identifier + short: (USCDI Requirement) Unique business identifier for facility or location. + mustSupport: true + - id: Location.status + path: Location.status + mustSupport: true - - id: Location.status - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.status - short: active | suspended | inactive - mustSupport: true - - id: Location.name - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Location.name - short: (USCDI Requirement) Name by which a facility or location is known. - min: 1 - mustSupport: true - mapping: - - identity: servd - map: ./PrimaryAddress and ./OtherAddresses + - id: Location.name + extension: + - url: 'http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement' + valueBoolean: true + path: Location.name + short: (USCDI Requirement) Name by which a facility or location is known. + min: 1 + mustSupport: true + mapping: + - identity: servd + map: ./PrimaryAddress and ./OtherAddresses -#=== new USCDI requirement === - - id: Location.type - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Location.type - short: (USCDI Requirement) Category of service or resource available in a location. - binding: - strength: extensible - valueSet: http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType - mustSupport: true + - id: Location.type + extension: + - url: 'http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement' + valueBoolean: true + path: Location.type + short: >- + (USCDI Requirement) Category of service or resource available in a + location. + mustSupport: true + binding: + strength: extensible + valueSet: 'http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType' - - id: Location.telecom - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.telecom - short: Contact details of the location - mustSupport: true - - id: Location.address - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.address - short: Physical location - mustSupport: true - mapping: - - identity: servd - map: n/a - - id: Location.address.line - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.address.line - short: Street name, number, direction & P.O. Box etc. - max: '*' - type: - - code: string - mustSupport: true - - id: Location.address.city - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.address.city - short: Name of city, town etc. - type: - - code: string - mustSupport: true - - id: Location.address.state - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.address.state - short: Sub-unit of country (abbreviations ok) - type: - - code: string - mustSupport: true - binding: - strength: extensible - description: Two letter USPS alphabetic codes. - valueSet: http://hl7.org/fhir/us/core/ValueSet/us-core-usps-state - mapping: - - identity: servd - map: ./Sites - - id: Location.address.postalCode - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.address.postalCode - short: US Zip Codes - type: - - code: string - mustSupport: true - - id: Location.managingOrganization - # extension: - # - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - # valueBoolean: true - path: Location.managingOrganization - short: Organization responsible for provisioning and upkeep - type: - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization - mustSupport: true \ No newline at end of file + - id: Location.telecom + path: Location.telecom + mustSupport: true + - id: Location.address + path: Location.address + mustSupport: true + mapping: + - identity: servd + map: n/a + - id: Location.address.line + path: Location.address.line + max: '*' + type: + - code: string + mustSupport: true + - id: Location.address.city + path: Location.address.city + type: + - code: string + mustSupport: true + - id: Location.address.state + path: Location.address.state + type: + - code: string + mustSupport: true + binding: + strength: extensible + description: Two letter USPS alphabetic codes. + valueSet: 'http://hl7.org/fhir/us/core/ValueSet/us-core-usps-state' + mapping: + - identity: servd + map: ./Sites + - id: Location.address.postalCode + path: Location.address.postalCode + short: US Zip Codes + type: + - code: string + mustSupport: true + - id: Location.managingOrganization + path: Location.managingOrganization + type: + - code: Reference + targetProfile: + - >- + http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization + mustSupport: true diff --git a/input/resources-yaml-old/StructureDefinition-us-core-medicationrequest-compliance-extension.yml b/input/resources-yaml-old/StructureDefinition-us-core-medicationrequest-compliance-extension.yml deleted file mode 100644 index e7de65c1..00000000 --- a/input/resources-yaml-old/StructureDefinition-us-core-medicationrequest-compliance-extension.yml +++ /dev/null @@ -1,168 +0,0 @@ -resourceType: StructureDefinition -id: us-core-medication-adherence -url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherence -# url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationrequest-compliance-extension -name: USCoreMedicationAdherenceExtension -title: US Core Medication Adherence Extension -status: active -date: '2023-09-23' -description: A MedicationRequest extension representing whether the medication is or is not being consumed or administered. -fhirVersion: '4.0.1' -kind: complex-type -abstract: false -context: -- type: element - expression: MedicationRequest - -type: Extension -baseDefinition: http://hl7.org/fhir/StructureDefinition/Extension -derivation: constraint - - - -differential: - element: - - id: Extension - path: Extension - code: - - system: 'http://loinc.org' - code: 71799-1 - display: Adherence to prescribed medication instructions [Reported] - definition: Whether the medication is or is not being consumed or administered - min: 0 - max: '*' - - - id: Extension.extension - path: Extension.extension - slicing: - discriminator: - - - type: value - path: url - rules: open - min: 1 - - - id: Extension.extension:medicationAdherence - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Extension.extension - sliceName: medicationAdherence - short: (USCDI) Code indicating whether the medication is or is not being consumed or administered - definition: Code indicating whether the medication is or is not being consumed or administered - min: 1 - max: '1' - type: - - code: Extension - mustSupport: true - - - id: Extension.extension:medicationAdherence.url - path: Extension.extension.url - min: 1 - max: '1' - type: - - code: uri - fixedUri: medicationAdherence - - - - id: Extension.extension:medicationAdherence.value[x] - path: Extension.extension.value[x] - min: 1 - max: '1' - type: - - code: CodeableConcept - binding: - strength: extensible - description: Medication Adherence Codes - valueSet: http://hl7.org/fhir/us/core//ValueSet/medication-adherence - - - id: Extension.extension:dateAsserted - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Extension.extension - sliceName: dateAsserted - short: (USCDI) When the medication adherence was asserted - definition: When the medication adherence was asserted by the information source - min: 0 - max: '1' - type: - - code: Extension - mustSupport: true - - - id: Extension.extension:dateAsserted.url - path: Extension.extension.url - min: 1 - max: '1' - type: - - code: uri - fixedUri: dateAsserted - - - - id: Extension.extension:dateAsserted.value[x] - path: Extension.extension.value[x] - min: 1 - max: '1' - type: - - code: dateTime - - - id: Extension.extension:informationSource - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Extension.extension - sliceName: informationSource - short: (USCDI) Who provided the information about the medication adherence - definition: The person or organization that provided the information about the medication adherence - min: 0 - max: '*' - type: - - code: Extension - mustSupport: true - - - id: Extension.extension:informationSource.url - path: Extension.extension.url - min: 1 - max: '1' - type: - - code: uri - fixedUri: informationSource - - - - id: Extension.extension:informationSource.value[x] - path: Extension.extension.value[x] - min: 1 - max: '1' - type: - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitionerrole - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-relatedperson - - _targetProfile: - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - - - - - - id: Extension.url - path: Extension.url - fixedUri: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationrequest-compliance-extension - - - id: Extension.value[x] - path: Extension.value[x] - min: 0 - max: '0' diff --git a/input/resources-yaml-old/StructureDefinition-us-core-observation-lab.yml b/input/resources-yaml-old/StructureDefinition-us-core-observation-lab.yml index 0a9481ee..279f3a03 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-observation-lab.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-observation-lab.yml @@ -1,7 +1,6 @@ resourceType: StructureDefinition id: us-core-observation-lab -# url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab name: USCoreLaboratoryResultObservationProfile title: US Core Laboratory Result Observation Profile status: active @@ -21,8 +20,6 @@ description: "The US Core Laboratory Result Observation Profile is based upon th which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases." - - fhirVersion: 4.0.1 kind: resource abstract: false @@ -109,6 +106,7 @@ differential: mapping: - identity: argonaut-dq-dstu2 map: Observation.value[x] + # =======New USCDI4 requirements =========== - id: Observation.interpretation extension: @@ -125,6 +123,9 @@ differential: # =======New USCDI4 requirements =========== - id: Observation.specimen + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Observation.specimen short: (USCDI) Specimen used for this observation type: @@ -132,6 +133,7 @@ differential: targetProfile: - http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen mustSupport: true + # =======New USCDI4 requirements =========== - id: Observation.referenceRange extension: @@ -142,3 +144,4 @@ differential: comment: Upper and lower limit of test values expected for a designated population of individuals. Reference range values may differ by patient characteristics, laboratory test manufacturer and laboratory test performer. mustSupport: true # =======New USCDI4 requirements =========== + diff --git a/input/resources-yaml-old/StructureDefinition-us-core-patient.yml b/input/resources-yaml-old/StructureDefinition-us-core-patient.yml index c23b6d2d..f778bace 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-patient.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-patient.yml @@ -36,8 +36,8 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension - sliceName: race - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) US Core Race Extension + sliceName: race + short: (USCDI) US Core Race Extension min: 0 max: '1' type: @@ -54,7 +54,7 @@ differential: valueBoolean: true path: Patient.extension sliceName: ethnicity - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) US Core ethnicity Extension + short: (USCDI) US Core ethnicity Extension min: 0 max: '1' type: @@ -71,7 +71,7 @@ differential: valueBoolean: true path: Patient.extension sliceName: tribalAffiliation - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) Tribal Affiliation Extension + short: (USCDI) Tribal Affiliation Extension min: 0 max: '*' type: @@ -105,7 +105,7 @@ differential: valueBoolean: true path: Patient.extension sliceName: sex - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) Sex Extension + short: (USCDI) Sex Extension min: 0 max: '1' type: @@ -121,7 +121,7 @@ differential: valueBoolean: true path: Patient.extension sliceName: genderIdentity - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) The individual's gender identity + short: (USCDI) The individual's gender identity min: 0 max: '*' type: @@ -130,36 +130,44 @@ differential: - http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity mustSupport: false - id: Patient.identifier - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.identifier - short: An identifier for this patient + short: (USCDI) An identifier for this patient min: 1 mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.identifier - id: Patient.identifier.system - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.identifier.system - short: The namespace for the identifier value + short: (USCDI) The namespace for the identifier value min: 1 mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.identifier.system - id: Patient.identifier.value - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.identifier.value - short: The value that is unique within the system. + short: (USCDI) The value that is unique within the system. min: 1 mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.identifier.value - id: Patient.name - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.name - short: A name associated with the patient + short: (USCDI) A name associated with the patient min: 1 constraint: - key: us-core-6 @@ -179,11 +187,13 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.use - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) usual | official | temp | nickname | anonymous | old | maiden + short: (USCDI) usual | official | temp | nickname | anonymous | old | maiden - id: Patient.name.family - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.name.family - short: Family name (often called 'Surname') + short: (USCDI) Family name (often called 'Surname') condition: - us-core-6 mustSupport: true @@ -191,9 +201,11 @@ differential: - identity: argonaut-dq-dstu2 map: Patient.name.family - id: Patient.name.given - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.name.given - short: Given names (not always 'first'). Includes middle names + short: (USCDI) Given names (not always 'first'). Includes middle names condition: - us-core-6 mustSupport: true @@ -201,9 +213,11 @@ differential: - identity: argonaut-dq-dstu2 map: Patient.name.given - id: Patient.name.suffix - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.name.suffix - short: Parts that come after the name + short: (USCDI) Parts that come after the name mustSupport: false mapping: - identity: argonaut-dq-dstu2 @@ -213,7 +227,7 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.period - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) Time period when name was/is in use + short: (USCDI) Time period when name was/is in use mustSupport: false mapping: - identity: argonaut-dq-dstu2 @@ -223,15 +237,17 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.telecom - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) A contact detail for the individual + short: (USCDI) A contact detail for the individual mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.telecom.system - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.telecom.system - short: phone | fax | email | pager | url | sms | other + short: (USCDI) phone | fax | email | pager | url | sms | other min: 1 mustSupport: true binding: @@ -242,18 +258,22 @@ differential: - identity: argonaut-dq-dstu2 map: NA - id: Patient.telecom.value - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.telecom.value - short: The actual contact point details + short: (USCDI) The actual contact point details min: 1 mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.telecom.use - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.telecom.use - short: home | work | temp | old | mobile - purpose of this + short: (USCDI) home | work | temp | old | mobile - purpose of this contact point mustSupport: true binding: @@ -263,9 +283,11 @@ differential: - identity: argonaut-dq-dstu2 map: NA - id: Patient.gender - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.gender - short: male | female | other | unknown + short: (USCDI) male | female | other | unknown min: 1 type: - code: code @@ -277,9 +299,11 @@ differential: - identity: argonaut-dq-dstu2 map: Patient.gender - id: Patient.birthDate - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.birthDate - short: The date of birth for the individual + short: (USCDI) The date of birth for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 @@ -289,10 +313,13 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.deceased[x] - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) Indicates if the individual is deceased or not + short: (USCDI) Indicates if the individual is deceased or not - id: Patient.address + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.address - short: An address for the individual + short: (USCDI) An address for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 @@ -302,28 +329,34 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.use - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) home | work | temp | old | billing - purpose of this + short: (USCDI) home | work | temp | old | billing - purpose of this address - id: Patient.address.line - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.address.line - short: Street name, number, direction & P.O. Box etc. + short: (USCDI) Street name, number, direction & P.O. Box etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.city - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.address.city - short: Name of city, town etc. + short: (USCDI) Name of city, town etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.state - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.address.state - short: Sub-unit of country (abbreviations ok) + short: (USCDI) Sub-unit of country (abbreviations ok) mustSupport: true binding: strength: extensible @@ -333,9 +366,11 @@ differential: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.postalCode - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.address.postalCode - short: US Zip Codes + short: (USCDI) US Zip Codes alias: - Zip Code mustSupport: true @@ -347,7 +382,7 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.period - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) Time period when address was/is in use + short: (USCDI) Time period when address was/is in use # mustSupport: true mapping: - identity: argonaut-dq-dstu2 @@ -357,16 +392,18 @@ differential: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.communication - short: ❗(𝗔𝗗𝗗'𝗟 𝗨𝗦𝗖𝗗𝗜) A language which may be used to communicate with the + short: (USCDI) A language which may be used to communicate with the patient about his or her health mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: Patient.communication - id: Patient.communication.language - + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true path: Patient.communication.language - short: The language which can be used to communicate with + short: (USCDI) The language which can be used to communicate with the patient about his or her health mustSupport: true binding: diff --git a/input/resources-yaml-old/StructureDefinition-us-core-procedure.yml b/input/resources-yaml-old/StructureDefinition-us-core-procedure.yml new file mode 100644 index 00000000..e789fb59 --- /dev/null +++ b/input/resources-yaml-old/StructureDefinition-us-core-procedure.yml @@ -0,0 +1,132 @@ +resourceType: StructureDefinition +id: us-core-procedure +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure +name: USCoreProcedureProfile +title: US Core Procedure Profile +status: active +experimental: false +date: 2022-04-20 +publisher: HL7 US Realm Steering Committee +description: The US Core Procedure Profile is based upon the core FHIR Procedure Resource + and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' requirements. + This profile sets minimum expectations for the Procedure resource to record, search, + and fetch procedures associated with a patient to promote interoperability and adoption + through common implementation. It identifies which core elements, extensions, vocabularies, + and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It + provides the floor for standards development for specific use cases. +fhirVersion: 4.0.1 +kind: resource +abstract: false +type: Procedure +baseDefinition: http://hl7.org/fhir/StructureDefinition/Procedure +derivation: constraint +differential: + element: + - id: Procedure + path: Procedure + definition: \- + comment: \- + constraint: + - key: us-core-7 + severity: error + human: Performed SHALL be present if the status is 'completed' or 'in-progress' + expression: (status='completed' or status='in-progress') implies performed.exists() + mustSupport: false + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure + - id: Procedure.basedOn + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.basedOn + short: (USCDI) A request for this procedure + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-servicerequest + mustSupport: false + - id: Procedure.status + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.status + short: (USCDI) preparation | in-progress | not-done | on-hold | stopped + | completed | entered-in-error | unknown + condition: + - us-core-7 + mustSupport: true + binding: + strength: required + valueSet: http://hl7.org/fhir/ValueSet/event-status + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.status + - id: Procedure.code + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.code + short: (USCDI) Identification of the procedure + min: 1 + mustSupport: true + binding: + strength: extensible + description: Codes describing the type of Procedure + valueSet: http://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.code + + - id: Procedure.subject + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.subject + short: (USCDI) Who the procedure was performed on + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.subject + + - id: Procedure.encounter + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.encounter + short: (USCDI) Encounter associated with the procedure + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter + mustSupport: true + # mapping: + # - identity: argonaut-dq-dstu2 + # map: Procedure.encounter + + - id: Procedure.performed[x] + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.performed[x] + short: (USCDI) When the procedure was performed + type: + - extension: + - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support + valueBoolean: true + code: dateTime + - code: Period + - code: string + - code: Age + - code: Range + condition: + - us-core-7 + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.performed[x] diff --git a/input/resources-yaml-old/StructureDefinition-us-core-specimen.yml b/input/resources-yaml-old/StructureDefinition-us-core-specimen.yml index 8f9fbaf0..722b7b88 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-specimen.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-specimen.yml @@ -1,13 +1,11 @@ resourceType: StructureDefinition id: us-core-specimen -# url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-specimen +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen name: USCoreSpecimenProfile title: US Core Specimen Profile status: active experimental: false -date: 2023-08-04 - +date: 2022-09-27 description: This profile sets minimum expectations for the Specimen resource to record, search, and fetch "substances being sampled or tested. (e.g., nasopharyngeal swab, whole blood, serum, urine, wound swab)" associated with a patient to promote interoperability @@ -15,7 +13,6 @@ description: This profile sets minimum expectations for the Specimen resource to extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases. - fhirVersion: 4.0.1 kind: resource abstract: false @@ -40,14 +37,6 @@ differential: mustSupport: true # === New USCDI requirement === - - id: Specimen.accessionIdentifier - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: Specimen.accessionIdentifier - short: (USCDI) Specimen identifier assigned by the lab - mustSupport: true - - id: Specimen.type extension: - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement @@ -104,4 +93,4 @@ differential: binding: strength: extensible valueSet: http://terminology.hl7.org/ValueSet/v2-0493 - # mustSupport: true \ No newline at end of file + # mustSupport: true diff --git a/input/resources-yaml-old/StructureDefinition-us-core-treatment-intervention-preference.yml b/input/resources-yaml-old/StructureDefinition-us-core-treatment-intervention-preference.yml index 46904839..9d4d26f2 100644 --- a/input/resources-yaml-old/StructureDefinition-us-core-treatment-intervention-preference.yml +++ b/input/resources-yaml-old/StructureDefinition-us-core-treatment-intervention-preference.yml @@ -44,7 +44,7 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category # get a LOINC code for this see stu note - code: intervention-preference + code: treatment-intervention-preference mustSupport: true @@ -59,7 +59,7 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category # get a LOINC code for this see stu note - code: intervention-preference + code: treatment-intervention-preference mustSupport: true # binding: # strength: extensible diff --git a/input/resources-yaml-old/StructureDefinition-uscore-medicationstatement.yml b/input/resources-yaml-old/StructureDefinition-uscore-medicationstatement.yml deleted file mode 100644 index 921dcd03..00000000 --- a/input/resources-yaml-old/StructureDefinition-uscore-medicationstatement.yml +++ /dev/null @@ -1,254 +0,0 @@ -resourceType: StructureDefinition -id: us-core-medicationstatement - -# url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationstatement -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationstatement - -name: USCoreMedicationStatement -title: US Core MedicationStatement -status: active -experimental: false -date: '2023-08-15' - -description: >- - Profile of MedicationStatement to support medication adherence - record of a - statement of whether a medication has been consumed according to instructions. - - This profile sets minimum expectations for the MedicationStatement resource to record, - search, and fetch a record of a statement of whether a medication has been consumed according to instructions. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases to promote interoperability and adoption through common implementation. - -fhirVersion: 4.0.1 - -kind: resource -abstract: false -type: MedicationStatement -baseDefinition: 'http://hl7.org/fhir/StructureDefinition/MedicationStatement' -derivation: constraint - -differential: - element: - - id: MedicationStatement - path: MedicationStatement - mustSupport: false - -# ====== New R5 Med Adherence Extension Here ==== - - - id: MedicationStatement.extension:med-adherence - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.extension - sliceName: med-adherence - short: (USCDI) Indicates whether the medication is or is not being consumed or administered - definition: >- - The FHIR R5 `Medication.adherence` extension to record medication adherence - min: 0 - max: '1' - type: - - code: Extension - profile: - - http://hl7.org/fhir/5.0/StructureDefinition/extension-MedicationUsage.adherence - mustSupport: false - -# ====== New R5 Med Adherence Extension Here ==== - -# ====== New basedOn to reference the MedicationRequest Here ==== - - - id: MedicationStatement.basedOn - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.basedOn - short: (USCDI) plan, proposal or order this is fulfilling - type: - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-medicationrequest - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-servicerequest - _targetProfile: - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - mustSupport: true - -# ====== New basedOn to reference the MedicationRequest Here ==== - - - - id: MedicationStatement.status - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - - valueBoolean: true - path: MedicationStatement.status - binding: - strength: required - # description: >- - # A code specifying the state of the statement. Generally, this will be - # active or completed state. - valueSet: 'http://www.fhir.org/guides/uscdi4-sandbox/ValueSet/uscore-medicationstatement-status' - mustSupport: true - - - - id: MedicationStatement.medication[x] - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.medication[x] - short: (USCDI) Medication taken - type: - - code: CodeableConcept - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication - mustSupport: true - binding: - strength: extensible - valueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1010.4 - - - id: MedicationStatement.subject - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.subject - short: (USCDI) Who is/was taking the medication - type: - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient - mustSupport: true - - - id: 'MedicationStatement.effective[x]' - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: 'MedicationStatement.effective[x]' - short: (USCDI) The date/time or interval when the medication is/was/will be taken - mustSupport: true - - - id: MedicationStatement.dateAsserted - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dateAsserted - short: (USCDI) When the statement was asserted - # min: 1 - # max: '1' - mustSupport: true - - - id: MedicationStatement.informationSource - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.informationSource - short: (USCDI) Person or organization that provided the information about the taking of this medication - type: - - code: Reference - targetProfile: - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-organization - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitionerrole - - http://hl7.org/fhir/us/core/StructureDefinition/us-core-relatedperson - # - http://hl7.org/fhir/StructureDefinition/Device - _targetProfile: - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: false - # - extension: - # - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - # valueBoolean: false - mustSupport: true - - - # - id: MedicationStatement.derivedFrom - # path: MedicationStatement.derivedFrom - # mustSupport: true - - - id: MedicationStatement.reasonCode - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.reasonCode - short: (USCDI) Reason for why the medication is being/was taken - binding: - strength: extensible - valueSet: http://hl7.org/fhir/us/core/ValueSet/us-core-condition-code - - - id: MedicationStatement.reasonReference - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.reasonReference - short: (USCDI) Condition or observation that supports why the medication is being/was taken - - #=== Use US Core Dosage ==== - - - id: MedicationStatement.dosage - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dosage - short: (USCDI) How the medication should be taken - mustSupport: true - - id: MedicationStatement.dosage.text - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dosage.text - short: (USCDI) Free text dosage instructions e.g. SIG - mustSupport: true - - id: MedicationStatement.dosage.timing - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dosage.timing - short: (USCDI) When medication should be administered - mustSupport: true - - - id: MedicationStatement.dosage.doseAndRate - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dosage.doseAndRate - short: (USCDI) Amount of medication administered - mustSupport: true - - - id: MedicationStatement.dosage.doseAndRate.dose[x] - extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement - valueBoolean: true - path: MedicationStatement.dosage.doseAndRate.dose[x] - short: (USCDI) Amount of medication per dose - type: - - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true - code: Quantity - - code: Range - mustSupport: true - binding: - extension: - - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet - valueCanonical: http://hl7.org/fhir/ValueSet/ucum-units - strength: preferred - valueSet: http://hl7.org/fhir/ValueSet/ucum-common - diff --git a/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml b/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml index 04dd4284..06a08c7f 100644 --- a/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml +++ b/input/resources-yaml/StructureDefinition-us-core-average-blood-pressure.yml @@ -5,7 +5,7 @@ name: USCoreAverageBloodPressureProfile title: US Core Average Blood Pressure Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch average diastolic and systolic blood pressure observations with standard @@ -41,6 +41,7 @@ differential: short: clinically relevant time-period for the average of blood pressure (BP) readings type: + - code: dateTime - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: true @@ -83,7 +84,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.value path: Observation.component.valueQuantity.value - short: Numerical value (with implicit precision) min: 1 max: '1' type: @@ -91,7 +91,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.unit path: Observation.component.valueQuantity.unit - short: Unit representation min: 1 max: '1' type: @@ -99,7 +98,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.system path: Observation.component.valueQuantity.system - short: System that defines coded unit form min: 1 max: '1' type: @@ -108,7 +106,6 @@ differential: mustSupport: true - id: Observation.component:systolic.valueQuantity.code path: Observation.component.valueQuantity.code - short: Coded form of the unit min: 1 max: '1' type: @@ -140,7 +137,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.value path: Observation.component.valueQuantity.value - short: Numerical value (with implicit precision) min: 1 max: '1' type: @@ -148,7 +144,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.unit path: Observation.component.valueQuantity.unit - short: Unit representation min: 1 max: '1' type: @@ -156,7 +151,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.system path: Observation.component.valueQuantity.system - short: System that defines coded unit form min: 1 max: '1' type: @@ -165,7 +159,6 @@ differential: mustSupport: true - id: Observation.component:diastolic.valueQuantity.code path: Observation.component.valueQuantity.code - short: Coded form of the unit min: 1 max: '1' type: diff --git a/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml b/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml index ef1f9180..7ea7b053 100644 --- a/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml +++ b/input/resources-yaml/StructureDefinition-us-core-care-experience-preference.yml @@ -5,7 +5,7 @@ name: USCoreCareExperiencePreferenceProfile title: US Core Care Experience Preference Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's care experience preferences. It is based on the US Core @@ -50,7 +50,7 @@ differential: mustSupport: true - id: Observation.derivedFrom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Observation.derivedFrom short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources-yaml/StructureDefinition-us-core-location.yml b/input/resources-yaml/StructureDefinition-us-core-location.yml index a66463ce..4858ea2e 100644 --- a/input/resources-yaml/StructureDefinition-us-core-location.yml +++ b/input/resources-yaml/StructureDefinition-us-core-location.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-location -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-location name: USCoreLocation title: US Core Location Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: This profile sets minimum expectations for the Location resource for recording, searching, and fetching a "physical place of available services or resources." It identifies which core elements, extensions, vocabularies, and value sets **SHALL** @@ -34,7 +34,6 @@ differential: mustSupport: true - id: Location.status path: Location.status - short: active | suspended | inactive mustSupport: true - id: Location.name path: Location.name @@ -53,31 +52,26 @@ differential: valueSet: http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType - id: Location.telecom path: Location.telecom - short: Contact details of the location mustSupport: true - id: Location.address path: Location.address - short: Physical location mustSupport: true mapping: - identity: servd map: n/a - id: Location.address.line path: Location.address.line - short: Street name, number, direction & P.O. Box etc. max: '*' type: - code: string mustSupport: true - id: Location.address.city path: Location.address.city - short: Name of city, town etc. type: - code: string mustSupport: true - id: Location.address.state path: Location.address.state - short: Sub-unit of country (abbreviations ok) type: - code: string mustSupport: true @@ -96,7 +90,6 @@ differential: mustSupport: true - id: Location.managingOrganization path: Location.managingOrganization - short: Organization responsible for provisioning and upkeep type: - code: Reference targetProfile: diff --git a/input/resources-yaml/StructureDefinition-us-core-medicationrequest-compliance-extension.yml b/input/resources-yaml/StructureDefinition-us-core-medication-adherence.yml similarity index 79% rename from input/resources-yaml/StructureDefinition-us-core-medicationrequest-compliance-extension.yml rename to input/resources-yaml/StructureDefinition-us-core-medication-adherence.yml index 423377a1..840b4efd 100644 --- a/input/resources-yaml/StructureDefinition-us-core-medicationrequest-compliance-extension.yml +++ b/input/resources-yaml/StructureDefinition-us-core-medication-adherence.yml @@ -4,9 +4,10 @@ url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherenc name: USCoreMedicationAdherenceExtension title: US Core Medication Adherence Extension status: active -date: 2023-10-12 -description: A MedicationRequest extension representing whether the medication is - or is not being consumed or administered. +date: 2023-10-17 +description: A MedicationRequest extension representing reported adherence to prescribed + medication instructions. In other words, whether a medication was consumed according + to instructions. fhirVersion: 4.0.1 kind: complex-type abstract: false @@ -20,11 +21,7 @@ differential: element: - id: Extension path: Extension - code: - - system: http://loinc.org - code: 71799-1 - display: Adherence to prescribed medication instructions [Reported] - definition: Whether the medication is or is not being consumed or administered + definition: Reported adherence to prescribed medication instructions. min: 0 max: '*' - id: Extension.extension @@ -34,13 +31,19 @@ differential: - type: value path: url rules: open - min: 1 + min: 2 - id: Extension.extension:medicationAdherence path: Extension.extension sliceName: medicationAdherence - short: Code indicating whether the medication is or is not being consumed or administered - definition: Code indicating whether the medication is or is not being consumed - or administered + code: + - system: http://loinc.org + code: 71799-1 + display: Adherence to prescribed medication instructions [Reported] + short: Medication adherence code + definition: Code stating whether the patient is consuming or being administered + the medication has according to instructions. For example, the patient in not + taking the medication as prescribed, or the patient is taking the medication + as prescribed. min: 1 max: '1' type: @@ -61,14 +64,14 @@ differential: - code: CodeableConcept binding: strength: extensible - description: Medication Adherence Codes - valueSet: http://hl7.org/fhir/us/core//ValueSet/medication-adherence + description: This set of values contains terms representing whether a medication has been consumed according to instructions. + valueSet: http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1099.59 - id: Extension.extension:dateAsserted path: Extension.extension sliceName: dateAsserted short: When the medication adherence was asserted definition: When the medication adherence was asserted by the information source - min: 0 + min: 1 max: '1' type: - code: Extension @@ -118,19 +121,19 @@ differential: _targetProfile: - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true + valueBoolean: false - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: false - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support - valueBoolean: true + valueBoolean: false - extension: - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support valueBoolean: false - id: Extension.url path: Extension.url - fixedUri: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationrequest-compliance-extension + fixedUri: http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherence - id: Extension.value[x] path: Extension.value[x] min: 0 diff --git a/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml b/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml index 40bb9ca5..397b134d 100644 --- a/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml +++ b/input/resources-yaml/StructureDefinition-us-core-observation-lab.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-observation-lab -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab name: USCoreLaboratoryResultObservationProfile title: US Core Laboratory Result Observation Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: "The US Core Laboratory Result Observation Profile is based upon the US Core Observation Clinical Result Profile and, along with the US Core DiagnosticReport Profile for Laboratory Results Reporting, meets the U.S. Core Data for Interoperability @@ -31,7 +31,6 @@ differential: - id: Observation.category:us-core path: Observation.category sliceName: us-core - short: Classification of type of observation min: 1 max: '1' patternCodeableConcept: @@ -111,7 +110,6 @@ differential: valueSet: http://hl7.org/fhir/ValueSet/observation-interpretation - id: Observation.specimen path: Observation.specimen - short: (USCDI) Specimen used for this observation type: - code: Reference targetProfile: diff --git a/input/resources-yaml/StructureDefinition-us-core-patient.yml b/input/resources-yaml/StructureDefinition-us-core-patient.yml index e9bfbcaa..b0175400 100644 --- a/input/resources-yaml/StructureDefinition-us-core-patient.yml +++ b/input/resources-yaml/StructureDefinition-us-core-patient.yml @@ -5,7 +5,7 @@ name: USCorePatientProfile title: US Core Patient Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: The US Core Patient Profile meets the U.S. Core Data for Interoperability (USCDI) v3 'Patient Demographics' requirements. This profile sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other @@ -34,7 +34,7 @@ differential: map: Patient - id: Patient.extension:race extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: race @@ -52,7 +52,7 @@ differential: map: Patient.extension - id: Patient.extension:ethnicity extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: ethnicity @@ -70,7 +70,7 @@ differential: map: Patient.extension - id: Patient.extension:tribalAffiliation extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: tribalAffiliation @@ -99,7 +99,7 @@ differential: map: Patient.extension - id: Patient.extension:sex extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: sex @@ -114,7 +114,7 @@ differential: mustSupport: false - id: Patient.extension:genderIdentity extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.extension sliceName: genderIdentity @@ -130,7 +130,6 @@ differential: mustSupport: false - id: Patient.identifier path: Patient.identifier - short: An identifier for this patient min: 1 mustSupport: true mapping: @@ -138,7 +137,6 @@ differential: map: Patient.identifier - id: Patient.identifier.system path: Patient.identifier.system - short: The namespace for the identifier value min: 1 mustSupport: true mapping: @@ -154,7 +152,6 @@ differential: map: Patient.identifier.value - id: Patient.name path: Patient.name - short: A name associated with the patient min: 1 constraint: - key: us-core-6 @@ -171,7 +168,7 @@ differential: map: Patient.name - id: Patient.name.use extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.use short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -179,7 +176,6 @@ differential: | nickname | anonymous | old | maiden" - id: Patient.name.family path: Patient.name.family - short: Family name (often called 'Surname') condition: - us-core-6 mustSupport: true @@ -188,7 +184,6 @@ differential: map: Patient.name.family - id: Patient.name.given path: Patient.name.given - short: Given names (not always 'first'). Includes middle names condition: - us-core-6 mustSupport: true @@ -197,7 +192,7 @@ differential: map: Patient.name.given - id: Patient.name.suffix extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.suffix short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -209,7 +204,7 @@ differential: map: NA - id: Patient.name.period extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.name.period short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -221,16 +216,18 @@ differential: map: NA - id: Patient.telecom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.telecom + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A contact detail for the + individual" mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.telecom.system path: Patient.telecom.system - short: phone | fax | email | pager | url | sms | other min: 1 mustSupport: true binding: @@ -242,7 +239,6 @@ differential: map: NA - id: Patient.telecom.value path: Patient.telecom.value - short: The actual contact point details min: 1 mustSupport: true mapping: @@ -250,7 +246,6 @@ differential: map: NA - id: Patient.telecom.use path: Patient.telecom.use - short: home | work | temp | old | mobile - purpose of this contact point mustSupport: true binding: strength: required @@ -260,7 +255,6 @@ differential: map: NA - id: Patient.gender path: Patient.gender - short: male | female | other | unknown min: 1 type: - code: code @@ -273,26 +267,27 @@ differential: map: Patient.gender - id: Patient.birthDate path: Patient.birthDate - short: The date of birth for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.birthDate - id: Patient.deceased[x] extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.deceased[x] + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: Indicates if the individual + is deceased or not" - id: Patient.address path: Patient.address - short: An address for the individual mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: Patient.birthDate - id: Patient.address.use extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.use short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -300,21 +295,18 @@ differential: | billing - purpose of this address" - id: Patient.address.line path: Patient.address.line - short: Street name, number, direction & P.O. Box etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.city path: Patient.address.city - short: Name of city, town etc. mustSupport: true mapping: - identity: argonaut-dq-dstu2 map: NA - id: Patient.address.state path: Patient.address.state - short: Sub-unit of country (abbreviations ok) mustSupport: true binding: strength: extensible @@ -334,7 +326,7 @@ differential: map: NA - id: Patient.address.period extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.address.period short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -345,17 +337,18 @@ differential: map: NA - id: Patient.communication extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Patient.communication + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A language which may be + used to communicate with the patient about his or her health" mustSupport: false mapping: - identity: argonaut-dq-dstu2 map: Patient.communication - id: Patient.communication.language path: Patient.communication.language - short: The language which can be used to communicate with the patient about his - or her health mustSupport: true binding: strength: extensible diff --git a/input/resources-yaml/StructureDefinition-us-core-procedure.yml b/input/resources-yaml/StructureDefinition-us-core-procedure.yml new file mode 100644 index 00000000..fcc0dd9c --- /dev/null +++ b/input/resources-yaml/StructureDefinition-us-core-procedure.yml @@ -0,0 +1,108 @@ +resourceType: StructureDefinition +id: us-core-procedure +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure +name: USCoreProcedureProfile +title: US Core Procedure Profile +status: active +experimental: false +date: 2023-10-19 +publisher: HL7 US Realm Steering Committee +description: The US Core Procedure Profile is based upon the core FHIR Procedure Resource + and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' requirements. + This profile sets minimum expectations for the Procedure resource to record, search, + and fetch procedures associated with a patient to promote interoperability and adoption + through common implementation. It identifies which core elements, extensions, vocabularies, + and value sets **SHALL** be present in the resource and constrains the way the elements + are used when using this profile. It provides the floor for standards development + for specific use cases. +fhirVersion: 4.0.1 +kind: resource +abstract: false +type: Procedure +baseDefinition: http://hl7.org/fhir/StructureDefinition/Procedure +derivation: constraint +differential: + element: + - id: Procedure + path: Procedure + definition: \- + comment: \- + constraint: + - key: us-core-7 + severity: error + human: Performed SHALL be present if the status is 'completed' or 'in-progress' + expression: (status='completed' or status='in-progress') implies performed.exists() + mustSupport: false + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure + - id: Procedure.basedOn + extension: + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement + valueBoolean: true + path: Procedure.basedOn + short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF + \U0001D5E8\U0001D5E6\U0001D5D6\U0001D5D7\U0001D5DC: A request for this procedure" + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-servicerequest + mustSupport: false + - id: Procedure.status + path: Procedure.status + condition: + - us-core-7 + mustSupport: true + binding: + strength: required + valueSet: http://hl7.org/fhir/ValueSet/event-status + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.status + - id: Procedure.code + path: Procedure.code + min: 1 + mustSupport: true + binding: + strength: extensible + description: Codes describing the type of Procedure + valueSet: http://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.code + - id: Procedure.subject + path: Procedure.subject + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.subject + - id: Procedure.encounter + path: Procedure.encounter + short: Encounter associated with the procedure + type: + - code: Reference + targetProfile: + - http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter + mustSupport: true + - id: Procedure.performed[x] + path: Procedure.performed[x] + type: + - extension: + - url: http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support + valueBoolean: true + code: dateTime + - code: Period + - code: string + - code: Age + - code: Range + condition: + - us-core-7 + mustSupport: true + mapping: + - identity: argonaut-dq-dstu2 + map: Procedure.performed[x] diff --git a/input/resources-yaml/StructureDefinition-us-core-specimen.yml b/input/resources-yaml/StructureDefinition-us-core-specimen.yml index 5a7cbdb1..e2499440 100644 --- a/input/resources-yaml/StructureDefinition-us-core-specimen.yml +++ b/input/resources-yaml/StructureDefinition-us-core-specimen.yml @@ -1,11 +1,11 @@ resourceType: StructureDefinition id: us-core-specimen -url: http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-specimen +url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen name: USCoreSpecimenProfile title: US Core Specimen Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: This profile sets minimum expectations for the Specimen resource to record, search, and fetch "substances being sampled or tested. (e.g., nasopharyngeal swab, whole blood, serum, urine, wound swab)" associated with a patient to promote interoperability @@ -30,10 +30,6 @@ differential: path: Specimen.identifier short: Specimen identifier mustSupport: true - - id: Specimen.accessionIdentifier - path: Specimen.accessionIdentifier - short: Specimen identifier assigned by the lab - mustSupport: true - id: Specimen.type path: Specimen.type min: 1 @@ -53,7 +49,7 @@ differential: path: Specimen.collection - id: Specimen.collection.bodySite extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Specimen.collection.bodySite short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF @@ -65,7 +61,7 @@ differential: valueSet: http://hl7.org/fhir/ValueSet/body-site - id: Specimen.condition extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Specimen.condition short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml b/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml index c883e3a8..040f7250 100644 --- a/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml +++ b/input/resources-yaml/StructureDefinition-us-core-treatment-intervention-preference.yml @@ -6,7 +6,7 @@ name: USCoreTreatmentInterventionPreferenceProfile title: US Core Treatment Intervention Preference Profile status: active experimental: false -date: 2023-10-12 +date: 2023-10-19 description: To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's treatment intervention preferences. It is based on the @@ -37,7 +37,7 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category - code: intervention-preference + code: treatment-intervention-preference mustSupport: true - id: Observation.code path: Observation.code @@ -47,11 +47,11 @@ differential: patternCodeableConcept: coding: - system: http://hl7.org/fhir/us/core/CodeSystem/us-core-category - code: intervention-preference + code: treatment-intervention-preference mustSupport: true - id: Observation.derivedFrom extension: - - url: http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi + - url: http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement valueBoolean: true path: Observation.derivedFrom short: "\U0001D5D4\U0001D5D7\U0001D5D7\U0001D5DC\U0001D5E7\U0001D5DC\U0001D5E2\U0001D5E1\U0001D5D4\U0001D5DF diff --git a/input/resources/StructureDefinition-us-core-average-blood-pressure.json b/input/resources/StructureDefinition-us-core-average-blood-pressure.json index 28dcfeb3..bd7fce09 100644 --- a/input/resources/StructureDefinition-us-core-average-blood-pressure.json +++ b/input/resources/StructureDefinition-us-core-average-blood-pressure.json @@ -6,7 +6,7 @@ "title": "US Core Average Blood Pressure Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch average diastolic and systolic blood pressure observations with standard LOINC codes and UCUM units of measure. It is based on the US Core Vital Signs Profile and identifies which *additional* core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains the way the elements are used when using the profile. It provides the floor for standards development for specific use cases.", "fhirVersion": "4.0.1", "kind": "resource", @@ -47,6 +47,9 @@ "path": "Observation.effective[x]", "short": "clinically relevant time-period for the average of blood pressure (BP) readings", "type": [ + { + "code": "dateTime" + }, { "extension": [ { @@ -116,7 +119,6 @@ { "id": "Observation.component:systolic.valueQuantity.value", "path": "Observation.component.valueQuantity.value", - "short": "Numerical value (with implicit precision)", "min": 1, "max": "1", "type": [ @@ -129,7 +131,6 @@ { "id": "Observation.component:systolic.valueQuantity.unit", "path": "Observation.component.valueQuantity.unit", - "short": "Unit representation", "min": 1, "max": "1", "type": [ @@ -142,7 +143,6 @@ { "id": "Observation.component:systolic.valueQuantity.system", "path": "Observation.component.valueQuantity.system", - "short": "System that defines coded unit form", "min": 1, "max": "1", "type": [ @@ -156,7 +156,6 @@ { "id": "Observation.component:systolic.valueQuantity.code", "path": "Observation.component.valueQuantity.code", - "short": "Coded form of the unit", "min": 1, "max": "1", "type": [ @@ -206,7 +205,6 @@ { "id": "Observation.component:diastolic.valueQuantity.value", "path": "Observation.component.valueQuantity.value", - "short": "Numerical value (with implicit precision)", "min": 1, "max": "1", "type": [ @@ -219,7 +217,6 @@ { "id": "Observation.component:diastolic.valueQuantity.unit", "path": "Observation.component.valueQuantity.unit", - "short": "Unit representation", "min": 1, "max": "1", "type": [ @@ -232,7 +229,6 @@ { "id": "Observation.component:diastolic.valueQuantity.system", "path": "Observation.component.valueQuantity.system", - "short": "System that defines coded unit form", "min": 1, "max": "1", "type": [ @@ -246,7 +242,6 @@ { "id": "Observation.component:diastolic.valueQuantity.code", "path": "Observation.component.valueQuantity.code", - "short": "Coded form of the unit", "min": 1, "max": "1", "type": [ diff --git a/input/resources/StructureDefinition-us-core-care-experience-preference.json b/input/resources/StructureDefinition-us-core-care-experience-preference.json index 64497d9d..f83d7507 100644 --- a/input/resources/StructureDefinition-us-core-care-experience-preference.json +++ b/input/resources/StructureDefinition-us-core-care-experience-preference.json @@ -6,7 +6,7 @@ "title": "US Core Care Experience Preference Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's care experience preferences. It is based on the US Core Simple Profile and identifies which *additional* core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains the way the elements are used when using the profile. It provides the floor for standards development for specific use cases.", "copyright": "Used by permission of HL7 International, all rights reserved Creative Commons License", "fhirVersion": "4.0.1", @@ -63,7 +63,7 @@ "id": "Observation.derivedFrom", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], diff --git a/input/resources/StructureDefinition-us-core-location.json b/input/resources/StructureDefinition-us-core-location.json index f26a65fe..1c7f906b 100644 --- a/input/resources/StructureDefinition-us-core-location.json +++ b/input/resources/StructureDefinition-us-core-location.json @@ -1,12 +1,12 @@ { "resourceType": "StructureDefinition", "id": "us-core-location", - "url": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-location", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-location", "name": "USCoreLocation", "title": "US Core Location Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "This profile sets minimum expectations for the Location resource for recording, searching, and fetching a \"physical place of available services or resources.\" It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains how the elements are used when using the profile. It provides the floor for standards development for specific use cases to promote interoperability and adoption through common implementation.", "fhirVersion": "4.0.1", "kind": "resource", @@ -38,7 +38,6 @@ { "id": "Location.status", "path": "Location.status", - "short": "active | suspended | inactive", "mustSupport": true }, { @@ -67,13 +66,11 @@ { "id": "Location.telecom", "path": "Location.telecom", - "short": "Contact details of the location", "mustSupport": true }, { "id": "Location.address", "path": "Location.address", - "short": "Physical location", "mustSupport": true, "mapping": [ { @@ -85,7 +82,6 @@ { "id": "Location.address.line", "path": "Location.address.line", - "short": "Street name, number, direction & P.O. Box etc.", "max": "*", "type": [ { @@ -97,7 +93,6 @@ { "id": "Location.address.city", "path": "Location.address.city", - "short": "Name of city, town etc.", "type": [ { "code": "string" @@ -108,7 +103,6 @@ { "id": "Location.address.state", "path": "Location.address.state", - "short": "Sub-unit of country (abbreviations ok)", "type": [ { "code": "string" @@ -141,7 +135,6 @@ { "id": "Location.managingOrganization", "path": "Location.managingOrganization", - "short": "Organization responsible for provisioning and upkeep", "type": [ { "code": "Reference", diff --git a/input/resources/StructureDefinition-us-core-medicationrequest-compliance-extension.json b/input/resources/StructureDefinition-us-core-medication-adherence.json similarity index 86% rename from input/resources/StructureDefinition-us-core-medicationrequest-compliance-extension.json rename to input/resources/StructureDefinition-us-core-medication-adherence.json index a88a3aa0..50de88f9 100644 --- a/input/resources/StructureDefinition-us-core-medicationrequest-compliance-extension.json +++ b/input/resources/StructureDefinition-us-core-medication-adherence.json @@ -5,8 +5,8 @@ "name": "USCoreMedicationAdherenceExtension", "title": "US Core Medication Adherence Extension", "status": "active", - "date": "2023-10-12", - "description": "A MedicationRequest extension representing whether the medication is or is not being consumed or administered.", + "date": "2023-10-17", + "description": "A MedicationRequest extension representing reported adherence to prescribed medication instructions. In other words, whether a medication was consumed according to instructions.", "fhirVersion": "4.0.1", "kind": "complex-type", "abstract": false, @@ -24,14 +24,7 @@ { "id": "Extension", "path": "Extension", - "code": [ - { - "system": "http://loinc.org", - "code": "71799-1", - "display": "Adherence to prescribed medication instructions [Reported]" - } - ], - "definition": "Whether the medication is or is not being consumed or administered", + "definition": "Reported adherence to prescribed medication instructions.", "min": 0, "max": "*" }, @@ -47,14 +40,21 @@ ], "rules": "open" }, - "min": 1 + "min": 2 }, { "id": "Extension.extension:medicationAdherence", "path": "Extension.extension", "sliceName": "medicationAdherence", - "short": "Code indicating whether the medication is or is not being consumed or administered", - "definition": "Code indicating whether the medication is or is not being consumed or administered", + "code": [ + { + "system": "http://loinc.org", + "code": "71799-1", + "display": "Adherence to prescribed medication instructions [Reported]" + } + ], + "short": "Medication adherence code", + "definition": "Code stating whether the patient is consuming or being administered the medication has according to instructions. For example, the patient in not taking the medication as prescribed, or the patient is taking the medication as prescribed.", "min": 1, "max": "1", "type": [ @@ -88,8 +88,8 @@ ], "binding": { "strength": "extensible", - "description": "Medication Adherence Codes", - "valueSet": "http://hl7.org/fhir/us/core//ValueSet/medication-adherence" + "description": "This set of values contains terms representing whether a medication has been consumed according to instructions.", + "valueSet": "http://cts.nlm.nih.gov/fhir/ValueSet/2.16.840.1.113762.1.4.1099.59" } }, { @@ -98,7 +98,7 @@ "sliceName": "dateAsserted", "short": "When the medication adherence was asserted", "definition": "When the medication adherence was asserted by the information source", - "min": 0, + "min": 1, "max": "1", "type": [ { @@ -176,7 +176,7 @@ "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support", - "valueBoolean": true + "valueBoolean": false } ] }, @@ -192,7 +192,7 @@ "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support", - "valueBoolean": true + "valueBoolean": false } ] }, @@ -211,7 +211,7 @@ { "id": "Extension.url", "path": "Extension.url", - "fixedUri": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-medicationrequest-compliance-extension" + "fixedUri": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-medication-adherence" }, { "id": "Extension.value[x]", diff --git a/input/resources/StructureDefinition-us-core-observation-lab.json b/input/resources/StructureDefinition-us-core-observation-lab.json index ae3d95ae..be7a03a5 100644 --- a/input/resources/StructureDefinition-us-core-observation-lab.json +++ b/input/resources/StructureDefinition-us-core-observation-lab.json @@ -1,12 +1,12 @@ { "resourceType": "StructureDefinition", "id": "us-core-observation-lab", - "url": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-observation-lab", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-observation-lab", "name": "USCoreLaboratoryResultObservationProfile", "title": "US Core Laboratory Result Observation Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "The US Core Laboratory Result Observation Profile is based upon the US Core Observation Clinical Result Profile and, along with the US Core DiagnosticReport Profile for Laboratory Results Reporting, meets the U.S. Core Data for Interoperability (USCDI) Laboratory requirements. Laboratory results are grouped and summarized using the DiagnosticReport resource, which references Observation resources. Each Observation resource represents an individual laboratory test and result value, a \u201cnested\u201d panel (such as a microbial susceptibility panel) that references other observations, or rarely a laboratory test with component result values. The US Core Laboratory Result Observation Profile sets minimum expectations for the Observation resource to record, search, and fetch laboratory test results associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.", "fhirVersion": "4.0.1", "kind": "resource", @@ -20,7 +20,6 @@ "id": "Observation.category:us-core", "path": "Observation.category", "sliceName": "us-core", - "short": "Classification of type of observation", "min": 1, "max": "1", "patternCodeableConcept": { @@ -155,7 +154,6 @@ { "id": "Observation.specimen", "path": "Observation.specimen", - "short": "(USCDI) Specimen used for this observation", "type": [ { "code": "Reference", diff --git a/input/resources/StructureDefinition-us-core-patient.json b/input/resources/StructureDefinition-us-core-patient.json index c0431931..d100d77f 100644 --- a/input/resources/StructureDefinition-us-core-patient.json +++ b/input/resources/StructureDefinition-us-core-patient.json @@ -6,7 +6,7 @@ "title": "US Core Patient Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "The US Core Patient Profile meets the U.S. Core Data for Interoperability (USCDI) v3 'Patient Demographics' requirements. This profile sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other administrative information about an individual patient. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource when using this profile to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.", "fhirVersion": "4.0.1", "kind": "resource", @@ -33,7 +33,7 @@ "id": "Patient.extension:race", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -62,7 +62,7 @@ "id": "Patient.extension:ethnicity", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -91,7 +91,7 @@ "id": "Patient.extension:tribalAffiliation", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -137,7 +137,7 @@ "id": "Patient.extension:sex", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -160,7 +160,7 @@ "id": "Patient.extension:genderIdentity", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -182,7 +182,6 @@ { "id": "Patient.identifier", "path": "Patient.identifier", - "short": "An identifier for this patient", "min": 1, "mustSupport": true, "mapping": [ @@ -195,7 +194,6 @@ { "id": "Patient.identifier.system", "path": "Patient.identifier.system", - "short": "The namespace for the identifier value", "min": 1, "mustSupport": true, "mapping": [ @@ -221,7 +219,6 @@ { "id": "Patient.name", "path": "Patient.name", - "short": "A name associated with the patient", "min": 1, "constraint": [ { @@ -244,7 +241,7 @@ "id": "Patient.name.use", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -254,7 +251,6 @@ { "id": "Patient.name.family", "path": "Patient.name.family", - "short": "Family name (often called 'Surname')", "condition": [ "us-core-6" ], @@ -269,7 +265,6 @@ { "id": "Patient.name.given", "path": "Patient.name.given", - "short": "Given names (not always 'first'). Includes middle names", "condition": [ "us-core-6" ], @@ -285,7 +280,7 @@ "id": "Patient.name.suffix", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -303,7 +298,7 @@ "id": "Patient.name.period", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -321,11 +316,12 @@ "id": "Patient.telecom", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], "path": "Patient.telecom", + "short": "\ud835\uddd4\ud835\uddd7\ud835\uddd7\ud835\udddc\ud835\udde7\ud835\udddc\ud835\udde2\ud835\udde1\ud835\uddd4\ud835\udddf \ud835\udde8\ud835\udde6\ud835\uddd6\ud835\uddd7\ud835\udddc: A contact detail for the individual", "mustSupport": false, "mapping": [ { @@ -337,7 +333,6 @@ { "id": "Patient.telecom.system", "path": "Patient.telecom.system", - "short": "phone | fax | email | pager | url | sms | other", "min": 1, "mustSupport": true, "binding": { @@ -355,7 +350,6 @@ { "id": "Patient.telecom.value", "path": "Patient.telecom.value", - "short": "The actual contact point details", "min": 1, "mustSupport": true, "mapping": [ @@ -368,7 +362,6 @@ { "id": "Patient.telecom.use", "path": "Patient.telecom.use", - "short": "home | work | temp | old | mobile - purpose of this contact point", "mustSupport": true, "binding": { "strength": "required", @@ -384,7 +377,6 @@ { "id": "Patient.gender", "path": "Patient.gender", - "short": "male | female | other | unknown", "min": 1, "type": [ { @@ -406,7 +398,6 @@ { "id": "Patient.birthDate", "path": "Patient.birthDate", - "short": "The date of birth for the individual", "mustSupport": true, "mapping": [ { @@ -419,16 +410,16 @@ "id": "Patient.deceased[x]", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], - "path": "Patient.deceased[x]" + "path": "Patient.deceased[x]", + "short": "\ud835\uddd4\ud835\uddd7\ud835\uddd7\ud835\udddc\ud835\udde7\ud835\udddc\ud835\udde2\ud835\udde1\ud835\uddd4\ud835\udddf \ud835\udde8\ud835\udde6\ud835\uddd6\ud835\uddd7\ud835\udddc: Indicates if the individual is deceased or not" }, { "id": "Patient.address", "path": "Patient.address", - "short": "An address for the individual", "mustSupport": true, "mapping": [ { @@ -441,7 +432,7 @@ "id": "Patient.address.use", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -451,7 +442,6 @@ { "id": "Patient.address.line", "path": "Patient.address.line", - "short": "Street name, number, direction & P.O. Box etc.", "mustSupport": true, "mapping": [ { @@ -463,7 +453,6 @@ { "id": "Patient.address.city", "path": "Patient.address.city", - "short": "Name of city, town etc.", "mustSupport": true, "mapping": [ { @@ -475,7 +464,6 @@ { "id": "Patient.address.state", "path": "Patient.address.state", - "short": "Sub-unit of country (abbreviations ok)", "mustSupport": true, "binding": { "strength": "extensible", @@ -508,7 +496,7 @@ "id": "Patient.address.period", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -525,11 +513,12 @@ "id": "Patient.communication", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], "path": "Patient.communication", + "short": "\ud835\uddd4\ud835\uddd7\ud835\uddd7\ud835\udddc\ud835\udde7\ud835\udddc\ud835\udde2\ud835\udde1\ud835\uddd4\ud835\udddf \ud835\udde8\ud835\udde6\ud835\uddd6\ud835\uddd7\ud835\udddc: A language which may be used to communicate with the patient about his or her health", "mustSupport": false, "mapping": [ { @@ -541,7 +530,6 @@ { "id": "Patient.communication.language", "path": "Patient.communication.language", - "short": "The language which can be used to communicate with the patient about his or her health", "mustSupport": true, "binding": { "strength": "extensible", diff --git a/input/resources/StructureDefinition-us-core-procedure.json b/input/resources/StructureDefinition-us-core-procedure.json new file mode 100644 index 00000000..b75a1a21 --- /dev/null +++ b/input/resources/StructureDefinition-us-core-procedure.json @@ -0,0 +1,169 @@ +{ + "resourceType": "StructureDefinition", + "id": "us-core-procedure", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-procedure", + "name": "USCoreProcedureProfile", + "title": "US Core Procedure Profile", + "status": "active", + "experimental": false, + "date": "2023-10-19", + "publisher": "HL7 US Realm Steering Committee", + "description": "The US Core Procedure Profile is based upon the core FHIR Procedure Resource and meets the U.S. Core Data for Interoperability (USCDI) v2 'Procedures' requirements. This profile sets minimum expectations for the Procedure resource to record, search, and fetch procedures associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.", + "fhirVersion": "4.0.1", + "kind": "resource", + "abstract": false, + "type": "Procedure", + "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Procedure", + "derivation": "constraint", + "differential": { + "element": [ + { + "id": "Procedure", + "path": "Procedure", + "definition": "\\-", + "comment": "\\-", + "constraint": [ + { + "key": "us-core-7", + "severity": "error", + "human": "Performed SHALL be present if the status is 'completed' or 'in-progress'", + "expression": "(status='completed' or status='in-progress') implies performed.exists()" + } + ], + "mustSupport": false, + "mapping": [ + { + "identity": "argonaut-dq-dstu2", + "map": "Procedure" + } + ] + }, + { + "id": "Procedure.basedOn", + "extension": [ + { + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", + "valueBoolean": true + } + ], + "path": "Procedure.basedOn", + "short": "\ud835\uddd4\ud835\uddd7\ud835\uddd7\ud835\udddc\ud835\udde7\ud835\udddc\ud835\udde2\ud835\udde1\ud835\uddd4\ud835\udddf \ud835\udde8\ud835\udde6\ud835\uddd6\ud835\uddd7\ud835\udddc: A request for this procedure", + "type": [ + { + "code": "Reference", + "targetProfile": [ + "http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan", + "http://hl7.org/fhir/us/core/StructureDefinition/us-core-servicerequest" + ] + } + ], + "mustSupport": false + }, + { + "id": "Procedure.status", + "path": "Procedure.status", + "condition": [ + "us-core-7" + ], + "mustSupport": true, + "binding": { + "strength": "required", + "valueSet": "http://hl7.org/fhir/ValueSet/event-status" + }, + "mapping": [ + { + "identity": "argonaut-dq-dstu2", + "map": "Procedure.status" + } + ] + }, + { + "id": "Procedure.code", + "path": "Procedure.code", + "min": 1, + "mustSupport": true, + "binding": { + "strength": "extensible", + "description": "Codes describing the type of Procedure", + "valueSet": "http://hl7.org/fhir/us/core/ValueSet/us-core-procedure-code" + }, + "mapping": [ + { + "identity": "argonaut-dq-dstu2", + "map": "Procedure.code" + } + ] + }, + { + "id": "Procedure.subject", + "path": "Procedure.subject", + "type": [ + { + "code": "Reference", + "targetProfile": [ + "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient" + ] + } + ], + "mustSupport": true, + "mapping": [ + { + "identity": "argonaut-dq-dstu2", + "map": "Procedure.subject" + } + ] + }, + { + "id": "Procedure.encounter", + "path": "Procedure.encounter", + "short": "Encounter associated with the procedure", + "type": [ + { + "code": "Reference", + "targetProfile": [ + "http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter" + ] + } + ], + "mustSupport": true + }, + { + "id": "Procedure.performed[x]", + "path": "Procedure.performed[x]", + "type": [ + { + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support", + "valueBoolean": true + } + ], + "code": "dateTime" + }, + { + "code": "Period" + }, + { + "code": "string" + }, + { + "code": "Age" + }, + { + "code": "Range" + } + ], + "condition": [ + "us-core-7" + ], + "mustSupport": true, + "mapping": [ + { + "identity": "argonaut-dq-dstu2", + "map": "Procedure.performed[x]" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/input/resources/StructureDefinition-us-core-specimen.json b/input/resources/StructureDefinition-us-core-specimen.json index e1ef0ade..2f372992 100644 --- a/input/resources/StructureDefinition-us-core-specimen.json +++ b/input/resources/StructureDefinition-us-core-specimen.json @@ -1,12 +1,12 @@ { "resourceType": "StructureDefinition", "id": "us-core-specimen", - "url": "http://www.fhir.org/guides/uscdi4-sandbox/StructureDefinition/us-core-specimen", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-specimen", "name": "USCoreSpecimenProfile", "title": "US Core Specimen Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "This profile sets minimum expectations for the Specimen resource to record, search, and fetch \"substances being sampled or tested. (e.g., nasopharyngeal swab, whole blood, serum, urine, wound swab)\" associated with a patient to promote interoperability and adoption through common implementation. It identifies which core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains the way the elements are used when using this profile. It provides the floor for standards development for specific use cases.", "fhirVersion": "4.0.1", "kind": "resource", @@ -29,12 +29,6 @@ "short": "Specimen identifier", "mustSupport": true }, - { - "id": "Specimen.accessionIdentifier", - "path": "Specimen.accessionIdentifier", - "short": "Specimen identifier assigned by the lab", - "mustSupport": true - }, { "id": "Specimen.type", "path": "Specimen.type", @@ -67,7 +61,7 @@ "id": "Specimen.collection.bodySite", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], @@ -83,7 +77,7 @@ "id": "Specimen.condition", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], diff --git a/input/resources/StructureDefinition-us-core-treatment-intervention-preference.json b/input/resources/StructureDefinition-us-core-treatment-intervention-preference.json index c4c0a464..53e9e91f 100644 --- a/input/resources/StructureDefinition-us-core-treatment-intervention-preference.json +++ b/input/resources/StructureDefinition-us-core-treatment-intervention-preference.json @@ -7,7 +7,7 @@ "title": "US Core Treatment Intervention Preference Profile", "status": "active", "experimental": false, - "date": "2023-10-12", + "date": "2023-10-19", "description": "To promote interoperability and adoption through common implementation, this profile sets minimum expectations for the Observation resource to record, search, and fetch for a patient's treatment intervention preferences. It is based on the US Core Simple Profile and identifies which *additional* core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains the way the elements are used when using the profile. It provides the floor for standards development for specific use cases.", "copyright": "Used by permission of HL7 International, all rights reserved Creative Commons License", "fhirVersion": "4.0.1", @@ -35,7 +35,7 @@ "coding": [ { "system": "http://hl7.org/fhir/us/core/CodeSystem/us-core-category", - "code": "intervention-preference" + "code": "treatment-intervention-preference" } ] }, @@ -54,7 +54,7 @@ "coding": [ { "system": "http://hl7.org/fhir/us/core/CodeSystem/us-core-category", - "code": "intervention-preference" + "code": "treatment-intervention-preference" } ] }, @@ -64,7 +64,7 @@ "id": "Observation.derivedFrom", "extension": [ { - "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-uscdi", + "url": "http://hl7.org/fhir/us/core/StructureDefinition/uscdi-requirement", "valueBoolean": true } ], diff --git a/input/resources/assessments-valuesets.xlsx b/input/resources/assessments-valuesets.xlsx deleted file mode 100644 index 1b14a0aad9793ab30e8e46709534615bde66c885..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6394 zcmZ`-1yoes_8+>tM__1>ly0O)Kw#(&>29SFknRRaX{13?5$P0$2I+5}w~pX>j= z_wj%4-gWL-cdhf=ckg|7ob!VyAt4h3004A=c%Y&Vnv}9x5d5tUKJekg!r2_+=Ir9m z^}@x4)63C8IZhl4ksDw3*O2SyW~okTGs!Xa+Il?SM_dUOGWF5{?ZTb$PSnoi@++9u ztn2S_Il?sKH|Ub^03>8lO)5sEPL%03#pd1s(VfK680a$v(~2qTGK}K4+sgO2aq@X? zxYSi%D%;=dTr8Qpi)m4Cez`d=zn|hiWI9g+%^Zo^8bkh}Zne&V*mt;^!w3KX!GEf2 z?(AmyTi@bDHKpz+`2Amoc71(qqv`U8qs>(@gOPfhU0NMGOK=7iJ~=z->b(sH%_ zIt=in#qo*se^)x@i|O#VT7LGGT7ii**oq5*j(QNL%TS=S){dv*{xJ;6EB5eO5`y81 z6{q`X1jzK_fXw`rHqbETp1$Ej2Mt6iP9zRO%4n!pvbvs!<6fU&-hjoAEyF#-^5Dc|?=3 zT!c$brAesA+g2+JzE%Rqa!5SI(Kkmm(>QhCco=rSPj+5OaGOd3x|F^@f4Cg!_p`yv>rjkNs6o(~~O5zbDa4>D}V$I!o`lrDnUY{I)kx~1U*R~Z1rTd?|I z?dSt5u@RRQ&Y9vm`ML`8AwTiuf$Q1s+wS8IH)zH3;}=?Oi-qaBBnau`D}3er?7cHy zsU62v*3~`xNT?A~>5@r+vK(|KHpeEP% zA*T9-edAs#6Ac8ndX@ai5~c$`MiO6+&LrXzBpD0B*N#Rf5PYEy6H?6FFL2dGzRNZ4 zR_NRf9=5t`2?(3!bzqOX1W%DEZsIYOK85k{p%rH8VSEnJw#zFI=aVR-=D|ccZl#vk z^6|nHOzUfdR0sPa{2HGZ?5g+~+#&p$(;r%V*m@?OKhZ2m?{D2X8EvpE?_|((Q_Vd; z%g4!LuH!Z`(63pO{CG|{uj9v^jYRJ8{`EJ8keWoM0N~im9_(HLWZyVg{SAntTrlcIcIu$xg!v7OzaRo6`5Dl=em@ zA;q)0uP!Ro!`PzMVo6j@p6{smZ!U~pZPFJ%(MXqR0ZO+cIeyGp6cNhJNNmNNR8Mg3 zzJm370oR4UA-DQx=s51ojgQ~#bgI=B9*U(=^+%i(&>rN6Wk9=S!o7V>GOSbkAbiA* z4wVe-^3A3#v&Zbjs}`ml@6g`Vs3D%HYngHz^dYe&6!<-lk=u3INjEgv7*E<*D6wpG zs(I{5;Yg=0++~|VWL+_|Y+2W-MFrI|IH_&76K^0YQ68a*?+eDa7-nOyb@2aBFLinl)50R(!lkj^VOK$6ulNAnZ40eMEJ;HTm zqy6cftn6wZx>wifo}H#AcP@iqye-iklQSck>VS)-jccc5(Pz)Iy?Y4|Jme7RQz=nN z$#^y)2T2L2Ld(9r?7^2BzF-n1a&$#_~l&x94au&z1s3E0kLs?_b{l*7UN zYr%L*yn#$y{_-6yr#n!U5L<0Z<1ONc?KMlmw+0EYF#?sQmo$IgZuP)MPVB%gVKzYjw z^el0<#y-w#dC8O9t&ps8kkrcO3FS$19C@*+Sf6}0sk4e~SSdF*rHW9r1hOKd6)-!a z+f;2deV#mPnOzn=BfU56oLgFeVxT@v%9fUq_BKJOe55+t*N%}Q$LgKs50o606$AC$ z22Sv|IX^rd&yk zSr@TVO0&Tdk=;$O6CgW@4KW*H@8Cv`V&Ih_9NP zpFog%OJG@OGo`X_DY_PYVd&7N{2jTsfvn*!;HGWC_QrAL>7%oefKLk-Z#o=2e0HdP zjmBju_#L_m>v7eyK=>rS(_g3ZQuePwYf!f}s3ISXr7rdJ;(8L*Ik;XXfJIcAxIP?< zbtGYkK_?SDR3b)aTYmda-&=D=%1(n?ZCbrOi)|%zDBZwtsPO)o_W)ihI0ACQsA}{4 z-mo;7*Dc*awr!C5iR`lvkJKo*TdAm>W7)oH^lW2lzRPDDePgHd?zbLn_*xt~XKp%Y z@7RVoICb9L50E5)J|fa~HKrV*KHGU_W#|=AaL&pbr0mx-3AwG_co8@x^2~9azFdF( z(*5`ba_bhYiOy}c&1h=3sS}cAV9Z`MDG=hs;{8R3Lzs1srcoiT%uYdK zfDt4)ILyI0sP>vccr!eSzUL)Re5-x}__3API(uZLxmd8^)NQ3k)n6D}IL0<0*FFH3 zpR2ir4}6!nodB|n!=J5T;~nNz=auV;iD`{$a!24Bpf4y<^$Nc(t9&z6B2iFYeE&q} zHTpChH3dgqCxFW1@#X#VXOajw242>$sWZS*pwE$=VNW$xs(4?^&Ws@-^=HKYHVs!& zvypPuGpeiDw4+3@7*=EuE)#^)wXyfx*+yAO6-FO1MC`0u3* z&l^@EuZE;1;x1UsgXif1Q`FiW^Yjtk&AiE?ZcqXCrt-Kz<&`s|^1_d}+7;g;DssQe zweO^F6i`j$ja6bp`P&N?BY=|39-WV@T!<> zh|jO&W_C7eoofbdgJm`(3=y&bQU|eTwp}CVz|l*ZmiH%d7@*2M(?-@6mhY$0mC*hd zE5^whSAVT#i>EOu+l29{K09e3w6_#s%e`S%Jij&yM~RDqPZcP@EuR2_A6G)(7VO>h zSH~RibUH{S6KWiC?=PoVf4)x=1IJ+PiRe}Z3l5#!(tSO3&1|0CB)%OJgD(uGAJ|w| zJ|0+vUGajTS1PG{!Ucx9vz>PQl7$vft^#q8wXd(T3KC`J!5Zcq0R1GJMZ|p5{$tt; zx=rbb_gc3^D1L9+Wo`=z+oe`m0}3OcTs#t>a6dTa7%%q91%+KA_!j@fI`fCh?4jou zt!tuUU-4Os!!oZL>%1TQLzlO7tEbJ}!W=A5NCL46h2|V6g{Z#y=blEki0fU?hS4!C4nGNy+RFG94nP5fGXs; zXfN`W3EgOz3CzwH!iJNmY=_In9LX4t1ZKq;)=t*{Ji(HJ9R=YLTA%uz}+W^{7RU*YOx#*@V;9qxXwn+kKp9BrW4k=YI6<2J$PFCb%Lp$dx9L+^0vpuNRH|pgxss3P zwJ0M)BL+XzS7Bk%s$lRo^yiVfV8FbKhI#6llx3gF zCPt3wvwz@fvXajDHYZmxDe%hRiO7hjnZP7$yTf64-&%cvibER&^7X!AwodzQoyd z4^!PH7Qa>M+1_5A!dwxBw$=(}6gl+xtuQaO>`-S8<7)}GgQVmnpR$4R)_aXi+#7lw zkDsPK)#4Kr6=kPNzR$v!-G)$U9=~Tw$3{M@RtdFBzh zpDFE@R&SUr*yv(P*y((fi|(=4uO6nGtwmoFG$rWX2>2w7fLcP?o_*t@WO27#X;2gm zn+><$RA{ohkbjf{g_P*blrL71vtjV4?$U6`TBruJq#Ue~-Xm_JyDR*xHKYCKV2m{{ z2TkXK3-`}2{rkNYu6baS1l+y6Lf6~D6P4_)>!~G-mTg=`rwNnK3Zj^>klZqGCwctZ zi!jy`Dk}{MbZYZ!`N%A&kg z{CV;zp1RIFSMs%a^VX}oG^e_wCH&QzG))SL6fz?INa&EHUSjz6HE3^s{iPhfR*OHj zqw5T*wcN5y8HQjc)(et*X+_Q`_F?yi&&sE|@^3DlK-a>NWl0dxMo_-pH=SZ3)jkn8 z{EF%`6m9+{t?fyH%^+3|8aj;DB?^%Oz(?jXCL_g+DNEC8I)$&D)+t%$z=}y6 zOefIu`GTq6D zCesqt1^9-4c4*dw9FZHJEXRW{p7OnWMXA2fs~Ho3{+_SO?iTS`6Jxw>Z=$re9cg?f z*p{YXzm9gUa#l3qeYo(C(p3LDD$I?(!Q<0m-wT7h0T5P!`H5}pMk-W`exiCJWf-+` zo1$^GtCGpNF=Pg$UT)9+Ldnv)Q{m%4z2)~#8!5L%(_uT!n|RV@YL8x=KwVx%y;v2; znMtb}2?Z`uLY6`eS^AS8mvs|q2O=tR@wPoWowte}%pURb9nOs%Z%V7>JO`!?8TozE z{5?P!q*VH1GW;HkW3WWA+`&kJn~7xZ?iwL-2^6$@DTxlOwAT>@(aq#a)oFV8KN9OC z-<+gYtT{^d@=ipHhOv}n3OUm1WKv|9&-qQ;Pa>cVRc=ZE(dMgx=?N~&q4g#&$bTB~ zgN&G9n06izaWu!cH?{5*>T#A3eZ!Tn&N2cy+@1)&uBt`g@G>5h&sV7bbap<6z{?uA zlW*V-2mW#PpTPQ0m;VW}L@4H)C)nX8#b*elFKfFYs-L{5e1i&(@tT_WC?=atV7MYK zwQthH5{_;pCT`>Ok4>4sqk+u?d)4x4rOOjX(5ED_QXv(k{cv@D*r06F)`IBgGDT4CoqKKLWKmF68%RRpp^FFW2cJ zsCTrhH312@fH0d-)$gkJ-dpbPXnHP>WO}Ap5KLYhwLdskT|~FikiboxMf$_b8OS(0 zd00Amm}q*tSh^eij;kt-VR&5O-=?zYq_nuK24)(w=HUOn{z&wLZ#+Mh^U38Vn#*hB|o2#&44?pE&KkJ8`k=ZIxk{Y zFGN)m9Lg=b)-de@4if0bz2s5~kGy>f15ulhm%o&L4*DLlz>cXk-Lk8+UfbE%;I`S6 z7&E;HHU>^M_phPOXwL?1ex|pMHOU9z+8wqO^<_xf{QwMngB!nQ@sghCvtoZtL9?0c zcj4klQA7=W3iAG&1>!HF`O?9xO!7o;Ba!M$aSB<&di3xxWES{#E2iH1XdmZ|++o|M z&uVxEpsH=c`l5f`q~f^m7ae~QzCwTDDL`}b+SniNMFd1*r2oxR!z1ReD-iD6|Ib=K zL_egB|6l=tK!o2R_;1ep|48JA@Q38;-|zwW=l=`U`cS~b!}Y%f1Yw~6CE&jvwI51( zxDWWZ6oevpxq_?l_paa}^kEJE8%j_3kBa^f_^>Aa4aA1i%