From cbecfe66ba77fc4f202240dab5ab1e61ae2c8278 Mon Sep 17 00:00:00 2001 From: Benny Tops Date: Tue, 19 Nov 2024 22:17:14 +0100 Subject: [PATCH 01/62] Removed myig.xml and menu.xml --- input/includes/menu.xml | 38 -------------- input/myig.xml | 114 ---------------------------------------- 2 files changed, 152 deletions(-) delete mode 100644 input/includes/menu.xml delete mode 100644 input/myig.xml diff --git a/input/includes/menu.xml b/input/includes/menu.xml deleted file mode 100644 index 01acc95d..00000000 --- a/input/includes/menu.xml +++ /dev/null @@ -1,38 +0,0 @@ - \ No newline at end of file diff --git a/input/myig.xml b/input/myig.xml deleted file mode 100644 index 7c110afd..00000000 --- a/input/myig.xml +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - <status value="draft"/> - <experimental value="false"/> - <publisher value="xxxYour Work Group"/> - <contact> - <telecom> - <!-- Or whatever URL and/or email address(es) are appropriate --> - <system value="url"/> - <value value="xxxhttp://hl7.org/Special/committees/[something]"/> - </telecom> - </contact> - <description value="xxxA brief description of what this IG is about "/> - <jurisdiction> - <!-- This will drive SNOMED release used --> - <coding> - <!-- This is the code for universal --> - <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/> - <code value="001"/> - <!-- Change to this if the IG is country-specific - <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/> - <code value="001"/> - --> - </coding> - </jurisdiction> - <packageId value="xxxexample.fhir.uv.myig"/> - <!-- This should be changed to 'not-open-source' or another license if appropriate for non-HL7-published content --> - <license value="CC0-1.0"/> - <!-- This is whatever FHIR version(s) the IG artifacts are targeting (not the version of this file, which should always be 'current release') --> - <fhirVersion value="4.0.1"/> - <definition> - <!-- You don't need to define any groupings. The IGPublisher will define them for you. You only need to do so if your IG is 'special' and it's - inappropriate to use the defaults. Feel free to provide feedback about the defaults... --> - <page> - <!-- The root will always be toc.html - the template will force it if you don't do it --> - <nameUrl value="toc.html"/> - <title value="Table of Contents"/> - <generation value="html"/> - <page> - <nameUrl value="index.html"/> - <title value="MyIG Home Page"/> - <generation value="html"/> - </page> - <page> - <nameUrl value="downloads.html"/> - <title value="Useful Downloads"/> - <generation value="html"/> - </page> - <!-- change history page --> - <page> - <nameUrl value="changes.html"/> - <title value="IG Change History"/> - <generation value="html"/> - </page> - </page> - <!-- copyright year is a mandatory parameter --> - <parameter> - <code value="copyrightyear"/> - <value value="2019+"/> - </parameter> - <!-- releaselabel should be the ballot status for HL7-published IGs. --> - <parameter> - <code value="releaselabel"/> - <value value="CI Build"/> - </parameter> - <parameter> - <code value="find-other-resources"/> - <value value="true"/> - </parameter> - <parameter> - <code value="path-resource"/> - <value value="input\history"/> - </parameter> - <parameter> - <code value="path-resource"/> - <value value="input\scenarios"/> - </parameter> - <parameter> - <code value="path-binary"/> - <value value="input\cql"/> - </parameter> - <parameter> - <code value="path-liquid"/> - <value value="templates\liquid"/> - </parameter> -<!-- Uncomment one or more of these if you want to limit which syntaxes are supported or want to disable the display of mappings - <parameter> - <code value="excludexml"/> - <value value="true"/> - </parameter> - <parameter> - <code value="excludejson"/> - <value value="true"/> - </parameter> - <parameter> - <code value="excludettl"/> - <value value="true"/> - </parameter> - <parameter> - <code value="excludemap"/> - <value value="true"/> - </parameter>--> - </definition> -</ImplementationGuide> From dd6ac3ff13ddc8f45f5d856bfac2c12f202251d1 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Tue, 19 Nov 2024 22:17:39 +0100 Subject: [PATCH 02/62] Add initial project structure --- .../{history.md => about-this-version.md} | 0 input/pagecontent/{usage.md => changes.md} | 0 input/pagecontent/copyrights.md | 12 ++ input/pagecontent/index.md | 112 +++--------------- .../{use-cases.md => recommendations.md} | 0 input/pagecontent/rw-overview.md | 0 input/pagecontent/terminology.md | 0 sushi-config.yaml | 49 +++++--- 8 files changed, 60 insertions(+), 113 deletions(-) rename input/pagecontent/{history.md => about-this-version.md} (100%) rename input/pagecontent/{usage.md => changes.md} (100%) create mode 100644 input/pagecontent/copyrights.md rename input/pagecontent/{use-cases.md => recommendations.md} (100%) create mode 100644 input/pagecontent/rw-overview.md create mode 100644 input/pagecontent/terminology.md diff --git a/input/pagecontent/history.md b/input/pagecontent/about-this-version.md similarity index 100% rename from input/pagecontent/history.md rename to input/pagecontent/about-this-version.md diff --git a/input/pagecontent/usage.md b/input/pagecontent/changes.md similarity index 100% rename from input/pagecontent/usage.md rename to input/pagecontent/changes.md diff --git a/input/pagecontent/copyrights.md b/input/pagecontent/copyrights.md new file mode 100644 index 00000000..4a618a34 --- /dev/null +++ b/input/pagecontent/copyrights.md @@ -0,0 +1,12 @@ +### Intellectual Property Considerations + +While this implementation guide and the underlying FHIR are licensed as public domain, this guide includes examples making use of terminologies such +as LOINC, SNOMED CT and others which have more restrictive licensing requirements. Implementers should make themselves familiar with licensing and +any other constraints of terminologies, questionnaires, and other components used as part of their implementation process. In some cases, +licensing requirements may limit the systems that data captured using certain questionnaires may be shared with. + +### Disclaimer + +The specification herewith documented is a demo working specification, and may not be used for any implementation purposes. +This draft is provided without warranty of completeness or consistency, and the official publication supersedes this draft. +No liability can be inferred from the use or misuse of this specification, or its consequences. \ No newline at end of file diff --git a/input/pagecontent/index.md b/input/pagecontent/index.md index 5c22b9c4..fa29c7b2 100644 --- a/input/pagecontent/index.md +++ b/input/pagecontent/index.md @@ -1,101 +1,19 @@ -# Introduction +### Introduction -# Purpose +### Purpose -# Scope +### Scope -# Audience +### Audience -# Intellectual Property Considerations - -While this implementation guide and the underlying FHIR are licensed as public domain, this guide includes examples making use of terminologies such -as LOINC, SNOMED CT and others which have more restrictive licensing requirements. Implementers should make themselves familiar with licensing and -any other constraints of terminologies, questionnaires, and other components used as part of their implementation process. In some cases, -licensing requirements may limit the systems that data captured using certain questionnaires may be shared with. - -# Disclaimer - -The specification herewith documented is a demo working specification, and may not be used for any implementation purposes. -This draft is provided without warranty of completeness or consistency, and the official publication supersedes this draft. -No liability can be inferred from the use or misuse of this specification, or its consequences. - - -# Use Cases and Scenarios -## Overview -## Common Scenarios -### Monitoring Chronic Conditions (e.g., Diabetes, Hypertension) -### Post-Surgical Recovery Monitoring -### COVID-19 or Infectious Disease Monitoring -### Behavioral Health Monitoring - -# Key Concepts and Definitions -## FHIR Basics for RPM -## Observation Resource Overview -## Profiles, Extensions, and Value Sets -## Terminologies and Coding Systems (e.g., LOINC, SNOMED CT) - -# RPM Observation Profiles -## General Structure of Observation Profiles -## Core RPM Observations -### Vital Signs (e.g., Heart Rate, Blood Pressure, Body Temperature) -### Physical Measurements (e.g., Weight, BMI) -### Activity Data (e.g., Steps, Calories Burned) -### Cardiovascular Monitoring (e.g., ECG, Pulse Oximetry) -### Respiratory Monitoring (e.g., Spirometry, Peak Flow) -### Behavioral and Mood Assessments -### Device-Specific Observations - -# Data Flow and Interoperability -## Data Collection and Transmission -## Data Transformation and Storage -## Interoperability with EHR Systems -## Handling Data from Multiple Sources -## Security and Privacy Considerations - -# FHIR Profiles and Extensions -## Profiles for RPM Observations -## Custom Extensions for Specialized Data -## Best Practices for Defining Extensions -## Example Profiles and Extensions - -# Implementation Guidance -## Conformance and Validation Requirements -## Handling Errors and Exceptions -## Workflow Integration Tips -## Best Practices for RPM Implementation - -# Sample Transactions and Bundles -## Patient Resource Example -## Observation Resource Example -## Bundled Transactions for RPM Scenarios -## Test Data Examples - -# Terminology Bindings -## Standardized Codes for RPM Observations -## Value Set Definitions -## Mapping Local Codes to Standard Codes - -# Security and Privacy -## Securing RPM Data Transfers -## Managing Patient Consent -## Access Control and Authentication -## Compliance with HIPAA, GDPR, or Other Regulations - -# Testing and Validation -## Tools for Validation (e.g., FHIR Validator) -## Test Scripts for RPM Observations -## Example Test Cases - -# Appendix -## Glossary of Terms -## References and Resources -## Change Log for the Guide -## FAQs - -# Acknowledgments -## Contributors -## Organizations and Stakeholders - -# Contact Information -## Feedback and Support -## IG Maintenance and Updates +### Topics to cover +- Use Cases and Scenarios +- Key Concepts and Definitions +- Interoperability +- FHIR Profiles and Terminology Bindings +- Sample Resources +- Security and Privacy +- Implementation Guidance + - Handling errors and exceptions + - Best practices + \ No newline at end of file diff --git a/input/pagecontent/use-cases.md b/input/pagecontent/recommendations.md similarity index 100% rename from input/pagecontent/use-cases.md rename to input/pagecontent/recommendations.md diff --git a/input/pagecontent/rw-overview.md b/input/pagecontent/rw-overview.md new file mode 100644 index 00000000..e69de29b diff --git a/input/pagecontent/terminology.md b/input/pagecontent/terminology.md new file mode 100644 index 00000000..e69de29b diff --git a/sushi-config.yaml b/sushi-config.yaml index dda55033..23acf688 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -6,7 +6,6 @@ # │ specific packageId is also provided in this file. │ # ╰────────────────────────────────────────────────────────────────────────────────────────────────╯ - id: hl7.fhir.be.patient-monitoring canonical: http://hl7belgium.org/fhir/patient-monitoring # url: http://example.com/fhir/example @@ -33,7 +32,7 @@ releaseLabel: STU1 # as IG.publisher. The contact details and/or additional publishers # will be translated into IG.contact values. publisher: - name: My Organization + name: My Organization url: http://example.com/committees email: my-group@example.com @@ -123,13 +122,23 @@ dependencies: # file name extension. Any subproperties that are valid filenames # with supported extensions (e.g., .md/.xml) will be treated as # sub-pages. -# pages: -# Home: index.html -# Use cases: use-cases.html -# Usage: usage.html -# Artifacts: artifacts.html -# Downloads: downloads.html -# History: history.html +pages: + index.md: + title: Patient Monitoring Outcome Home Page + about-this-version.md: + title: About this version + rw-overview.md: + title: Overview + recommendations.md: + title: General Recommendations + terminology.md: + title: Terminologies + downloads.md: + title: Useful Downloads + copyrights.md: + title: Acknowledgments, licenses and copyrights + changes.md: + title: IG Change History # The ImplementationGuide resource defines several other properties # not represented above. These properties can be used as-is and @@ -153,12 +162,21 @@ dependencies: # To provide a custom menu.xml file, do not include this property and # include a `menu.xml` file in input/includes. menu: - Home: index.html - Use cases: use-cases.html - Usage: usage.html - Artifacts: artifacts.html - Downloads: downloads.html - History: history.html + IG Home: index.html + Table of Contents: toc.html + Background: + About this version: about-this-version.html + Real World Cases: + Overview: rw-overview.html + Guidelines: + General Recommendations: recommendations.html + Terminologies: terminology.html + Artifact Index: artifacts.html + History: changes.html + Support: + FHIR Spec: https://build.fhir.org/branches/R4B/index.html + Downloads: downloads.html + Copyrights: copyrights.html # The parameters property represents IG.definition.parameter. Rather # than a list of code/value pairs (as in the ImplementationGuide @@ -174,7 +192,6 @@ menu: # If set to true, no IG related content will be generated. # The default value for this property is false. FSHOnly: false - # When set to true, the "short" and "definition" field on the root element of an Extension will # be set to the "Title" and "Description" of that Extension. Default is true. #applyExtensionMetadataToRoot: false From 4ad4f144d3f83386988520f49b565bd47a744eff Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Tue, 19 Nov 2024 22:19:37 +0100 Subject: [PATCH 03/62] Fix HL7 spec link --- sushi-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sushi-config.yaml b/sushi-config.yaml index 23acf688..dcfff4a2 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -174,7 +174,7 @@ menu: Artifact Index: artifacts.html History: changes.html Support: - FHIR Spec: https://build.fhir.org/branches/R4B/index.html + FHIR Spec: https://hl7.org/fhir/R4/ Downloads: downloads.html Copyrights: copyrights.html From 70382ccf873103d738daba8f3f257866f1f30910 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Tue, 19 Nov 2024 22:30:03 +0100 Subject: [PATCH 04/62] Implement DRY --- input/fsh/aliases.fsh | 3 +++ input/fsh/example-blood-pressure.fsh | 4 ---- input/fsh/example-body-temperature.fsh | 4 ---- input/fsh/example-body-weight.fsh | 4 ---- input/fsh/example-heart-rate.fsh | 4 ---- input/fsh/example-oxygen-saturation.fsh | 4 ---- input/fsh/example-respiratory-rate.fsh | 4 ---- 7 files changed, 3 insertions(+), 24 deletions(-) create mode 100644 input/fsh/aliases.fsh diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh new file mode 100644 index 00000000..655e2c2d --- /dev/null +++ b/input/fsh/aliases.fsh @@ -0,0 +1,3 @@ +Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category +Alias: $loinc = http://loinc.org +Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns diff --git a/input/fsh/example-blood-pressure.fsh b/input/fsh/example-blood-pressure.fsh index e3f220bd..92319538 100644 --- a/input/fsh/example-blood-pressure.fsh +++ b/input/fsh/example-blood-pressure.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: BloodPressureExample InstanceOf: $vitalsigns Usage: #example diff --git a/input/fsh/example-body-temperature.fsh b/input/fsh/example-body-temperature.fsh index af5f32ba..93660cf0 100644 --- a/input/fsh/example-body-temperature.fsh +++ b/input/fsh/example-body-temperature.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: BodyTemperatureExample InstanceOf: $vitalsigns Usage: #example diff --git a/input/fsh/example-body-weight.fsh b/input/fsh/example-body-weight.fsh index 26129b20..e66fe01c 100644 --- a/input/fsh/example-body-weight.fsh +++ b/input/fsh/example-body-weight.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: BodyWeightExample InstanceOf: $vitalsigns Usage: #example diff --git a/input/fsh/example-heart-rate.fsh b/input/fsh/example-heart-rate.fsh index 31759caa..4c550c69 100644 --- a/input/fsh/example-heart-rate.fsh +++ b/input/fsh/example-heart-rate.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: HeartRateExample InstanceOf: $vitalsigns Usage: #example diff --git a/input/fsh/example-oxygen-saturation.fsh b/input/fsh/example-oxygen-saturation.fsh index 8093a684..7ec61784 100644 --- a/input/fsh/example-oxygen-saturation.fsh +++ b/input/fsh/example-oxygen-saturation.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: OxygenSaturationExample InstanceOf: $vitalsigns Usage: #example diff --git a/input/fsh/example-respiratory-rate.fsh b/input/fsh/example-respiratory-rate.fsh index afad7dbc..b41d44a2 100644 --- a/input/fsh/example-respiratory-rate.fsh +++ b/input/fsh/example-respiratory-rate.fsh @@ -1,7 +1,3 @@ -Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category -Alias: $loinc = http://loinc.org -Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns - Instance: RespiratoryRateExample InstanceOf: $vitalsigns Usage: #example From b5472f756caf61e39aaeb85c2abca63c01be07ba Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Wed, 20 Nov 2024 08:35:33 +0100 Subject: [PATCH 05/62] Add page for telemonitoring prescription --- input/pagecontent/telemonitoring-prescription.md | 1 + sushi-config.yaml | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 input/pagecontent/telemonitoring-prescription.md diff --git a/input/pagecontent/telemonitoring-prescription.md b/input/pagecontent/telemonitoring-prescription.md new file mode 100644 index 00000000..cc0d40c6 --- /dev/null +++ b/input/pagecontent/telemonitoring-prescription.md @@ -0,0 +1 @@ +URL: https://www.telemonitoring-prescription.com/ diff --git a/sushi-config.yaml b/sushi-config.yaml index dcfff4a2..72af9138 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -139,6 +139,8 @@ pages: title: Acknowledgments, licenses and copyrights changes.md: title: IG Change History + telemonitoring-prescription.md: + title: Telemonitoring Prescription # The ImplementationGuide resource defines several other properties # not represented above. These properties can be used as-is and @@ -168,6 +170,7 @@ menu: About this version: about-this-version.html Real World Cases: Overview: rw-overview.html + Telemonitoring Prescription: telemonitoring-prescription.html Guidelines: General Recommendations: recommendations.html Terminologies: terminology.html From 9cb5d87440282eb8bef0d4c60dd2afc6f32b2d52 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Wed, 20 Nov 2024 10:38:51 +0100 Subject: [PATCH 06/62] Remove overview page --- input/pagecontent/overview.md | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 input/pagecontent/overview.md diff --git a/input/pagecontent/overview.md b/input/pagecontent/overview.md deleted file mode 100644 index eb1a7738..00000000 --- a/input/pagecontent/overview.md +++ /dev/null @@ -1,35 +0,0 @@ -### Specifications - -These are the core data requirements for common profiles: - -* **Patient** data for identity management / demographics: name and NISS and other identifiers; userID and userName, email address; dateOfbirth - -The monitoring can produce **measurements** or **reports**. - -* **Measurement** can contain - * metadata e.g. measurement attempts - * status - * timestamp - * reference measurements - * findings / interpretation - * notes - * context (e.g. symptoms, activity, others) - * **components** (i.e. sub-measurements) - -Measurement are associated with a Device (software and/or hardware) -* **Device** - * **software** - * app - * version - * **hardware** - -<br> -<br> -### Model overview - -<figure> - {% include monitoring-model.svg %} - <figcaption>Overall patient monitoring model</figcaption> -</figure> -<br clear="all"> - From 19ac666abbc27c3df59d125525270e42f9bd14ea Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Wed, 20 Nov 2024 10:39:23 +0100 Subject: [PATCH 07/62] Add preliminary observation table --- input/pagecontent/rw-overview.md | 288 +++++++++++++++++++++++++++++++ 1 file changed, 288 insertions(+) diff --git a/input/pagecontent/rw-overview.md b/input/pagecontent/rw-overview.md index e69de29b..f72bb662 100644 --- a/input/pagecontent/rw-overview.md +++ b/input/pagecontent/rw-overview.md @@ -0,0 +1,288 @@ +### Ongoing + +| LOINC | SNOMED CT | Short Display | +|------------|------------------|-------------------| +| | 29463-7 | Body weight | +| | 8310-5 | Body temperature | +| | 8480-6 | BP sys | +| | 8462-4 | BP dia | +| | 59408-5 | Oxygen saturation | +| | 8867-4 | Heart rate | + +### TO-DO + +| Observations Patient Monitoring | | | | | | | | | | | | +|---------------------------------|------------------------------|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|----------------------------------|----------------------------------|------------------|--------------|----------------|-----------------|--------------| +| Snomed CT Code | LOINC code | Short Display | Long Description (EN) | Status | translation NL available (nl-BE) | translation FR available (fr-BE) | Fibricheck (Y/N) | MoveUp (Y/N) | Remecare (Y/N) | Byteflies (Y/N) | Abbott (Y/N) | +| | 29463-7 | Weight | Body weight | | No | Yes | | Y | Y | Y | | +| | 8310-5 | Body temperature | Body temperature | | No | Yes | | Y | Y | Y | | +| | 39156-5 | BMI | Body mass index (BMI) [Ratio] | | No | No | | Y | Y | | | +| | 8480-6 | BP sys | Systolic blood pressure | | No | No | | Y | Y | Y | | +| | 8462-4 | BP dias | Diastolic blood pressure | | No | No | | Y | Y | Y | | +| | 8867-4 | Heart rate | Heart rate | | No | No | | Y | Y | Y | | +| | 64008-6 | Pain severity | Pain severity [Score] [PhenX] | | No | No | | Y | Y | | | +| | ? | ? | Weight gain (%) | | | | | | Y | | | +| | 59417-6 | SaO2 Resting % BldA PulseOx | Oxygen saturation in Arterial blood by Pulse oximetry --resting | | No | Yes | | | Y | N, 59408-5 | | +| | 76528-9 | Breaths.spontaneous | Breath rate spontaneous | | No | No | | Y | Y | Y | | +| | ? | | Anxiety score (Hospital Anxiety and Depression Scale) | | | | | Y | Y | | | +| | ? | | Depression score (Hospital Anxiety and Depression Scale) | | | | | Y | Y | | | +| | ? | | Breath rate resting | | | | | Y | Y | | | +| | ? | | Body weight difference (between this and last measure) | | | | | | Y | | | +| | 41950-7 | # steps 24h nRate Measured | Number of steps in 24 hour Measured | | No | No | | Y | Y | | | +| | ? | | Heart rate before product administration | | | | | | Y | | | +| | ? | | Heart rate during product administration | | | | | | Y | | | +| | ? | | Heart rate after product administration | | | | | | Y | | | +| | ? | | Systolic blood pressure before product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | ? | | Systolic blood pressure during product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | ? | | Systolic blood pressure after product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | ? | | Diastolic blood pressure before product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | ? | | Diastolic blood pressure during product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | ? | | Diastolic blood pressure after product administration (exists for transfusion and anesthesia) | | | | | | Y | | | +| | 8460-8 | BP sys--stand | Systolic blood pressure--standing | | No | No | | | Y | | | +| | 8461-6 | BP sys--sup | Systolic blood pressure--supine | | No | No | | | Y | | | +| | 8454-1 | BP dias--stand | Diastolic blood pressure--standing | | No | No | | | Y | | | +| | 8455-8 | BP dias--sup | Diastolic blood pressure--supine | | No | No | | | Y | | | +| | ? | | Body temperature before product administration | | | | | | Y | | | +| | ? | | Body temperature during product administration | | | | | | Y | | | +| | ? | | Body temperature after product administration | | | | | | Y | | | +| | ? | | Morisky scale | | | | | | Y | | | +| | 67741-9 | Smoking tobacco | Smoking tobacco use duration | | No | No | | | Y | | | +| | ? | | Amount of cigarettes smoked (packs) | | | | | | Y | | | +| | ? | | Gezondheidsbeleving score controle (Bloem) | | | | | | Y | | | +| | ? | | Gezondheidsbeleving score acceptatie (Bloem) | | | | | | Y | | | +| | 61876-9 | / | How often did you have physical energy in past 7 days [PROMIS] | | No | No | | | Y | | | +| | 62339-7 | / | I felt sad in the past 7 days [PROMIS.PEDS] | | No | No | | | Y | | | +| | 70628-3 | / | I have joint pain or muscle cramps in the past 7 days [FACIT] | | No | No | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, heb ik moeite gehad met persoonlijke relaties en/of moeite in de omgang met anderen. | | | | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, was ik niet tevreden over hoe mijn lichaam of sommige delen ervan eruit zagen. | | | | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, heb ik moeite gehad met school of studieactiviteiten, en/of moeite met werk of huishoudelijke taken. | | | | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, heb ik moeite gehad met de mentale en/of lichamelijke aspecten van seks. | | | | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, heb ik moeite gehad met het slapen, zoals het in slaap vallen, vaak wakker worden ’s nachts of te vroeg wakker worden ’s ochtends. | | | | | | Y | | | +| | ? | | Gedurende de laatste week, door mijn ziekte van Crohn of colitis ulcerosa, heb ik moeite gehad om mijn stoelgang te coördineren en controleren, inclusief het (tijdig) vinden van een geschikte plaats voor ontlasting en mijzelf nadien proper te maken. | | | | | | Y | | | +| | 45720-0 | | Stomach pain [Minimum Data Set] | | No | No | | | Y | | | +| | ? | | Procentuele gewichtsafname/toename ten opzichte van referentiegewicht/alarmgewicht | | | | | | Y | | | +| | ? | | Compliance registratie lichaamsgewicht afgelopen maand | | | | | | Y | | | +| | 44261-6 | / | Patient Health Questionnaire 9 item (PHQ-9) total score [Reported] | | No | No | | | Y | | | +| | ? | | Quality of Life questionnaire EQ-5D | | | | | Y | Y | | | +| | 64 different parts and codes | | UPDRS scales | | | | | | Y | | | +| | 72106-8 | / | Total score [MMSE] | | No | No | | | Y | | | +| | 10230-1 | | Left ventricular Ejection fraction | | | | | | | | | +| | | | | | | | | | | | | +| | | ISAR | Identification of Senior At Risk Score | | | | | Y | | | | +| | | BAROS | Bariatric analysis and reporting outcome system Subtotal weight loss | | | | | Y | | | | +| | | BAROS | Bariatric analysis and reporting outcome system Subtotal medical conditions | | | | | Y | | | | +| | | BAROS | Bariatric analysis and reporting outcome system Subtotal QoL | | | | | Y | | | | +| | | BAROS | Bariatric analysis and reporting outcome system Subtotal Complications | | | | | Y | | | | +| | | BAROS | Bariatric analysis and reporting outcome system Total score | | | | | Y | | | | +| | | FAOS | Foot and Ankle Outcome Score Symptoms + Stiffness score | | | | | Y | | | | +| | | FAOS | Foot and Ankle Outcome Score Pain score | | | | | Y | | | | +| | | FAOS | Foot and Ankle Outcome Score Function, daily living score | | | | | Y | | | | +| | | FAOS | Foot and Ankle Outcome Score Function, sports and recreational activities score | | | | | Y | | | | +| | | FAOS | Foot and Ankle Outcome Score Quality of life score | | | | | Y | | | | +| | | PFP | Self-reported Physical Frailty Phenotyping  Total score | | | | | Y | | | | +| | | OBESI-Q | kwaliteit van leven bij patiënten met morbide obesitas die een gewichtsverminderende behandeling ondergaan Totaal Eetgedrag | | | | | Y | | | | +| | | OBESI-Q | kwaliteit van leven bij patiënten met morbide obesitas die een gewichtsverminderende behandeling ondergaan Totaal zelfbeeld | | | | | Y | | | | +| | | CAIT | Cumberland Ankle Instability Tool Total score | | | | | Y | | | | +| | | WRMS | Weight-Related Symptom Measure Total score | | | | | Y | | | | +| | | WRMS | Weight-Related Symptom Measure D score (diabetes) | | | | | Y | | | | +| | | CAT | COPD Assessment Test  CAT score | | | | | Y | | | | +| | | SRS-22 | Scoliosis Research Society-22 Function score | | | | | Y | | | | +| | | SRS-22 | Scoliosis Research Society-22 Pain score | | | | | Y | | | | +| | | SRS-22 | Scoliosis Research Society-22 Self-Image score | | | | | Y | | | | +| | | SRS-22 | Scoliosis Research Society-22 Mental health score | | | | | Y | | | | +| | | SRS-22 | Scoliosis Research Society-22 Satisfaction score | | | | | Y | | | | +| | | SBST | STarT Back Screening Tool Total score | | | | | Y | | | | +| | | SBST | STarT Back Screening Tool Level of risk score | | | | | Y | | | | +| | 82323-7 | HOOS JR | Hip Disability and Osteoarthritis Outcome Score, Joint Replacement Total score | | | | | Y | | | | +| | | MoveUP Index Knee | MoveUP Index Knee Assessment Score Total score | | | | | Y | | | | +| | | SKV | Subjective Knee Value SKV score | | | | | Y | | | | +| | | OES | Oxford Elbow Score Total score | | | | | Y | | | | +| | | FJS | Forgotten Joint Score - Knee Total score | | | | | Y | | | | +| | | QoR | Quality of recovery Score  Total score | | | | | Y | | | | +| | | ? | COPD: Diagnosis classification Total score | | | | | Y | | | | +| | | OMPS-Q | Örebro Musculoskeletal Pain Screening Questionnaire (short) Total score | | | | | Y | | | | +| | | NVE | Nederlandse Vragenlijst voor Eetgedrag Emotional eating score | | | | | Y | | | | +| | | NVE | Nederlandse Vragenlijst voor Eetgedrag Eating with diffuse emotions score | | | | | Y | | | | +| | | NVE | Nederlandse Vragenlijst voor Eetgedrag Eating with clearly defined emotions score | | | | | Y | | | | +| | | NVE | Nederlandse Vragenlijst voor Eetgedrag External eating score | | | | | Y | | | | +| | | NVE | Nederlandse Vragenlijst voor Eetgedrag Restrained eating score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R ANG score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R AGO score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R DEP score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R SOM score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R IN score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R SEN score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R HOS score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R SLA score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R OVER score | | | | | Y | | | | +| | | SCL-90-R | Symptom Checklist-90-R PSNEUR score | | | | | Y | | | | +| | | BRIEF | BRIEF: Health Literacy Screening Tool Total score | | | | | Y | | | | +| | | AUDIT | Alcohol Use Disorder Identification Test Total score | | | | | Y | | | | +| | | POSAS | The Patient and Observer Scar Assessment Scale Total score | | | | | Y | | | | +| | | PRWHE | Patient Rated Wrist/Hand Evaluation Pain score | | | | | Y | | | | +| | | PRWHE | Patient Rated Wrist/Hand Evaluation Function score | | | | | Y | | | | +| | | PRWHE | Patient Rated Wrist/Hand Evaluation Total score | | | | | Y | | | | +| | | ESP | ESP Eating disorder Screen for Primary care Total score | | | | | Y | | | | +| | | SVH | Subjective Hip Value Total score | | | | | Y | | | | +| | | AOFAS | American Orthopaedic Foot and Ankle Society (AOFAS) Ankle-Hindfoot Scale Total score | | | | | Y | | | | +| | 72101-9 | KOOS | Knee Injury and Osteoarthritis Outcome Score  Symptoms score | | | | | Y | | | | +| | 72102-7 | KOOS | Knee Injury and Osteoarthritis Outcome Score  Pain score | | | | | Y | | | | +| | 72100-1 | KOOS | Knee Injury and Osteoarthritis Outcome Score  ADL score | | | | | Y | | | | +| | 72098-7 | KOOS | Knee Injury and Osteoarthritis Outcome Score  QoL score | | | | | Y | | | | +| | | HADS | Hospital Anxiety and Depression Scale (HADS) Anxiety score | | | | | Y | | | | +| | | HADS | Hospital Anxiety and Depression Scale (HADS) Depression score | | | | | Y | | | | +| | | Quick DASH | Quick Disabilities of the Arm, Shoulder and Hand Total score | | | | | Y | | | | +| | | CSI | Central sensitisation inventory (CSI) Total score | | | | | Y | | | | +| | | HHS | Harris Hip Score Pain score | | | | | Y | | | | +| | | HHS | Harris Hip Score Function score | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Global health status/QoL (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Functional scale: physical functioning (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Functional scale: role functioning (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Functional scale: emotional functioning (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Functional scale: cognitive functioning (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Functional scale: social functioning (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: fatigue (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: nausea & vomiting (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: pain (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: dyspnoea (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: insomnia (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: appetite loss (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: constipation (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: diarrhoea (Score) | | | | | Y | | | | +| | | EORTC QLQ C30 | EORTC Core Quality of Life questionnaire Symptom scales/items: financial difficulties (Score) | | | | | Y | | | | +| | | OKS | Oxford Knee Score Total score | | | | | Y | | | | +| | | FTS | Food Tolerance Score Satisfaction about eating score | | | | | Y | | | | +| | | FTS | Food Tolerance Score Tolerance score | | | | | Y | | | | +| | | CCI | Charlson comorbidity index score Total score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Physical functioning score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Role functioning/physical score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Role functioning/emotional score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Energy/fatigue score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Emotional well-being score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Social functioning score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Pain SF-36 score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey General health score | | | | | Y | | | | +| | | SF-36 | Short Form Health Survey Total score score | | | | | Y | | | | +| | | KOOS-12 | Knee injury and Osteoarthritis Outcome Score-12 Pain score | | | | | Y | | | | +| | | KOOS-12 | Knee injury and Osteoarthritis Outcome Score-12 Function score | | | | | Y | | | | +| | | KOOS-12 | Knee injury and Osteoarthritis Outcome Score-12 QoL score | | | | | Y | | | | +| | | GAD-7 | Generalized Anxiety Disorder 7-item Total score | | | | | Y | | | | +| | | FJS-12 | Forgotten Joint Score-12 Total score | | | | | Y | | | | +| | | KBILD | King’s Brief Interstitial Lung Disease Questionnaire Activity score | | | | | Y | | | | +| | | KBILD | King’s Brief Interstitial Lung Disease Questionnaire Impact score | | | | | Y | | | | +| | | KBILD | King’s Brief Interstitial Lung Disease Questionnaire Symptome score | | | | | Y | | | | +| | | KBILD | King’s Brief Interstitial Lung Disease Questionnaire Total score | | | | | Y | | | | +| | | OHS | Oxford Hip Score Total score | | | | | Y | | | | +| | | SGRQ-C | Saint- George's Respiratory Questionnaire COPD Symptoms score | | | | | Y | | | | +| | | SGRQ-C | Saint- George's Respiratory Questionnaire COPD Activity score | | | | | Y | | | | +| | | SGRQ-C | Saint- George's Respiratory Questionnaire COPD Impacts score | | | | | Y | | | | +| | | SGRQ-C | Saint- George's Respiratory Questionnaire COPD Total score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst ACT (Actief aanpakken, confronteren) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst PAL (Palliatieve reactie) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst VER (Vermijden, afwachten) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst SOC (Sociale steun zoeken) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst PAS (Passief reactiepatroon) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst EXP (Expressie van emoties/boosheid) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst GER (Geruststellende en troostende gedachten) score | | | | | Y | | | | +| | | UCL | Utrechtse Coping Lijst Total score | | | | | Y | | | | +| | | ASES | American Shoulder and Elbow Surgeons score Pain score | | | | | Y | | | | +| | | ASES | American Shoulder and Elbow Surgeons score Function score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension Mobility score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension Self-care score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension Usual activities score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension Pain / discomfort score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension Anxiety / depression score | | | | | Y | | | | +| | | EQ-5D | EuroQol-5 Dimension VAS score | | | | | Y | | | | +| | | KSS | Knee Society Score Symptoms Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Patient Satisfaction Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Patient Expectations Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Functional Activities: Walking and standing Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Functional Activities: Standard activities (ADL) Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Functional Activities: Advanced activities Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Functional Activities: Discretionary activities (Top 3 activities) Subscore | | | | | Y | | | | +| | | KSS | Knee Society Score Functional activities: Total subscore | | | | | Y | | | | +| | | GARS-4 | Groningen Activiteiten Restrictie Schaal Total score | | | | | Y | | | | +| | | EORTC QLQ-MY20 | European Organisation for the Research and Treatment of Cancer Myeloma Module Quality of Life Questionnaire Symptom scales: disease (Score) | | | | | Y | | | | +| | | EORTC QLQ-MY20 | European Organisation for the Research and Treatment of Cancer Myeloma Module Quality of Life Questionnaire Symptom scales: side effects (Score) | | | | | Y | | | | +| | | EORTC QLQ-MY20 | European Organisation for the Research and Treatment of Cancer Myeloma Module Quality of Life Questionnaire Functional scales/items: body image (Score) | | | | | Y | | | | +| | | EORTC QLQ-MY20 | European Organisation for the Research and Treatment of Cancer Myeloma Module Quality of Life Questionnaire Functional scales/items: future perspective (Score) | | | | | Y | | | | +| | | EORTC QLQ-MY20 | European Organisation for the Research and Treatment of Cancer Myeloma Module Quality of Life Questionnaire Symptom scales: side effects MINUS HAIRLOSS (Score) | | | | | Y | | | | +| | | CCQ | Clinical COPD Questionnaire Total score | | | | | Y | | | | +| | | CCQ | Clinical COPD Questionnaire Symptom score | | | | | Y | | | | +| | | CCQ | Clinical COPD Questionnaire Functional Status score | | | | | Y | | | | +| | | CCQ | Clinical COPD Questionnaire Mental Status score | | | | | Y | | | | +| | | ACT | Asthma Control Test Total score | | | | | Y | | | | +| | | COMI | Core Outcome Measure Index Pain score | | | | | Y | | | | +| | | COMI | Core Outcome Measure Index Disability score | | | | | Y | | | | +| | | COMI | Core Outcome Measure Index Total score | | | | | Y | | | | +| | | SSTS | Simple Shoulder Test Score Total score | | | | | Y | | | | +| | | SEMCD | Self-Efficacy for Managing Chronic Disease 6-item Scale Total score | | | | | Y | | | | +| | | TSK | Tampa Scale for kinesiofobia  Total score | | | | | Y | | | | +| | | WPAI:GH | Work Productivity and Activity Impairment Questionnaire: General Health V2.0 (WPAI:GH) Percent work time missed due to health | | | | | Y | | | | +| | | WPAI:GH | Work Productivity and Activity Impairment Questionnaire: General Health V2.0 (WPAI:GH) Percent impairment while working due to health | | | | | Y | | | | +| | | WPAI:GH | Work Productivity and Activity Impairment Questionnaire: General Health V2.0 (WPAI:GH) Percent overall work impairment due to health | | | | | Y | | | | +| | | WPAI:GH | Work Productivity and Activity Impairment Questionnaire: General Health V2.0 (WPAI:GH) Percent activity impairment due to health | | | | | Y | | | | +| | | OWLQoL | Obesity and Weight-Loss Quality-of-Life Total score | | | | | Y | | | | +| | | mFI-5 | Modified frailty index - 5 items Total score | | | | | Y | | | | +| | | FSS | Fatigue Severity Scale Total score | | | | | Y | | | | +| | | AKPS | Kujala Anterior Knee Pain Scale Total score | | | | | Y | | | | +| | | ODI | Oswestry Disabilty Index Total score | | | | | Y | | | | +| | | NDI | Neck disability index  Total score | | | | | Y | | | | +| | | PRTEE | PATIENT-RATED TENNIS ELBOW EVALUATION Pain score | | | | | Y | | | | +| | | PRTEE | PATIENT-RATED TENNIS ELBOW EVALUATION Specific Activities score | | | | | Y | | | | +| | | PRTEE | PATIENT-RATED TENNIS ELBOW EVALUATION Usual Activities score | | | | | Y | | | | +| | | PRTEE | PATIENT-RATED TENNIS ELBOW EVALUATION Function Subscale score | | | | | Y | | | | +| | | PRTEE | PATIENT-RATED TENNIS ELBOW EVALUATION Total Score | | | | | Y | | | | +| | | HADS | Hospital Anxiety and Depression Scale ANGST score | | | | | Y | | | | +| | | HADS | Hospital Anxiety and Depression Scale DEPRESSIE score | | | | | Y | | | | +| | | FAAM | Foot and Ankle Ability Measure Total score | | | | | Y | | | | +| | | FAAM | Foot and Ankle Ability Measure Everyday Activities score | | | | | Y | | | | +| | | FAAM | Foot and Ankle Ability Measure Sporting activities score | | | | | Y | | | | +| | | MoveUP Index Hip | MoveUP Index Hip Assessment score moveUP index Hip score | | | | | Y | | | | +| | | PCS | Pain Catastrophizing Scale Ruminatie score | | | | | Y | | | | +| | | PCS | Pain Catastrophizing Scale Magnificatie score | | | | | Y | | | | +| | | PCS | Pain Catastrophizing Scale Hulpeloosheid score | | | | | Y | | | | +| | | PCS | Pain Catastrophizing Scale Total score | | | | | Y | | | | +| | | BDI | Beck Depression Inventory Total score | | | | | Y | | | | +| | | PHQ-9 | Patient Health Questionnaire-9 Total score | | | | | Y | | | | +| | | FES-I | Falls Efficacy Scale Total score | | | | | Y | | | | +| | | IKDC | nternational Knee Documentation Committee Score Total score | | | | | Y | | | | +| | | OSS | Oxford Shoulder Score Total score | | | | | Y | | | | +| | | CMS | Constant-Murley Shoulder Outcome Score Total score | | | | | Y | | | | +| | | mHHS | Modified Harris Hip Score Total score | | | | | Y | | | | +| | | PRAISE | Pulmonary Rehabilitation Adapted Index of Self-Efficacy Total score | | | | | Y | | | | +| | | FABQ | Fear Avoidence Belief Questionnaire Physical activity score | | | | | Y | | | | +| | | FABQ | Fear Avoidence Belief Questionnaire Work score | | | | | Y | | | | +| | | FABQ | Fear Avoidence Belief Questionnaire Total score | | | | | Y | | | | +| | | Oswestry LBPDQ | Oswestry Low Back Pain Disability Questionnaire (NL-EN-FR-ES) Total score | | | | | Y | | | | +| | 82332-8 | KOOS-JR | Knee injury and Osteoarthritis Outcome Score for Joint Replacement  Total score | | | | | Y | | | | +| | | UCOPD | Understanding COPD Questionnaire Total score | | | | | Y | | | | +| | | UCOPD | Understanding COPD Questionnaire About COPD score | | | | | Y | | | | +| | | UCOPD | Understanding COPD Questionnaire Managing Symptoms of COPD score | | | | | Y | | | | +| | | UCOPD | Understanding COPD Questionnaire Accessing Help and Support score | | | | | Y | | | | +| | | WORQ | Work Osteoarthritis joint-Replacement Questionnaire Total score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Overal LEFT Hand Function score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Overal RIGHT Hand Function score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Overal Hand Function score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living LEFT Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living RIGHT Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living BOTH Hands score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living Total LEFT Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Work score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Pain score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Aesthetics LEFT Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Aesthetics Right Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Aesthetics Overal score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Satisfaction Left Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Satisfaction Right Hand score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Satisfaction Overal score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living Total RIGHT score | | | | | Y | | | | +| | | MHQ | Michigan Hand Outcomes Questionnaire Activities of Daily Living Total Both Hands score | | | | | Y | | | | +| | | DLQI | Dermatology Life Quality Index Total score | | | | | Y | | | | +| | | BSHS-B | Burn Specific Health Scale - Brief Total score | | | | | Y | | | | +| | 72096-1 | HOOS | Hip disability and Osteoarthritis Outcome Score Symptoms Subscore | | | | | Y | | | | +| | 72097-9 | HOOS | Hip disability and Osteoarthritis Outcome Score Pain Subscore | | | | | Y | | | | +| | 72095-3 | HOOS | Hip disability and Osteoarthritis Outcome Score ADL Subscore | | | | | Y | | | | +| | 72093-8 | HOOS | Hip disability and Osteoarthritis Outcome Score QOL Subscore | | | | | Y | | | | +| | 88785-1 | HOOS | Hip disability and Osteoarthritis Outcome Score Stifness score | | | | | Y | | | | +| | 72094-6 | HOOS | Hip disability and Osteoarthritis Outcome Score Physical function score | | | | | Y | | | | \ No newline at end of file From 2018aa65bfe41a3c82180d33dda5ab42dd64e71e Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Wed, 20 Nov 2024 10:39:43 +0100 Subject: [PATCH 08/62] Add TM notes --- .../telemonitoring-prescription.md | 187 ++++++++++++++++++ 1 file changed, 187 insertions(+) diff --git a/input/pagecontent/telemonitoring-prescription.md b/input/pagecontent/telemonitoring-prescription.md index cc0d40c6..b4ab80bc 100644 --- a/input/pagecontent/telemonitoring-prescription.md +++ b/input/pagecontent/telemonitoring-prescription.md @@ -1 +1,188 @@ URL: https://www.telemonitoring-prescription.com/ + +### **Heart Failure Care Pathway: Telemonitoring Integration** + +DRAFT : 2024-10-01 + + +#### **Objective:** + +This document describes the technical requirements and expectations for integrating data from the Heart Failure care pathway into an Electronic Patient Record (EPD), in line with the Telemonitoring guidelines and the principles of FAIR data (Findable, Accessible, Interoperable, Reusable). The integration includes both PDF generation and FHIR compliance to ensure a smooth and consistent data flow between systems. + +*** + + +### **1. Heart Failure Care Pathway: Overview** + +**Duration:** 4 years\ +**Central Care Facility:** Specialized heart failure center with a telemonitoring team.\ +**Minimal Capacity:** 0.5 FTE heart failure nurse per 100 patients.\ +**Educational Material:** Available for self-management and adherence.\ +**Accessibility:** Reachable during office hours. + +**Patient Criteria:** + +- NYHA classification II or III (85% of all new patients, \~21,000 per year) + +- Signed informed consent + +- At least 1 physical consultation 2 years before the start of telemonitoring + +- Ability to sustainably implement telemonitoring + +*** + + +### ******** + +### **2. Process and Workflow Description** + +#### **Start-Up:** + +- Screening and risk assessment performed by the heart failure center. + +- Informed consent is collected and securely stored. + +- General practitioner or home nurse is involved in the workflow. + +- Parameters monitored: Heart Rate (HR), Blood Pressure (BP), Weight (BW). + + - Frequency: Daily, once per day, 7 days a week, 6 months. + + +#### **Data Collection:** + +- Data is automatically collected via connected devices or manually entered into the system. + +- Technology is CE certified, with end-to-end encryption and GDPR compliant. + + +#### **Alarm Management:** + +- Heart failure alarm thresholds are predefined on the digital platform. + +- The heart failure team checks the collected data daily during working hours. + +- In case of alarms, the general practitioner or home nurse is informed within 5 working days (or within 48 hours if urgent). + +*** + + +### ******** + +### **3. Integration Modules for EPD** + +**Outcome Module - PDF** + +- **Daily Updates:** The Telemonitoring Overview is updated daily per measurement. + +- **Content:** Overview of the questions and vital parameters. + +- **File Size:** ±100KB per PDF, max : 10MB per PDF + +**Example :**  + +****![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXdWX17TQScQ0aE34tYE2ipCfU6HXdQc754lAuq648GnvxsJ01Nrq1NCb9to3Djy9fkTGLkBUNqxgFxpQkpveeBijcWx5E9zIFxDNi_wcWdB6wAEl3je2X3dmc-rVH6bsNUWSQKZznJh_giv5IBM0qWSY8VJ?key=6Kaq7lqtajICNiFjKTzGKQ)**** + + +#### ******** + +#### **Outcome Module - FHIR Integratie** + +**Vital Signs:** + +- **Frequency:** Maximum of 5 updates per day, on average 1 update per day (per measurement). + +- **LOINC codes for vital parameters:** + + - **Heart Rate (HR):** LOINC 8867-4 + + - **Blood Pressure (BP):** LOINC 8480-6 / 8463-4 + + - **Weight (BW):** LOINC 29463-7 + +These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. + +**Example :**  + + { +   resourceType: "Observation", +   id: "tm-xxxx-xxx-xxx", +   meta: {profile:["http://hl7.org/fhir/StructureDefinition/vitalsigns"]}, +   text: { +    status: "generated", +    div: "<div xmlns="http://www.w3.org/1999/xhtml"><p>Heart Rate Measurement</p></div>" +   }, +   status: "final", +   category: [{ +      coding:[{ +      system: "http://terminology.hl7.org/CodeSystem/observation-category", +      code: "vital-signs", +      display: "Vital Signs" +      }] +   }], +   code:{ +     coding: [{ +       system: "http://loinc.org", +       code: "8867-4", +       display: "Heart rate" +    }]}, +   subject:{reference: "Patient/XXX-XXX"}, +   effectiveDateTime: "2024-10-07T10:27:18+00:00", + + + + +   component: [{ +     code: { +      coding: [{ +        system: "http://loinc.org", +        code: "8867-4", +        display: "Heart rate"} +     }, +     valueQuantity: { +       value: 74, +       unit: "beats/min", +       system: "http://unitsofmeasure.org", +       code: "/min" +     }}], +   device:{reference: "Device/Byteflies Vital Signs"} + } + +**Questionnaires:** + +- **Frequency: TBC** + +- **LOINC codes for questionnaires: TBC** + +* + + +#### **Dashboard Module** + +- **N/A** (For this care pathway, no direct dashboard integration is foreseen). + +*** + + +### ******** + +### **4. Expectations for EPD Integration** + +For each integration, EPDs must be able to: + +- Correctly process **PDF files** and make them visible to healthcare providers within the EPD and Health Hubs. + +- Optionally: Interpret **FHIR data** according to the specified LOINC codes and link the data to the appropriate patient records (in this case, the PDF does not need to be linked). + +The Telemonitoring Coördination application must foresee :  + +- To support automated workflows that **trigger alerts** when thresholds are exceeded. + +\ + + +Optie 1 : EPD + Carepath Provider + Telemetry Provider + +Optie 2 : EPD + Telemetry Provider + From 42b0299787abd8b3208d83bcdf4db33beaedb2de Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Wed, 20 Nov 2024 10:40:25 +0100 Subject: [PATCH 09/62] Add useful links (diabetes observation, transversal core, ...) --- sushi-config.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sushi-config.yaml b/sushi-config.yaml index 72af9138..58dfd1a2 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -171,6 +171,8 @@ menu: Real World Cases: Overview: rw-overview.html Telemonitoring Prescription: telemonitoring-prescription.html + Diabetes: https://build.fhir.org/ig/hl7-be/core-clinical/branches/issue-48/StructureDefinition-be-observation-diabetes.html + Logical Model: StructureDefinition-PatientMonitoring.html Guidelines: General Recommendations: recommendations.html Terminologies: terminology.html @@ -178,6 +180,7 @@ menu: History: changes.html Support: FHIR Spec: https://hl7.org/fhir/R4/ + Transversal Clinical Core: https://build.fhir.org/ig/hl7-be/core-clinical/ Downloads: downloads.html Copyrights: copyrights.html From 22e6449240f2af4c1b6f05d5d1f3454aa1f42790 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 10:35:02 +0100 Subject: [PATCH 10/62] Updated build script --- .github/workflows/build.yml | 49 ++++++++++++++++++++++++++----------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 661491ce..85201964 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,23 +1,44 @@ -# This workflow reuses the openHIE GitHub action for building IGs -# Initial idea by from Elliot Silver, available from: https://www.argentixinfo.com/archives/156 -# Change log: -# v0.1.0 -# 2021-06-18: publish default branches to / , other branches branches/<branch> -# 2021-11-26: reusable workflow +# This is a basic workflow to help you get started with Actions name: CI -# Controls when the action will run. +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch on: - # Triggers the workflow on push or pull request events for any main branch push: - branches-ignore: - - 'gh-pages' + branches: [ main, wip ] pull_request: + branches: [ main ] - workflow_dispatch: - +# A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" - call_build: - uses: openhie/empty-fhir-ig/.github/workflows/main.yml@master + build: + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + + - name: Update the image to the latest publisher + uses: docker://hl7fhir/ig-publisher-base:latest + with: + args: ./_updatePublisher.sh --force + + - name: Run sushi to generate the ig.ini file + uses: docker://hl7fhir/ig-publisher-base:latest + with: + args: sushi + + - name: Run the IG publisher + uses: docker://hl7fhir/ig-publisher-base:latest + with: + args: ./_genonce.sh -no-sushi + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./output From f24b87c14bac950743779305f480711aa6de1057 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 10:43:10 +0100 Subject: [PATCH 11/62] Updated build script to only run when pushed to wip --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 85201964..c4a34166 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,7 +6,7 @@ name: CI # events but only for the master branch on: push: - branches: [ main, wip ] + branches: [ wip ] pull_request: branches: [ main ] From dc9b000f222f033d9baf0e25f51ebb4368bd300a Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 10:59:07 +0100 Subject: [PATCH 12/62] Updated build script --- .github/workflows/build.yml | 44 ---------- .github/workflows/ci-patient-monitoring.yml | 9 ++ .github/workflows/ci.yml | 94 +++++++++++++++++++++ 3 files changed, 103 insertions(+), 44 deletions(-) delete mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/ci-patient-monitoring.yml create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index c4a34166..00000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,44 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: CI - -# Controls when the action will run. Triggers the workflow on push or pull request -# events but only for the master branch -on: - push: - branches: [ wip ] - pull_request: - branches: [ main ] - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - build: - # The type of runner that the job will run on - runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - - name: Update the image to the latest publisher - uses: docker://hl7fhir/ig-publisher-base:latest - with: - args: ./_updatePublisher.sh --force - - - name: Run sushi to generate the ig.ini file - uses: docker://hl7fhir/ig-publisher-base:latest - with: - args: sushi - - - name: Run the IG publisher - uses: docker://hl7fhir/ig-publisher-base:latest - with: - args: ./_genonce.sh -no-sushi - - - name: Deploy - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./output diff --git a/.github/workflows/ci-patient-monitoring.yml b/.github/workflows/ci-patient-monitoring.yml new file mode 100644 index 00000000..1280dc42 --- /dev/null +++ b/.github/workflows/ci-patient-monitoring.yml @@ -0,0 +1,9 @@ +name: Build And Publish Patient Monitoring Outcome IG +on: + push: + workflow_dispatch: +jobs: + call-workflow-passing-data: + uses: RemeCare/patient-monitoring/.github/workflows/ci.yml@wip + with: + ig: patient-monitoring-ig diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..411bd9d2 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,94 @@ +name: Build And Publish base +on: + workflow_call: + inputs: + ig: + type: string + description: "Name of the implementation guide" + required: true + depends: + type: string + description: "Name of the dependency implementation guide to build also" +jobs: + build-and-publish: + strategy: + matrix: + ig: ["${{ inputs.ig }}"] + depends: ["${{ inputs.depends }}"] + runs-on: ubuntu-latest + steps: + - name: Runner Info + run: | + echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event." + echo "🐧 Now running on a ${{ runner.os }} server hosted by GitHub!" + echo "🔎 Branch is ${{ github.ref }} ${{ github.repository }} repo" + echo "💡 The ${{ github.repository }} repo has been cloned to the runner." + echo "The event_name is ${{ github.event_name }}" + echo "The event.pull_request.merged is ${{ github.event.pull_request.merged}}" + echo "The ref is ${{ github.ref }}" + echo "Provided IG is ${{ inputs.ig }}" + + - name: Checkout Repo + uses: actions/checkout@v2 + + - name: Setup Ruby + uses: actions/setup-ruby@v1 + with: + ruby-version: '3' + + - name: Setup Java / Maven + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'adopt' + + - name: Install Jekyll + run: | + gem install jekyll + + - name: Version Info + run: | + java -version + npm --version + jekyll --version + mvn --version + + - name: Install graphviz to support extra plantuml diagrams + run: | + sudo apt install graphviz + + - name: Build dependency + if: ${{ matrix.depends }} + run: | + npm install -g fsh-sushi + cd ${{ matrix.depends }} + sushi . + ./_updatePublisher.sh -y && ./_genonce.sh + cd .. + + - name: Build IG + run: | + npm install -g fsh-sushi + cd ${{ matrix.ig }} + sushi . + ./_updatePublisher.sh -y && ./_genonce.sh + + - name: Deploy IG + uses: JamesIves/github-pages-deploy-action@v4.4.2 + with: + branch: gh-pages + folder: ./${{ matrix.ig }}/output + commit-message: Deploy IG ${{ github.ref_name }}/${{ matrix.ig }} + target-folder: ${{ github.ref_name }}/${{ matrix.ig }} + single-commit: true + clean: false + + - name: Deploy history + uses: JamesIves/github-pages-deploy-action@v4.4.2 + with: + branch: gh-pages + folder: ./${{ matrix.ig }}/history + commit-message: Deploy IG history ${{ github.ref_name }}/${{ matrix.ig }} + target-folder: ${{ github.ref_name }}/${{ matrix.ig }} + single-commit: true + clean: false From e2c325ba57c9a6b5fa28df00d75bb49708c62b05 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 11:03:55 +0100 Subject: [PATCH 13/62] Update build script --- .github/workflows/ci-patient-monitoring.yml | 9 ------ .github/workflows/ci.yml | 35 +++++---------------- 2 files changed, 7 insertions(+), 37 deletions(-) delete mode 100644 .github/workflows/ci-patient-monitoring.yml diff --git a/.github/workflows/ci-patient-monitoring.yml b/.github/workflows/ci-patient-monitoring.yml deleted file mode 100644 index 1280dc42..00000000 --- a/.github/workflows/ci-patient-monitoring.yml +++ /dev/null @@ -1,9 +0,0 @@ -name: Build And Publish Patient Monitoring Outcome IG -on: - push: - workflow_dispatch: -jobs: - call-workflow-passing-data: - uses: RemeCare/patient-monitoring/.github/workflows/ci.yml@wip - with: - ig: patient-monitoring-ig diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 411bd9d2..3586886a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,20 +1,9 @@ name: Build And Publish base on: - workflow_call: - inputs: - ig: - type: string - description: "Name of the implementation guide" - required: true - depends: - type: string - description: "Name of the dependency implementation guide to build also" + workflow_dispatch: + push: jobs: build-and-publish: - strategy: - matrix: - ig: ["${{ inputs.ig }}"] - depends: ["${{ inputs.depends }}"] runs-on: ubuntu-latest steps: - name: Runner Info @@ -56,20 +45,10 @@ jobs: - name: Install graphviz to support extra plantuml diagrams run: | sudo apt install graphviz - - - name: Build dependency - if: ${{ matrix.depends }} - run: | - npm install -g fsh-sushi - cd ${{ matrix.depends }} - sushi . - ./_updatePublisher.sh -y && ./_genonce.sh - cd .. - name: Build IG run: | npm install -g fsh-sushi - cd ${{ matrix.ig }} sushi . ./_updatePublisher.sh -y && ./_genonce.sh @@ -77,9 +56,9 @@ jobs: uses: JamesIves/github-pages-deploy-action@v4.4.2 with: branch: gh-pages - folder: ./${{ matrix.ig }}/output - commit-message: Deploy IG ${{ github.ref_name }}/${{ matrix.ig }} - target-folder: ${{ github.ref_name }}/${{ matrix.ig }} + folder: ./output + commit-message: Deploy IG ${{ github.ref_name }} + target-folder: ${{ github.ref_name }} single-commit: true clean: false @@ -88,7 +67,7 @@ jobs: with: branch: gh-pages folder: ./${{ matrix.ig }}/history - commit-message: Deploy IG history ${{ github.ref_name }}/${{ matrix.ig }} - target-folder: ${{ github.ref_name }}/${{ matrix.ig }} + commit-message: Deploy IG history ${{ github.ref_name }} + target-folder: ${{ github.ref_name }} single-commit: true clean: false From bbd1abd5f42bc0f12dea975b02d266fd93cedd2a Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 11:08:00 +0100 Subject: [PATCH 14/62] Fixed path --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3586886a..627087b5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -66,7 +66,7 @@ jobs: uses: JamesIves/github-pages-deploy-action@v4.4.2 with: branch: gh-pages - folder: ./${{ matrix.ig }}/history + folder: ./history commit-message: Deploy IG history ${{ github.ref_name }} target-folder: ${{ github.ref_name }} single-commit: true From ac0c6b370f6726e015964bb77b061f0872cbae8e Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 11:25:31 +0100 Subject: [PATCH 15/62] Do not deploy history for now --- .github/workflows/ci.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 627087b5..58241c8a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,12 +62,12 @@ jobs: single-commit: true clean: false - - name: Deploy history - uses: JamesIves/github-pages-deploy-action@v4.4.2 - with: - branch: gh-pages - folder: ./history - commit-message: Deploy IG history ${{ github.ref_name }} - target-folder: ${{ github.ref_name }} - single-commit: true - clean: false + # - name: Deploy history + # uses: JamesIves/github-pages-deploy-action@v4.4.2 + # with: + # branch: gh-pages + # folder: ./history + # commit-message: Deploy IG history ${{ github.ref_name }} + # target-folder: ${{ github.ref_name }} + # single-commit: true + # clean: false From bd7219c12269ad918d57375038b1bb572a1f35c8 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Mon, 25 Nov 2024 12:03:27 +0100 Subject: [PATCH 16/62] cleanup IG structure --- .gitignore | 2 + input/fsh/models/patientmonitoring.fsh | 71 - ...{about-this-version.md => heartfailure.md} | 0 input/pagecontent/heartwise.md | 0 .../{rw-overview.md => overview-loinc.md} | 0 input/pagecontent/overview.md | 0 input/pagecontent/totem.md | 0 package-lock.json | 1192 +++++++++++++++++ package.json | 5 + sushi-config.yaml | 30 +- 10 files changed, 1218 insertions(+), 82 deletions(-) delete mode 100644 input/fsh/models/patientmonitoring.fsh rename input/pagecontent/{about-this-version.md => heartfailure.md} (100%) create mode 100644 input/pagecontent/heartwise.md rename input/pagecontent/{rw-overview.md => overview-loinc.md} (100%) create mode 100644 input/pagecontent/overview.md create mode 100644 input/pagecontent/totem.md create mode 100644 package-lock.json create mode 100644 package.json diff --git a/.gitignore b/.gitignore index 46725989..0c03a9b1 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ Thumbs.db # backup files # ################ *.bak + +node_modules diff --git a/input/fsh/models/patientmonitoring.fsh b/input/fsh/models/patientmonitoring.fsh deleted file mode 100644 index 64b48161..00000000 --- a/input/fsh/models/patientmonitoring.fsh +++ /dev/null @@ -1,71 +0,0 @@ -Logical: PatientMonitoring -Id: PatientMonitoring -Title: "Patient Monitoring" -Description: "The data structure for Patient monitoring." -* ^extension[http://hl7.org/fhir/tools/StructureDefinition/logical-target].valueBoolean = true - -* identifier 1..1 Identifier "Measurement Identifier" "Measurement Identifier" -* status 1..1 code "Measurement status" "Measurement status" -* code 1..1 CodeableConcept "Code for the sign" - -* patient 1..1 BackboneElement "patient data" "patient data" - * identfier 1..1 string "user id" "user id" - * nissNumber 1..1 string "Patient NISS Number" "Patient NISS Number" - * otherId 0..* string "Patient NISS Number" "Patient NISS Number" - * userName 1..1 Identifier "user name" "user name" - - * userEmail 1..1 string "app version" "app version" - * dateOfBirth 1..1 date "Date of Birth" "Date of Birth" - - -* device 0..1 BackboneElement "The device used to acquire or interpret the signals" - * model 0..1 string "Model name" "Model name" - * serialNumber 0..1 string "Serial number of the device" "Serial number of the device" - * manufacturer 0..1 string "Name of the manufacturer" "Name of the manufacturer" -* software 0..1 BackboneElement "The software used to aquire or interpret the signals" - * version 0..1 string "Software version" "Software version" - * softwareName 0..1 string "Software version" "Software version" - - - -* measurement 0..* BackboneElement "Measurement data" "Measurement data" - * measurementTimeStamp 1..1 dateTime "Measurement timestamp" "Measurement timestamp" - * measurementPeriod 1..1 period "Measurement Period" "Measurement Period" - * value 0..1 string "Value of the aquired sign" "Value of the sign" - -* dataAbsentReason 1..1 period "Data absent reason" "Data absent reason" - -* hasMember 0..* Reference(PatientMonitoring) "Component results, if separate" "Component results" -* derivedFrom 0..* Reference "Related signs from which this is obtained" "Related signs from which this is obtained" - - -* interpretation 0..1 CodeableConcept "High, low, normal, etc." "High, low, normal, etc." -* note 0..* Annotation "Comments about the sign" "Comments about the sign" - -* referenceRange 0..* BackboneElement "Provides guide for interpretation" "Provides guide for interpretation" - * low 0..1 SimpleQuantity "Low Range, if relevant" "Low Range, if relevant" - * high 0..1 SimpleQuantity "High Range, if relevant" "High Range, if relevant" - * normalValue 0..1 CodeableConcept "Normal Range, if relevant" "Normal Range, if relevant" - * type 0..1 CodeableConcept "Reference range qualifier" "Reference range qualifier" - * age 0..1 Range "Applicable age range, if relevant" "Applicable age range, if relevant" - * text 0..1 markdown "Text based reference range in an observation" "Text based reference range in an observation" - -* component 0..* BackboneElement "Components when there are more than one values in the same sign" - * value 0..1 string "Value of the aquired sign" "Value of the sign" - * dataAbsentReason 0..1 CodeableConcept "Reason for missing data" "Reason for missing data" - * interpretation 0..1 CodeableConcept "High, low, normal, etc." "High, low, normal, etc." - * note 0..* Annotation "Comments about the sign" "Comments about the sign" - * referenceRange 0..* BackboneElement "Provides guide for interpretation" "Provides guide for interpretation" - * low 0..1 SimpleQuantity "Low Range, if relevant" "Low Range, if relevant" - * High 0..1 SimpleQuantity "High Range, if relevant" "High Range, if relevant" - * normalValue 0..1 CodeableConcept "Normal Range, if relevant" "Normal Range, if relevant" - * type 0..1 CodeableConcept "Reference range qualifier" "Reference range qualifier" - * age 0..1 Range "Applicable age range, if relevant" "Applicable age range, if relevant" - * text 0..1 markdown "Text based reference range in an observation" "Text based reference range in an observation" - -* context 0..* BackboneElement "Context" - * symptoms 0..* CodeableConcept "Symptoms" "Symptoms" - * activity 0..* CodeableConcept "Activity" "Activity" - * others 0..* CodeableConcept "Others" "Others" - - diff --git a/input/pagecontent/about-this-version.md b/input/pagecontent/heartfailure.md similarity index 100% rename from input/pagecontent/about-this-version.md rename to input/pagecontent/heartfailure.md diff --git a/input/pagecontent/heartwise.md b/input/pagecontent/heartwise.md new file mode 100644 index 00000000..e69de29b diff --git a/input/pagecontent/rw-overview.md b/input/pagecontent/overview-loinc.md similarity index 100% rename from input/pagecontent/rw-overview.md rename to input/pagecontent/overview-loinc.md diff --git a/input/pagecontent/overview.md b/input/pagecontent/overview.md new file mode 100644 index 00000000..e69de29b diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md new file mode 100644 index 00000000..e69de29b diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..50a15895 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1192 @@ +{ + "name": "patient-monitoring", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "fsh-sushi": "^3.12.1" + } + }, + "node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@dabh/diagnostics": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", + "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", + "dependencies": { + "colorspace": "1.1.x", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "node_modules/@types/triple-beam": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" + }, + "node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/antlr4": { + "version": "4.13.2", + "resolved": "https://registry.npmjs.org/antlr4/-/antlr4-4.13.2.tgz", + "integrity": "sha512-QiVbZhyy4xAZ17UPEuG3YTOt8ZaoeOR1CvEAqrEsDBsOqINslaB147i9xqljZqoyf5S+EUlGStaj+t22LT9MOg==", + "engines": { + "node": ">=16" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/colorspace": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", + "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", + "dependencies": { + "color": "^3.1.3", + "text-hex": "1.0.x" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "engines": { + "node": ">=18" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-uri": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==" + }, + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" + }, + "node_modules/fhir": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/fhir/-/fhir-4.12.0.tgz", + "integrity": "sha512-N+eLuUbYjvjX5NlZPhE08OVrsJJhulQKkVWnW1M3HpNvreWC1yVvoF8ptmGzlvtDZRCrNrBArfLklphFO2L0oA==", + "bundleDependencies": [ + "lodash", + "path", + "q", + "xml-js" + ], + "dependencies": { + "lodash": "^4.17.19", + "path": "^0.12.7", + "q": "^1.4.1", + "randomatic": "^3.1.0", + "xml-js": "^1.6.8" + } + }, + "node_modules/fhir-package-loader": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fhir-package-loader/-/fhir-package-loader-1.0.0.tgz", + "integrity": "sha512-x3VY3RY1wkJv8Fd7dA7fY3aw+6Vg7qeCU0pci7wUaEhnJ84k7Lnca6dfH00l36uzH1N5EwVX51iKuuwsS6RdlA==", + "dependencies": { + "axios": "^1.6.7", + "chalk": "^4.1.2", + "commander": "^11.1.0", + "fs-extra": "^11.2.0", + "https-proxy-agent": "^7.0.2", + "lodash": "^4.17.21", + "semver": "^7.5.4", + "tar": "^6.2.0", + "temp": "^0.9.1", + "winston": "^3.11.0" + }, + "bin": { + "fpl": "dist/app.js" + } + }, + "node_modules/fhir-package-loader/node_modules/commander": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/fhir/node_modules/inherits": { + "version": "2.0.3", + "inBundle": true, + "license": "ISC" + }, + "node_modules/fhir/node_modules/lodash": { + "version": "4.17.21", + "inBundle": true, + "license": "MIT" + }, + "node_modules/fhir/node_modules/path": { + "version": "0.12.7", + "inBundle": true, + "license": "MIT", + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, + "node_modules/fhir/node_modules/process": { + "version": "0.11.10", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/fhir/node_modules/q": { + "version": "1.5.1", + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/fhir/node_modules/sax": { + "version": "1.2.4", + "inBundle": true, + "license": "ISC" + }, + "node_modules/fhir/node_modules/util": { + "version": "0.10.4", + "inBundle": true, + "license": "MIT", + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/fhir/node_modules/xml-js": { + "version": "1.6.8", + "inBundle": true, + "license": "MIT", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==" + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-extra": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsh-sushi": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/fsh-sushi/-/fsh-sushi-3.12.1.tgz", + "integrity": "sha512-cvditqxO/FIimwZ0zmmodi2jPawy8mFkaEwLJn+cqohv/RnPEU9RpdGez5qefUrDAgU4qvY8zub29Or/TfQBrA==", + "dependencies": { + "ajv": "^8.17.1", + "antlr4": "^4.13.2", + "axios": "^1.7.7", + "chalk": "^4.1.2", + "commander": "^12.1.0", + "fhir": "^4.12.0", + "fhir-package-loader": "^1.0.0", + "fs-extra": "^11.2.0", + "html-minifier-terser": "5.1.1", + "https-proxy-agent": "^7.0.5", + "ini": "^5.0.0", + "junk": "^3.1.0", + "lodash": "^4.17.21", + "readline-sync": "^1.4.10", + "sanitize-filename": "^1.6.3", + "sax": "^1.4.1", + "temp": "^0.9.4", + "text-table": "^0.2.0", + "title-case": "^3.0.3", + "valid-url": "^1.0.9", + "winston": "^3.15.0", + "yaml": "^1.10.2" + }, + "bin": { + "sushi": "dist/app.js" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-5.0.0.tgz", + "integrity": "sha512-+N0ngpO3e7cRUWOJAS7qw0IZIVc6XPrW4MlFBdD066F2L4k1L6ker3hLqSq7iXxU5tgS4WGkIUElWn5vogAEnw==", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/junk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", + "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==" + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/logform": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", + "dependencies": { + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==" + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dependencies": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readline-sync": { + "version": "1.4.10", + "resolved": "https://registry.npmjs.org/readline-sync/-/readline-sync-1.4.10.tgz", + "integrity": "sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-stable-stringify": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" + }, + "node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "engines": { + "node": "*" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/temp": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz", + "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==", + "dependencies": { + "mkdirp": "^0.5.1", + "rimraf": "~2.6.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/temp/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/title-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz", + "integrity": "sha512-e1zGYRvbffpcHIrnuqT0Dh+gEJtDaxDSoG4JAIpq4oDFyooziLBIiYQv0GBT4FUAnUop5uZ1hiIAj7oAF6sOCA==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/valid-url": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", + "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==" + }, + "node_modules/winston": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", + "dependencies": { + "@colors/colors": "^1.6.0", + "@dabh/diagnostics": "^2.0.2", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.7.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.9.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/winston-transport": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", + "dependencies": { + "logform": "^2.7.0", + "readable-stream": "^3.6.2", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..81b651e1 --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "fsh-sushi": "^3.12.1" + } +} diff --git a/sushi-config.yaml b/sushi-config.yaml index 58dfd1a2..97a40b9e 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -125,9 +125,7 @@ dependencies: pages: index.md: title: Patient Monitoring Outcome Home Page - about-this-version.md: - title: About this version - rw-overview.md: + overview.md: title: Overview recommendations.md: title: General Recommendations @@ -141,6 +139,14 @@ pages: title: IG Change History telemonitoring-prescription.md: title: Telemonitoring Prescription + heartfailure.md: + title: Heart failure + heartwise.md: + title: HEARTwise + overview-loinc.md: + title: Overview LOINC + totem.md: + title: TOTem # The ImplementationGuide resource defines several other properties # not represented above. These properties can be used as-is and @@ -164,18 +170,20 @@ pages: # To provide a custom menu.xml file, do not include this property and # include a `menu.xml` file in input/includes. menu: - IG Home: index.html - Table of Contents: toc.html - Background: - About this version: about-this-version.html - Real World Cases: - Overview: rw-overview.html + Home: + Home: index.html Telemonitoring Prescription: telemonitoring-prescription.html - Diabetes: https://build.fhir.org/ig/hl7-be/core-clinical/branches/issue-48/StructureDefinition-be-observation-diabetes.html - Logical Model: StructureDefinition-PatientMonitoring.html Guidelines: General Recommendations: recommendations.html Terminologies: terminology.html + Use Cases: + Overview: overview.html + Heart failure: heartfailure.html + HEARTwise: heartwise.html + TOTem: totem.html + Diabetes: https://build.fhir.org/ig/hl7-be/core-clinical/branches/issue-48/StructureDefinition-be-observation-diabetes.html + Overview LOINC: overview-loinc.html + Artifact Index: artifacts.html History: changes.html Support: From 500ae4b121d0782a70e9a114daf78b725af99d12 Mon Sep 17 00:00:00 2001 From: Tim Bogaert <tim.bogaert@byteflies.com> Date: Mon, 25 Nov 2024 12:37:01 +0100 Subject: [PATCH 17/62] add introduction and purpose --- input/pagecontent/index.md | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/input/pagecontent/index.md b/input/pagecontent/index.md index fa29c7b2..9dc2c545 100644 --- a/input/pagecontent/index.md +++ b/input/pagecontent/index.md @@ -1,19 +1,27 @@ +## Implementation Guide for Telemonitoring Prescription + ### Introduction +This Implementation Guide (IG) provides standardized guidance for Electronic Health Record (EHR) systems and Telemonitoring (TM) Providers. Developed in alignment with HL7 standards, it offers a unified framework for seamless data integration between EHRs and TM Providers. The guide is fully aligned with the Telemonitoring Prescription initiative. Additional information can be found at [telemonitoring-prescription.com](https://www.telemonitoring-prescription.com). + ### Purpose +The primary goal of this IG is to standardize the use of FHIR outputs within the Telemonitoring Hub. By providing clear guidelines, it ensures that EHR systems can effectively interpret data sent by Telemonitoring Providers and received by prescribers (typically EHR systems). This facilitates streamlined and consistent communication across the healthcare ecosystem. + ### Scope -### Audience - -### Topics to cover -- Use Cases and Scenarios -- Key Concepts and Definitions -- Interoperability -- FHIR Profiles and Terminology Bindings -- Sample Resources -- Security and Privacy -- Implementation Guidance - - Handling errors and exceptions - - Best practices - \ No newline at end of file +The Telemonitoring Prescription focuses on integrating patient monitoring data into hospital and healthcare systems, regardless of where the data is collected—inside or outside a hospital. This guide emphasizes interoperability between hospital systems and external providers, ensuring that patient monitoring outcomes are seamlessly incorporated into clinical workflows. + +### Topics Covered + +- **Use Cases and Scenarios**: Practical examples to demonstrate the implementation of Telemonitoring in real-world settings. +- **Key Concepts and Definitions**: Clear explanations of core terms and concepts relevant to the Telemonitoring Prescription. +- **Interoperability**: Guidelines for achieving seamless data exchange between EHRs and TM Providers. +- **FHIR Profiles and Terminology Bindings**: Detailed specifications for consistent use of FHIR standards. +- **Sample Resources**: Examples of FHIR resources to facilitate implementation. +- **Security and Privacy**: Best practices for ensuring compliance with privacy regulations and securing patient data. +- **Implementation Guidance**: + - Handling errors and exceptions + - Best practices for deployment and integration + +This guide serves as a critical resource for ensuring the success of the Telemonitoring Prescription initiative by promoting consistency, interoperability, and security in patient monitoring data exchange. From 6ab84638bbca602ff08958c66215d9a87866675c Mon Sep 17 00:00:00 2001 From: Tim Bogaert <tim.bogaert@byteflies.com> Date: Mon, 25 Nov 2024 13:12:43 +0100 Subject: [PATCH 18/62] add hartfalen --- input/pagecontent/heartfailure.md | 77 +++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/input/pagecontent/heartfailure.md b/input/pagecontent/heartfailure.md index e69de29b..2224a1f3 100644 --- a/input/pagecontent/heartfailure.md +++ b/input/pagecontent/heartfailure.md @@ -0,0 +1,77 @@ +**DRAFT: 2024-11-25** + +### Care Pathway Overview + +- **Duration**: 4 years +- **Central Care Facility**: Specialized heart failure center with a telemonitoring team. +- **Minimal Capacity**: 0.5 FTE heart failure nurse per 100 patients. +- **Educational Material**: Available for self-management and adherence. +- **Accessibility**: Reachable during office hours. + +#### Patient Criteria + +- **NYHA Classification**: II or III (85% of all new patients, ~21,000 per year). +- **Informed Consent**: Signed informed consent required. +- **Physical Consultation**: At least 1 physical consultation 2 years before the start of telemonitoring. + +--- + +### Process and Workflow Description + +#### Start-Up + +- **Screening and Risk Assessment**: Performed by the heart failure center. +- **Informed Consent**: Collected and securely stored. +- **Involvement**: General practitioner or home nurse involved in the workflow. +- **Parameters Monitored**: + - Heart Rate (HR) + - Blood Pressure (BP) + - Weight (BW) +- **Frequency**: Daily, once per day, 7 days a week, 6 months. + +#### Data Collection + +- Data is automatically collected via connected devices or manually entered into the system. +- Technology is CE-certified, with end-to-end encryption and GDPR compliance. + +#### Alarm Management + +- **Thresholds**: Heart failure alarm thresholds predefined on the digital platform. +- **Monitoring**: Data checked daily during working hours by the heart failure team. +- **Alarm Notification**: + - General practitioner or home nurse informed within 5 working days (or within 48 hours if urgent). + +--- + +### Integration Modules for EPD + +#### Outcome Module - PDF + +- **Daily Updates**: Updated daily per measurement. +- **Content**: Overview of the questions and vital parameters. +- **File Size**: ±100KB per PDF, max: 10MB per PDF. + +--- + +#### Outcome Module - FHIR Integration + +##### Vital Signs + +- **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). +- **LOINC Codes**: + + | Description | LOINC Code(s) | + | ------------------------------- | --------------------- | + | Heart rate (HR) measurement | LOINC 8867-4 | + | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | + | Body weight (BW) measurement | LOINC 29463-7 | + +These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. + +##### Specification: + +For detailed specifications, refer to the + +- [Blood Pressure Example](./Observation-BloodPressureExample.html) +- [Weight Example](./Observation-BodyWeightExample.html) +- [Heart Rate Example](./Observation-HeartRateExample.html) From 65614385aa3bb3de43bd8135fac69254f9c06af1 Mon Sep 17 00:00:00 2001 From: Tim Bogaert <tim.bogaert@byteflies.com> Date: Mon, 25 Nov 2024 13:34:42 +0100 Subject: [PATCH 19/62] add EWS --- input/pagecontent/ews.md | 93 ++++++++++++++++++++++++++++++++++ input/pagecontent/heartwise.md | 0 sushi-config.yaml | 12 ++--- 3 files changed, 99 insertions(+), 6 deletions(-) create mode 100644 input/pagecontent/ews.md delete mode 100644 input/pagecontent/heartwise.md diff --git a/input/pagecontent/ews.md b/input/pagecontent/ews.md new file mode 100644 index 00000000..e8ba5e07 --- /dev/null +++ b/input/pagecontent/ews.md @@ -0,0 +1,93 @@ +**DRAFT: 2024-11-25** + +### Care Pathway Overview + +- **Accessibility**: Reachable during office hours. +- **Patient Criteria**: + + - Signed informed consent + - Ability to sustainably implement telemonitoring + - Lives within the geographically defined region + - Patient has no psychosocial issues + - Patient without non-compliance + - Patient is willing to wear wearables during the hospital stay and in the home environment + - Patient is over 16 years old + - Patient was not admitted to intensive care + - Patient is medically stable + - Patient is no longer receiving oxygen therapy at discharge (EWS calculation) + +- **Accessibility**: Reachable during office hours. + +--- + +### Process and Workflow Description + +#### Start-Up + +- **Screening and risk Assessment**: performed by the attending physician. +- **Informed consent**: Collected and securely stored. +- **Tele Care Center**: Involved in the workflow. +- **Parameters monitored**: + + - Heart Rate (HR) + - Systolic Blood Pressure (BP) + - Saturation + - Temperature + - Respiratory Rate + - Oxygen + - AWPU + - Frequency: Daily, 3 times per day, 10 days. + +#### Data Collection + +- Data is automatically collected via connected devices or manually entered into the system. +- Technology is CE-certified, with end-to-end encryption and GDPR compliance. + +#### Alarm Management + +- (N)EWS and/or single vital sign alarm thresholds are predefined on the digital platform. +- The RRT/tele care center checks the collected data daily during working hours. +- In case of alarms, the tele care center will inform the home nurse as soon as possible. + +--- + +### Integration Modules for EPD + +#### Outcome Module - PDF + +- **Daily Updates**: Updated daily per measurement. +- **Content**: Overview of the questions and vital parameters. +- **File Size**: ±100KB per PDF, max: 10MB per PDF. + +--- + +#### Outcome Module - FHIR Integration + +##### Vital Signs + +- **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). +- **LOINC Codes**: + + | Description | LOINC Code(s) | + | ------------------------------------ | --------------------- | + | Heart rate (HR) measurement | LOINC 8867-4 | + | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | + | Body weight (BW) measurement | LOINC 29463-7 | + | Respiratory (RESP) measurement | LOINC 9279-1 | + | Temperature (TEMP) measurement | LOINC 8310-5 | + | Oxygen Saturation (SPO2) measurement | LOINC 59408-5 | + +These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. + +##### Specification: + +For detailed specifications, refer to the + +- [Blood Pressure Example](./Observation-BloodPressureExample.html) +- [Weight Example](./Observation-BodyWeightExample.html) +- [Heart Rate Example](./Observation-HeartRateExample.html) +- [Oxygen Saturation Example](./Observation-OxygenSaturationExample.html) +- [Respiratory Rate Example](./Observation-RespiratoryRateExample.html) +- [Temperature Example](./Observation-BodyTemperatureExample.html) + +These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. diff --git a/input/pagecontent/heartwise.md b/input/pagecontent/heartwise.md deleted file mode 100644 index e69de29b..00000000 diff --git a/sushi-config.yaml b/sushi-config.yaml index 97a40b9e..5c81926d 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -10,7 +10,7 @@ id: hl7.fhir.be.patient-monitoring canonical: http://hl7belgium.org/fhir/patient-monitoring # url: http://example.com/fhir/example name: Patient-Monitoring-Outcome -title: "Patient Monitoring Outcome FHIR Implementation Guide" +title: 'Patient Monitoring Outcome FHIR Implementation Guide' description: Patient Monitoring Outcome FHIR Implementation Guide. status: draft date: 2024-11-20 @@ -141,8 +141,8 @@ pages: title: Telemonitoring Prescription heartfailure.md: title: Heart failure - heartwise.md: - title: HEARTwise + ews.md: + title: EWS (Early Warning Score) overview-loinc.md: title: Overview LOINC totem.md: @@ -170,16 +170,16 @@ pages: # To provide a custom menu.xml file, do not include this property and # include a `menu.xml` file in input/includes. menu: - Home: + Home: Home: index.html Telemonitoring Prescription: telemonitoring-prescription.html Guidelines: General Recommendations: recommendations.html - Terminologies: terminology.html + Terminologies: terminology.html Use Cases: Overview: overview.html Heart failure: heartfailure.html - HEARTwise: heartwise.html + EWS: ews.html TOTem: totem.html Diabetes: https://build.fhir.org/ig/hl7-be/core-clinical/branches/issue-48/StructureDefinition-be-observation-diabetes.html Overview LOINC: overview-loinc.html From 42599216703ae5e988dace19ff36614254f2fcfb Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 13:36:14 +0100 Subject: [PATCH 20/62] TOTeM 1st draft --- input/pagecontent/totem.md | 83 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index e69de29b..f535ad38 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -0,0 +1,83 @@ +**DRAFT: 2024-11-25** + +### Care Pathway Overview + +ToTem stands for Transmurale Opvolging met TeleMonitoring na chirurgie. + +Improved surgical techniques allow patients to go home earlier and earlier after their surgery. Complications are possible with any surgery. It is important that they are noticed in time so that the necessary action can be taken by the appropriate healthcare provider. + +TOTeM aims to send patients home after surgery as early as medically possible, with quality and specialised follow-up in the home environment. + +The patient can recover in a familiar environment and is more involved in the recovery process. For the hospital, faster discharge offers the opportunity to optimise length of stay and bed occupancy. The social cost of care falls. + +With support from the FPS Public Health, some TOTeM projects are being rolled out in 6 hospitals in a pilot project; and this for specific types of surgery (depending on the hospital's choice): colon surgery, obesity surgery, kidney surgery, bladder surgery, pancreatic surgery and anti-reflux surgery. + +### Patient monitoring + +The following registrations will be made by patients and/or care providers that will be available in the prescription portal. + + +### Process and Workflow Description + +#### Start-Up + +- **Parameters Monitored**: + - Heart Rate (HR) + - Blood Pressure (BP) + - Weight (BW) + - Respiratory rate + - Saturation + - Body temperature + - Abdominal pain + - Pain surgical wound + - Pain puncture wounds + - Pain during urination + - Pain in calves + - Pain medication taken + - Wellbeing + - Flatulence + - Bowl movement + - Distended abdomen + - Nausea + - Vomitting + - Water intake last 24h + - Meals last 24h + - Coughing + - Mucus when coughing + - Pression on chest + - Shortness of breath + - Walking daily + - Shoulder pain + +- **Frequency**: 3 times a day, 7 days a week. + +#### Data Collection + +- Data is automatically collected via connected devices or manually entered into the system. +- Technology is CE-certified, with end-to-end encryption and GDPR compliance. + +### Integration Modules for EPD + +#### Outcome Module - FHIR Integration + +##### Vital Signs + +- **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). +- **LOINC Codes**: + + | Description | LOINC Code(s) | + | ------------------------------- | --------------------- | + | Heart rate (HR) measurement | LOINC 8867-4 | + | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | + | Body weight (BW) measurement | LOINC 29463-7 | + --- + +These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. + +##### Specification: + +For detailed specifications, refer to the + +- [Blood Pressure Example](./Observation-BloodPressureExample.html) +- [Weight Example](./Observation-BodyWeightExample.html) +- [Heart Rate Example](./Observation-HeartRateExample.html) From 09b6fe1078741588d66c339f6d05979de30732ff Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 14:51:56 +0100 Subject: [PATCH 21/62] TOTeM LOINC and SNOMEDCT 1st version --- input/pagecontent/totem.md | 51 +++++++++++++++++++++++++------------- 1 file changed, 34 insertions(+), 17 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index f535ad38..0312d635 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -12,19 +12,14 @@ The patient can recover in a familiar environment and is more involved in the re With support from the FPS Public Health, some TOTeM projects are being rolled out in 6 hospitals in a pilot project; and this for specific types of surgery (depending on the hospital's choice): colon surgery, obesity surgery, kidney surgery, bladder surgery, pancreatic surgery and anti-reflux surgery. -### Patient monitoring - -The following registrations will be made by patients and/or care providers that will be available in the prescription portal. - - ### Process and Workflow Description #### Start-Up - **Parameters Monitored**: - - Heart Rate (HR) - - Blood Pressure (BP) - - Weight (BW) + - Heart Rate + - Blood Pressure + - Body weight - Respiratory rate - Saturation - Body temperature @@ -34,12 +29,12 @@ The following registrations will be made by patients and/or care providers that - Pain during urination - Pain in calves - Pain medication taken - - Wellbeing + - Well-being - Flatulence - - Bowl movement + - Bowel movement - Distended abdomen - Nausea - - Vomitting + - Vomiting - Water intake last 24h - Meals last 24h - Coughing @@ -65,12 +60,34 @@ The following registrations will be made by patients and/or care providers that - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: - | Description | LOINC Code(s) | - | ------------------------------- | --------------------- | - | Heart rate (HR) measurement | LOINC 8867-4 | - | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | - | Body weight (BW) measurement | LOINC 29463-7 | - --- + | Description | LOINC Code(s) | + | --------------------------| ------------------------ | + | Heart rate | LOINC 8867-4 | + | Blood pressure | LOINC 8480-6 / 8463-4 | + | Body weight | LOINC 29463-7 | + | Respiratory rate | LOINC 9279-1 | + | Saturation | LOINC 2708-6 | + | Body temperature | LOINC 8310-5 | + | Abdominal pain | LOINC 72514-3 ? 28538-7? | + | Pain surgical wound | LOINC 72514-3 ?? | + | Pain puncture wounds | LOINC 72514-3 ?? | + | Pain during urination | LOINC 72514-3 ?? | + | Pain in calves | LOINC 72514-3 ?? | + | Pain medication taken | ?? | + | Well-being | SNOMEDCT 365275006 | + | Flatulence | SNOMEDCT 249504006 | + | Bowel movement | SNOMEDCT 39211005 | + | Distended abdomen | SNOMEDCT 60728008 | + | Nausea | SNOMEDCT 422587007 | + | Vomiting | SNOMEDCT 300359004 | + | Water intake last 24h | LOINC 9007-6 | + | Meals last 24h | ?? | + | Coughing | SNOMEDCT 263731006 | + | Product cough | SNOMEDCT 28743005 | + | Pressure in chest | SNOMEDCT 23924001 | + | Shortness of breath | SNOMEDCT 267036007 | + | Walking daily | ?? | + | Shoulder pain | LOINC 72514-3 ?? | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 2caa77198f6643b6513cc6fe2876cb571c18115d Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 15:14:17 +0100 Subject: [PATCH 22/62] TOTeM code additions --- input/pagecontent/totem.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index 0312d635..da35faaf 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -60,7 +60,7 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: - | Description | LOINC Code(s) | + | Description | Code(s) | | --------------------------| ------------------------ | | Heart rate | LOINC 8867-4 | | Blood pressure | LOINC 8480-6 / 8463-4 | @@ -68,13 +68,13 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Respiratory rate | LOINC 9279-1 | | Saturation | LOINC 2708-6 | | Body temperature | LOINC 8310-5 | - | Abdominal pain | LOINC 72514-3 ? 28538-7? | + | Abdominal pain | SNOMEDCT 21522001 | | Pain surgical wound | LOINC 72514-3 ?? | | Pain puncture wounds | LOINC 72514-3 ?? | - | Pain during urination | LOINC 72514-3 ?? | - | Pain in calves | LOINC 72514-3 ?? | + | Pain during urination | SNOMEDCT 49650001 | + | Pain in calves | SNOMEDCT 1264028004 | | Pain medication taken | ?? | - | Well-being | SNOMEDCT 365275006 | + | Well-being | SNOMEDCT 365275006 | | Flatulence | SNOMEDCT 249504006 | | Bowel movement | SNOMEDCT 39211005 | | Distended abdomen | SNOMEDCT 60728008 | From f9d66e4bd0a681b5aff105e7d6e221aa2ad33856 Mon Sep 17 00:00:00 2001 From: Benny Tops <benny.tops@remecare.eu> Date: Mon, 25 Nov 2024 15:30:38 +0100 Subject: [PATCH 23/62] Fixed typo --- input/pagecontent/totem.md | 2 +- sushi-config.yaml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index da35faaf..cce5dba0 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -2,7 +2,7 @@ ### Care Pathway Overview -ToTem stands for Transmurale Opvolging met TeleMonitoring na chirurgie. +TOTeM stands for Transmurale Opvolging met TeleMonitoring na chirurgie. Improved surgical techniques allow patients to go home earlier and earlier after their surgery. Complications are possible with any surgery. It is important that they are noticed in time so that the necessary action can be taken by the appropriate healthcare provider. diff --git a/sushi-config.yaml b/sushi-config.yaml index 5c81926d..3ce9b4ae 100644 --- a/sushi-config.yaml +++ b/sushi-config.yaml @@ -146,7 +146,7 @@ pages: overview-loinc.md: title: Overview LOINC totem.md: - title: TOTem + title: TOTeM # The ImplementationGuide resource defines several other properties # not represented above. These properties can be used as-is and @@ -180,7 +180,7 @@ menu: Overview: overview.html Heart failure: heartfailure.html EWS: ews.html - TOTem: totem.html + TOTeM: totem.html Diabetes: https://build.fhir.org/ig/hl7-be/core-clinical/branches/issue-48/StructureDefinition-be-observation-diabetes.html Overview LOINC: overview-loinc.html From 4be53b2d0aab6f87e1cb0d292c14f131b6305aef Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Mon, 25 Nov 2024 15:32:55 +0100 Subject: [PATCH 24/62] FHIR example body weight --- input/fsh/aliases.fsh | 1 + input/fsh/example-body-weight.fsh | 24 +++++++++++++++++++++--- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index 655e2c2d..accabe44 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -1,3 +1,4 @@ Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation-category Alias: $loinc = http://loinc.org Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns +Alias: $fhir = https://remecare.github.io/patient-monitoring/wip/ diff --git a/input/fsh/example-body-weight.fsh b/input/fsh/example-body-weight.fsh index e66fe01c..47b129da 100644 --- a/input/fsh/example-body-weight.fsh +++ b/input/fsh/example-body-weight.fsh @@ -4,8 +4,26 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#29463-7 "Body Weight" -* subject.reference = "Patient/D358D4B4-6007-4C3E-A33B-056773F45DC9" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * component.code = $loinc#29463-7 "Body weight" -* component.valueQuantity = 39.3 'kg' "kg" -* device.reference = "Device/Byteflies Vital Signs" +* component.valueQuantity = 89.3 'kg' "kg" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) * effectiveDateTime = "2024-11-19T06:48:20+00:00" +* performer = Reference(byteflies) + +Instance: vital-signs-box +InstanceOf: Device +Usage: #inline +* identifier.value = "240822yti3tgeyay" +* deviceName.name = "VS-4" +* deviceName.type = #other +* manufacturer = "Byteflies" +* meta.tag = https://api-vitalsigns.byteflies.net/version#20241028-1511 "API Version 20241028-1511" + +Instance: byteflies +InstanceOf: Organization +Usage: #inline +* name = "Byteflies" \ No newline at end of file From 8c9d80de67765c21ab7362c1f86a2dd26b8e5c4b Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Mon, 25 Nov 2024 15:57:15 +0100 Subject: [PATCH 25/62] FHIR Example update --- input/fsh/byteflies-organisation.fsh | 4 ++++ input/fsh/example-blood-pressure.fsh | 10 +++++++--- input/fsh/example-body-temperature.fsh | 8 ++++++-- input/fsh/example-body-weight.fsh | 16 +--------------- input/fsh/example-heart-rate.fsh | 8 ++++++-- input/fsh/example-oxygen-saturation.fsh | 8 ++++++-- input/fsh/example-respiratory-rate.fsh | 8 ++++++-- input/fsh/vital-signs-box.fsh | 8 ++++++++ 8 files changed, 44 insertions(+), 26 deletions(-) create mode 100644 input/fsh/byteflies-organisation.fsh create mode 100644 input/fsh/vital-signs-box.fsh diff --git a/input/fsh/byteflies-organisation.fsh b/input/fsh/byteflies-organisation.fsh new file mode 100644 index 00000000..83cfbd0d --- /dev/null +++ b/input/fsh/byteflies-organisation.fsh @@ -0,0 +1,4 @@ +Instance: byteflies +InstanceOf: Organization +Usage: #inline +* name = "Byteflies" \ No newline at end of file diff --git a/input/fsh/example-blood-pressure.fsh b/input/fsh/example-blood-pressure.fsh index 92319538..b86e3ead 100644 --- a/input/fsh/example-blood-pressure.fsh +++ b/input/fsh/example-blood-pressure.fsh @@ -4,10 +4,14 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#85354-9 "Blood pressure" -* subject.reference = "Patient/D358D4B4-6007-4C3E-A33B-056773F45DC9" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * component[0].code = $loinc#8480-6 "Systolic blood pressure" * component[=].valueQuantity = 140 'mm[Hg]' "mmHg" * component[+].code = $loinc#8462-4 "Diastolic blood pressure" * component[=].valueQuantity = 74 'mm[Hg]' "mmHg" -* device.reference = "Device/Byteflies Vital Signs" -* effectiveDateTime = "2024-11-18T09:38:52+00:00" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) +* performer = Reference(byteflies) +* effectiveDateTime = "2024-11-18T09:38:52+00:00" \ No newline at end of file diff --git a/input/fsh/example-body-temperature.fsh b/input/fsh/example-body-temperature.fsh index 93660cf0..8ebf06eb 100644 --- a/input/fsh/example-body-temperature.fsh +++ b/input/fsh/example-body-temperature.fsh @@ -4,8 +4,12 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#8310-5 "Body Temperature" -* subject.reference = "Patient/EFD5E060-9522-48BE-9ECC-3BFA54EA3666" +* subject.identifier.system = $fhir +* subject.identifier.value = "EFD5E060-9522-48BE-9ECC-3BFA54EA3666" * component.code = $loinc#8310-5 "Body Temperature" * component.valueQuantity = 35.29 'Cel' "C" -* device.reference = "Device/Byteflies Vital Signs" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) +* performer = Reference(byteflies) * effectiveDateTime = "2024-11-19T19:30:42+00:00" diff --git a/input/fsh/example-body-weight.fsh b/input/fsh/example-body-weight.fsh index 47b129da..76c3fdac 100644 --- a/input/fsh/example-body-weight.fsh +++ b/input/fsh/example-body-weight.fsh @@ -11,19 +11,5 @@ Usage: #example * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) -* effectiveDateTime = "2024-11-19T06:48:20+00:00" * performer = Reference(byteflies) - -Instance: vital-signs-box -InstanceOf: Device -Usage: #inline -* identifier.value = "240822yti3tgeyay" -* deviceName.name = "VS-4" -* deviceName.type = #other -* manufacturer = "Byteflies" -* meta.tag = https://api-vitalsigns.byteflies.net/version#20241028-1511 "API Version 20241028-1511" - -Instance: byteflies -InstanceOf: Organization -Usage: #inline -* name = "Byteflies" \ No newline at end of file +* effectiveDateTime = "2024-11-19T06:48:20+00:00" \ No newline at end of file diff --git a/input/fsh/example-heart-rate.fsh b/input/fsh/example-heart-rate.fsh index 4c550c69..38abb3c4 100644 --- a/input/fsh/example-heart-rate.fsh +++ b/input/fsh/example-heart-rate.fsh @@ -4,8 +4,12 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#8867-4 "Heart rate" -* subject.reference = "Patient/D358D4B4-6007-4C3E-A33B-056773F45DC9" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * component.code = $loinc#8867-4 "Heart rate" * component.valueQuantity = 78 '/min' "beats/min" -* device.reference = "Device/Byteflies Vital Signs" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) +* performer = Reference(byteflies) * effectiveDateTime = "2024-11-18T09:38:52+00:00" diff --git a/input/fsh/example-oxygen-saturation.fsh b/input/fsh/example-oxygen-saturation.fsh index 7ec61784..9dea1ed1 100644 --- a/input/fsh/example-oxygen-saturation.fsh +++ b/input/fsh/example-oxygen-saturation.fsh @@ -4,8 +4,12 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#59408-5 "Oxygen saturation" -* subject.reference = "Patient/BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" +* subject.identifier.system = $fhir +* subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" * component.code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" * component.valueQuantity = 98 '%' "%O2" -* device.reference = "Device/Byteflies Vital Signs" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) +* performer = Reference(byteflies) * effectiveDateTime = "2024-11-19T11:16:55+00:00" diff --git a/input/fsh/example-respiratory-rate.fsh b/input/fsh/example-respiratory-rate.fsh index b41d44a2..ade3949e 100644 --- a/input/fsh/example-respiratory-rate.fsh +++ b/input/fsh/example-respiratory-rate.fsh @@ -4,9 +4,13 @@ Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#9279-1 "Respiratory rate" -* subject.reference = "Patient/BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" +* subject.identifier.system = $fhir +* subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" * component.code = $loinc#9279-1 "Respiratory rate" * component.valueQuantity = 17.35 '/min' "breaths/minute" -* device.reference = "Device/Byteflies Vital Signs" +* contained[0] = vital-signs-box +* contained[+] = byteflies +* device = Reference(vital-signs-box) +* performer = Reference(byteflies) * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" diff --git a/input/fsh/vital-signs-box.fsh b/input/fsh/vital-signs-box.fsh new file mode 100644 index 00000000..c3054d09 --- /dev/null +++ b/input/fsh/vital-signs-box.fsh @@ -0,0 +1,8 @@ +Instance: vital-signs-box +InstanceOf: Device +Usage: #inline +* identifier.value = "240822yti3tgeyay" +* deviceName.name = "VS-4" +* deviceName.type = #other +* manufacturer = "Byteflies" +* meta.tag = https://api-vitalsigns.byteflies.net/version#20241028-1511 "API Version 20241028-1511" From db5ad29ccd856db9e0102f9705538ad0079af5af Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Mon, 25 Nov 2024 16:01:34 +0100 Subject: [PATCH 26/62] example abdominal pain --- input/fsh/aliases.fsh | 1 + input/fsh/example-abdominal-pain.fsh | 10 ++++++++++ 2 files changed, 11 insertions(+) create mode 100644 input/fsh/example-abdominal-pain.fsh diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index accabe44..06f297ec 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -2,3 +2,4 @@ Alias: $observation-category = http://terminology.hl7.org/CodeSystem/observation Alias: $loinc = http://loinc.org Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns Alias: $fhir = https://remecare.github.io/patient-monitoring/wip/ +Alias: $snomed = http://snomed.info/sct diff --git a/input/fsh/example-abdominal-pain.fsh b/input/fsh/example-abdominal-pain.fsh new file mode 100644 index 00000000..ec50d7a8 --- /dev/null +++ b/input/fsh/example-abdominal-pain.fsh @@ -0,0 +1,10 @@ +Instance: AbdominalPainExample +InstanceOf: $vitalsigns +Usage: #example +* status = #final +* code = $snomed#21522001 "Abdominal pain" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $loinc#LA10138-8 +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" From 66adc46b71343c67a52efca510c7d2731e42049a Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 16:05:17 +0100 Subject: [PATCH 27/62] example shortness of breath --- input/fsh/example-shortness-of-breath.fsh | 9 +++++++++ input/pagecontent/totem.md | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 input/fsh/example-shortness-of-breath.fsh diff --git a/input/fsh/example-shortness-of-breath.fsh b/input/fsh/example-shortness-of-breath.fsh new file mode 100644 index 00000000..ab4627a2 --- /dev/null +++ b/input/fsh/example-shortness-of-breath.fsh @@ -0,0 +1,9 @@ +Instance: ShortnessOfBreathExample +InstanceOf: Observation +Usage: #example +* status = #final +* code = $snomed#267036007 "Shortness of breath" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept = $snomed#373066001 +* effectiveDateTime = "2024-11-19T06:48:20+00:00" \ No newline at end of file diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index cce5dba0..c9f229a3 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -60,8 +60,8 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: - | Description | Code(s) | - | --------------------------| ------------------------ | + | Description | Code(s) | + | ------------------------- | ------------------------ | | Heart rate | LOINC 8867-4 | | Blood pressure | LOINC 8480-6 / 8463-4 | | Body weight | LOINC 29463-7 | From 1c358dc867d170474999d4d9791eb63093a7318a Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Mon, 25 Nov 2024 16:09:35 +0100 Subject: [PATCH 28/62] Fix errors in LOINC names --- input/fsh/example-blood-pressure.fsh | 2 +- input/fsh/example-oxygen-saturation.fsh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/example-blood-pressure.fsh b/input/fsh/example-blood-pressure.fsh index b86e3ead..0e911729 100644 --- a/input/fsh/example-blood-pressure.fsh +++ b/input/fsh/example-blood-pressure.fsh @@ -3,7 +3,7 @@ InstanceOf: $vitalsigns Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" -* code = $loinc#85354-9 "Blood pressure" +* code = $loinc#85354-9 "Blood pressure panel with all children optional" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * component[0].code = $loinc#8480-6 "Systolic blood pressure" diff --git a/input/fsh/example-oxygen-saturation.fsh b/input/fsh/example-oxygen-saturation.fsh index 9dea1ed1..85ab0fbf 100644 --- a/input/fsh/example-oxygen-saturation.fsh +++ b/input/fsh/example-oxygen-saturation.fsh @@ -3,7 +3,7 @@ InstanceOf: $vitalsigns Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" -* code = $loinc#59408-5 "Oxygen saturation" +* code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" * subject.identifier.system = $fhir * subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" * component.code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" From a5cf5b9c902260ff1b4b00ba9f83147e527a9f31 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 16:20:21 +0100 Subject: [PATCH 29/62] perfomer for example shortness of breath --- input/fsh/aliases.fsh | 1 + input/fsh/example-practitioner-role.fsh | 5 +++++ input/fsh/example-shortness-of-breath.fsh | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 input/fsh/example-practitioner-role.fsh diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index 06f297ec..4475fcbf 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -3,3 +3,4 @@ Alias: $loinc = http://loinc.org Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns Alias: $fhir = https://remecare.github.io/patient-monitoring/wip/ Alias: $snomed = http://snomed.info/sct +Alias: $cd-hcparty = https://www.ehealth.fgov.be/standards/fhir/core/CodeSystem/cd-hcparty \ No newline at end of file diff --git a/input/fsh/example-practitioner-role.fsh b/input/fsh/example-practitioner-role.fsh new file mode 100644 index 00000000..52003e8e --- /dev/null +++ b/input/fsh/example-practitioner-role.fsh @@ -0,0 +1,5 @@ +Instance: practitionerRole1 +InstanceOf: PractitionerRole +Usage: #example +* meta.profile = "https://www.ehealth.fgov.be/standards/fhir/core/StructureDefinition/be-practitionerrole" +* code = $cd-hcparty#persnurse \ No newline at end of file diff --git a/input/fsh/example-shortness-of-breath.fsh b/input/fsh/example-shortness-of-breath.fsh index ab4627a2..1f0ba146 100644 --- a/input/fsh/example-shortness-of-breath.fsh +++ b/input/fsh/example-shortness-of-breath.fsh @@ -6,4 +6,5 @@ Usage: #example * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * valueCodeableConcept = $snomed#373066001 -* effectiveDateTime = "2024-11-19T06:48:20+00:00" \ No newline at end of file +* effectiveDateTime = "2024-11-19T06:48:20+00:00" +* performer \ No newline at end of file From b67e8bda0138a226cba3448155c6f020ec1574be Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Mon, 25 Nov 2024 16:22:41 +0100 Subject: [PATCH 30/62] Update LOINC code for oxygen sat and renamed files --- input/fsh/{vital-signs-box.fsh => devices.fsh} | 0 input/fsh/example-oxygen-saturation.fsh | 2 +- input/fsh/{byteflies-organisation.fsh => organisations.fsh} | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename input/fsh/{vital-signs-box.fsh => devices.fsh} (100%) rename input/fsh/{byteflies-organisation.fsh => organisations.fsh} (100%) diff --git a/input/fsh/vital-signs-box.fsh b/input/fsh/devices.fsh similarity index 100% rename from input/fsh/vital-signs-box.fsh rename to input/fsh/devices.fsh diff --git a/input/fsh/example-oxygen-saturation.fsh b/input/fsh/example-oxygen-saturation.fsh index 85ab0fbf..c082f898 100644 --- a/input/fsh/example-oxygen-saturation.fsh +++ b/input/fsh/example-oxygen-saturation.fsh @@ -3,7 +3,7 @@ InstanceOf: $vitalsigns Usage: #example * status = #final * category = $observation-category#vital-signs "Vital Signs" -* code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" +* code = $loinc#2708-6 "Oxygen saturation in Arterial blood" * subject.identifier.system = $fhir * subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" * component.code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" diff --git a/input/fsh/byteflies-organisation.fsh b/input/fsh/organisations.fsh similarity index 100% rename from input/fsh/byteflies-organisation.fsh rename to input/fsh/organisations.fsh From 5b050d34316822900e6728f9171c8b153b16d1aa Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Mon, 25 Nov 2024 16:24:17 +0100 Subject: [PATCH 31/62] added performer to shortness of breath --- input/fsh/example-shortness-of-breath.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/example-shortness-of-breath.fsh b/input/fsh/example-shortness-of-breath.fsh index 1f0ba146..341845f0 100644 --- a/input/fsh/example-shortness-of-breath.fsh +++ b/input/fsh/example-shortness-of-breath.fsh @@ -7,4 +7,4 @@ Usage: #example * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * valueCodeableConcept = $snomed#373066001 * effectiveDateTime = "2024-11-19T06:48:20+00:00" -* performer \ No newline at end of file +* performer = Reference(practitionerRole1) \ No newline at end of file From cbf378dbb6062eb0a517f9b7eb692793c8eeb18b Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Mon, 25 Nov 2024 16:25:41 +0100 Subject: [PATCH 32/62] example abdominal pain update --- input/fsh/example-abdominal-pain.fsh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/input/fsh/example-abdominal-pain.fsh b/input/fsh/example-abdominal-pain.fsh index ec50d7a8..72d07044 100644 --- a/input/fsh/example-abdominal-pain.fsh +++ b/input/fsh/example-abdominal-pain.fsh @@ -1,5 +1,5 @@ Instance: AbdominalPainExample -InstanceOf: $vitalsigns +InstanceOf: Observation Usage: #example * status = #final * code = $snomed#21522001 "Abdominal pain" @@ -8,3 +8,4 @@ Usage: #example * valueCodeableConcept.coding = $loinc#LA10138-8 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* performer = Reference(practitionerRole1) From 944cb398ec1b9f89c351a61aead3c1cc7511823d Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Mon, 25 Nov 2024 16:35:38 +0100 Subject: [PATCH 33/62] contained performer --- input/fsh/example-abdominal-pain.fsh | 3 ++- input/fsh/example-shortness-of-breath.fsh | 3 ++- .../{example-practitioner-role.fsh => practitioner-roles.fsh} | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) rename input/fsh/{example-practitioner-role.fsh => practitioner-roles.fsh} (86%) diff --git a/input/fsh/example-abdominal-pain.fsh b/input/fsh/example-abdominal-pain.fsh index 72d07044..aeff766c 100644 --- a/input/fsh/example-abdominal-pain.fsh +++ b/input/fsh/example-abdominal-pain.fsh @@ -8,4 +8,5 @@ Usage: #example * valueCodeableConcept.coding = $loinc#LA10138-8 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" -* performer = Reference(practitionerRole1) +* contained[0] = nurse +* performer = Reference(nurse) diff --git a/input/fsh/example-shortness-of-breath.fsh b/input/fsh/example-shortness-of-breath.fsh index 341845f0..fe1cf65e 100644 --- a/input/fsh/example-shortness-of-breath.fsh +++ b/input/fsh/example-shortness-of-breath.fsh @@ -7,4 +7,5 @@ Usage: #example * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" * valueCodeableConcept = $snomed#373066001 * effectiveDateTime = "2024-11-19T06:48:20+00:00" -* performer = Reference(practitionerRole1) \ No newline at end of file +* contained[0] = nurse +* performer = Reference(nurse) \ No newline at end of file diff --git a/input/fsh/example-practitioner-role.fsh b/input/fsh/practitioner-roles.fsh similarity index 86% rename from input/fsh/example-practitioner-role.fsh rename to input/fsh/practitioner-roles.fsh index 52003e8e..31b6d9ef 100644 --- a/input/fsh/example-practitioner-role.fsh +++ b/input/fsh/practitioner-roles.fsh @@ -1,4 +1,4 @@ -Instance: practitionerRole1 +Instance: nurse InstanceOf: PractitionerRole Usage: #example * meta.profile = "https://www.ehealth.fgov.be/standards/fhir/core/StructureDefinition/be-practitionerrole" From 26904631a343f87a159160a59da26de9f0cb4b29 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Mon, 25 Nov 2024 16:43:57 +0100 Subject: [PATCH 34/62] nurse inline --- input/fsh/practitioner-roles.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/practitioner-roles.fsh b/input/fsh/practitioner-roles.fsh index 31b6d9ef..f7d8e24e 100644 --- a/input/fsh/practitioner-roles.fsh +++ b/input/fsh/practitioner-roles.fsh @@ -1,5 +1,5 @@ Instance: nurse InstanceOf: PractitionerRole -Usage: #example +Usage: #inline * meta.profile = "https://www.ehealth.fgov.be/standards/fhir/core/StructureDefinition/be-practitionerrole" * code = $cd-hcparty#persnurse \ No newline at end of file From 3c8c2aa823b8a5d385205c80a58aad86272329ed Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 10:20:53 +0100 Subject: [PATCH 35/62] structured parameters TOTeM --- input/pagecontent/totem.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index c9f229a3..58932c4a 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -60,6 +60,8 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: +###### General + | Description | Code(s) | | ------------------------- | ------------------------ | | Heart rate | LOINC 8867-4 | @@ -69,7 +71,6 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Saturation | LOINC 2708-6 | | Body temperature | LOINC 8310-5 | | Abdominal pain | SNOMEDCT 21522001 | - | Pain surgical wound | LOINC 72514-3 ?? | | Pain puncture wounds | LOINC 72514-3 ?? | | Pain during urination | SNOMEDCT 49650001 | | Pain in calves | SNOMEDCT 1264028004 | @@ -77,7 +78,6 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Well-being | SNOMEDCT 365275006 | | Flatulence | SNOMEDCT 249504006 | | Bowel movement | SNOMEDCT 39211005 | - | Distended abdomen | SNOMEDCT 60728008 | | Nausea | SNOMEDCT 422587007 | | Vomiting | SNOMEDCT 300359004 | | Water intake last 24h | LOINC 9007-6 | @@ -87,6 +87,18 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Pressure in chest | SNOMEDCT 23924001 | | Shortness of breath | SNOMEDCT 267036007 | | Walking daily | ?? | + +###### Colon surgery specific + + | Description | Code(s) | + | ------------------------- | ------------------------ | + | Pain surgical wound | LOINC 72514-3 ?? | + | Distended abdomen | SNOMEDCT 60728008 | + +###### Bariatric surgery specific + + | Description | Code(s) | + | ------------------------- | ------------------------ | | | Shoulder pain | LOINC 72514-3 ?? | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 731f2455607278d61d7976e5e1a4d01e4ce63c0b Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 10:56:40 +0100 Subject: [PATCH 36/62] reorganize examples --- .../example-shoulder-pain.fsh | 14 ++++++++++++++ .../example-distended-abdomen.fsh | 14 ++++++++++++++ .../example-pain-surgical-wound.fsh | 14 ++++++++++++++ input/fsh/{ => examples}/devices.fsh | 0 .../general}/example-abdominal-pain.fsh | 2 ++ .../general}/example-blood-pressure.fsh | 0 .../general}/example-body-temperature.fsh | 0 .../{ => examples/general}/example-body-weight.fsh | 0 .../{ => examples/general}/example-heart-rate.fsh | 0 .../general}/example-oxygen-saturation.fsh | 0 .../general}/example-respiratory-rate.fsh | 0 .../general}/example-shortness-of-breath.fsh | 2 ++ input/fsh/{ => examples}/organisations.fsh | 0 input/fsh/{ => examples}/practitioner-roles.fsh | 2 +- 14 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh create mode 100644 input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh create mode 100644 input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh rename input/fsh/{ => examples}/devices.fsh (100%) rename input/fsh/{ => examples/general}/example-abdominal-pain.fsh (80%) rename input/fsh/{ => examples/general}/example-blood-pressure.fsh (100%) rename input/fsh/{ => examples/general}/example-body-temperature.fsh (100%) rename input/fsh/{ => examples/general}/example-body-weight.fsh (100%) rename input/fsh/{ => examples/general}/example-heart-rate.fsh (100%) rename input/fsh/{ => examples/general}/example-oxygen-saturation.fsh (100%) rename input/fsh/{ => examples/general}/example-respiratory-rate.fsh (100%) rename input/fsh/{ => examples/general}/example-shortness-of-breath.fsh (76%) rename input/fsh/{ => examples}/organisations.fsh (100%) rename input/fsh/{ => examples}/practitioner-roles.fsh (81%) diff --git a/input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh b/input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh new file mode 100644 index 00000000..e2ab7ec8 --- /dev/null +++ b/input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh @@ -0,0 +1,14 @@ +Instance: ShoulderPainExample +InstanceOf: Observation +Usage: #example +Title: "Shoulder pain example" +Description: "Shoulder pain example description" //TODO: Needs description +* status = #final +* code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* contained[0] = nurse +* performer = Reference(nurse) diff --git a/input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh b/input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh new file mode 100644 index 00000000..d89334a0 --- /dev/null +++ b/input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh @@ -0,0 +1,14 @@ +Instance: DistendedAbdomenExample +InstanceOf: Observation +Usage: #example +Title: "Distended abdomen example" +Description: "Distended abdomen example description" //TODO: Needs description +* status = #final +* code = $snomed#60728008 "Swollen abdomen" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* contained[0] = nurse +* performer = Reference(nurse) diff --git a/input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh b/input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh new file mode 100644 index 00000000..d3456fc9 --- /dev/null +++ b/input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh @@ -0,0 +1,14 @@ +Instance: PainSurgicalWoundExample +InstanceOf: Observation +Usage: #example +Title: "Pain surgical wound example" +Description: "Pain surgical wound example description" //TODO: Needs description +* status = #final +* code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* contained[0] = nurse +* performer = Reference(nurse) diff --git a/input/fsh/devices.fsh b/input/fsh/examples/devices.fsh similarity index 100% rename from input/fsh/devices.fsh rename to input/fsh/examples/devices.fsh diff --git a/input/fsh/example-abdominal-pain.fsh b/input/fsh/examples/general/example-abdominal-pain.fsh similarity index 80% rename from input/fsh/example-abdominal-pain.fsh rename to input/fsh/examples/general/example-abdominal-pain.fsh index aeff766c..d0d1285d 100644 --- a/input/fsh/example-abdominal-pain.fsh +++ b/input/fsh/examples/general/example-abdominal-pain.fsh @@ -1,6 +1,8 @@ Instance: AbdominalPainExample InstanceOf: Observation Usage: #example +Title: "Abdominal pain example" +Description: "Abdominal pain example description" //TODO: Needs description * status = #final * code = $snomed#21522001 "Abdominal pain" * subject.identifier.system = $fhir diff --git a/input/fsh/example-blood-pressure.fsh b/input/fsh/examples/general/example-blood-pressure.fsh similarity index 100% rename from input/fsh/example-blood-pressure.fsh rename to input/fsh/examples/general/example-blood-pressure.fsh diff --git a/input/fsh/example-body-temperature.fsh b/input/fsh/examples/general/example-body-temperature.fsh similarity index 100% rename from input/fsh/example-body-temperature.fsh rename to input/fsh/examples/general/example-body-temperature.fsh diff --git a/input/fsh/example-body-weight.fsh b/input/fsh/examples/general/example-body-weight.fsh similarity index 100% rename from input/fsh/example-body-weight.fsh rename to input/fsh/examples/general/example-body-weight.fsh diff --git a/input/fsh/example-heart-rate.fsh b/input/fsh/examples/general/example-heart-rate.fsh similarity index 100% rename from input/fsh/example-heart-rate.fsh rename to input/fsh/examples/general/example-heart-rate.fsh diff --git a/input/fsh/example-oxygen-saturation.fsh b/input/fsh/examples/general/example-oxygen-saturation.fsh similarity index 100% rename from input/fsh/example-oxygen-saturation.fsh rename to input/fsh/examples/general/example-oxygen-saturation.fsh diff --git a/input/fsh/example-respiratory-rate.fsh b/input/fsh/examples/general/example-respiratory-rate.fsh similarity index 100% rename from input/fsh/example-respiratory-rate.fsh rename to input/fsh/examples/general/example-respiratory-rate.fsh diff --git a/input/fsh/example-shortness-of-breath.fsh b/input/fsh/examples/general/example-shortness-of-breath.fsh similarity index 76% rename from input/fsh/example-shortness-of-breath.fsh rename to input/fsh/examples/general/example-shortness-of-breath.fsh index fe1cf65e..34f1db6e 100644 --- a/input/fsh/example-shortness-of-breath.fsh +++ b/input/fsh/examples/general/example-shortness-of-breath.fsh @@ -1,6 +1,8 @@ Instance: ShortnessOfBreathExample InstanceOf: Observation Usage: #example +Title: "Shortness of breath example" +Description: "Shortness of breath example description" //TODO: Needs description * status = #final * code = $snomed#267036007 "Shortness of breath" * subject.identifier.system = $fhir diff --git a/input/fsh/organisations.fsh b/input/fsh/examples/organisations.fsh similarity index 100% rename from input/fsh/organisations.fsh rename to input/fsh/examples/organisations.fsh diff --git a/input/fsh/practitioner-roles.fsh b/input/fsh/examples/practitioner-roles.fsh similarity index 81% rename from input/fsh/practitioner-roles.fsh rename to input/fsh/examples/practitioner-roles.fsh index f7d8e24e..162453cd 100644 --- a/input/fsh/practitioner-roles.fsh +++ b/input/fsh/examples/practitioner-roles.fsh @@ -2,4 +2,4 @@ Instance: nurse InstanceOf: PractitionerRole Usage: #inline * meta.profile = "https://www.ehealth.fgov.be/standards/fhir/core/StructureDefinition/be-practitionerrole" -* code = $cd-hcparty#persnurse \ No newline at end of file +* code = $cd-hcparty#persnurse "Nurse" \ No newline at end of file From eda816333010d1e854f0b97cc2b809c2f739460e Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:04:12 +0100 Subject: [PATCH 37/62] other example structure --- .../example-distended-abdomen.fsh | 0 .../example-shortness-of-breath.fsh | 0 input/fsh/examples/{general => pain}/example-abdominal-pain.fsh | 0 .../example-pain-surgical-wound.fsh | 0 .../example-shoulder-pain.fsh | 0 .../examples/{general => vital-signs}/example-blood-pressure.fsh | 0 .../{general => vital-signs}/example-body-temperature.fsh | 0 .../fsh/examples/{general => vital-signs}/example-body-weight.fsh | 0 .../fsh/examples/{general => vital-signs}/example-heart-rate.fsh | 0 .../{general => vital-signs}/example-oxygen-saturation.fsh | 0 .../{general => vital-signs}/example-respiratory-rate.fsh | 0 11 files changed, 0 insertions(+), 0 deletions(-) rename input/fsh/examples/{colon surgery specific => other-qualitative}/example-distended-abdomen.fsh (100%) rename input/fsh/examples/{general => other-qualitative}/example-shortness-of-breath.fsh (100%) rename input/fsh/examples/{general => pain}/example-abdominal-pain.fsh (100%) rename input/fsh/examples/{colon surgery specific => pain}/example-pain-surgical-wound.fsh (100%) rename input/fsh/examples/{bariatric surgery specific => pain}/example-shoulder-pain.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-blood-pressure.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-body-temperature.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-body-weight.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-heart-rate.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-oxygen-saturation.fsh (100%) rename input/fsh/examples/{general => vital-signs}/example-respiratory-rate.fsh (100%) diff --git a/input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh similarity index 100% rename from input/fsh/examples/colon surgery specific/example-distended-abdomen.fsh rename to input/fsh/examples/other-qualitative/example-distended-abdomen.fsh diff --git a/input/fsh/examples/general/example-shortness-of-breath.fsh b/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh similarity index 100% rename from input/fsh/examples/general/example-shortness-of-breath.fsh rename to input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh diff --git a/input/fsh/examples/general/example-abdominal-pain.fsh b/input/fsh/examples/pain/example-abdominal-pain.fsh similarity index 100% rename from input/fsh/examples/general/example-abdominal-pain.fsh rename to input/fsh/examples/pain/example-abdominal-pain.fsh diff --git a/input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh b/input/fsh/examples/pain/example-pain-surgical-wound.fsh similarity index 100% rename from input/fsh/examples/colon surgery specific/example-pain-surgical-wound.fsh rename to input/fsh/examples/pain/example-pain-surgical-wound.fsh diff --git a/input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh b/input/fsh/examples/pain/example-shoulder-pain.fsh similarity index 100% rename from input/fsh/examples/bariatric surgery specific/example-shoulder-pain.fsh rename to input/fsh/examples/pain/example-shoulder-pain.fsh diff --git a/input/fsh/examples/general/example-blood-pressure.fsh b/input/fsh/examples/vital-signs/example-blood-pressure.fsh similarity index 100% rename from input/fsh/examples/general/example-blood-pressure.fsh rename to input/fsh/examples/vital-signs/example-blood-pressure.fsh diff --git a/input/fsh/examples/general/example-body-temperature.fsh b/input/fsh/examples/vital-signs/example-body-temperature.fsh similarity index 100% rename from input/fsh/examples/general/example-body-temperature.fsh rename to input/fsh/examples/vital-signs/example-body-temperature.fsh diff --git a/input/fsh/examples/general/example-body-weight.fsh b/input/fsh/examples/vital-signs/example-body-weight.fsh similarity index 100% rename from input/fsh/examples/general/example-body-weight.fsh rename to input/fsh/examples/vital-signs/example-body-weight.fsh diff --git a/input/fsh/examples/general/example-heart-rate.fsh b/input/fsh/examples/vital-signs/example-heart-rate.fsh similarity index 100% rename from input/fsh/examples/general/example-heart-rate.fsh rename to input/fsh/examples/vital-signs/example-heart-rate.fsh diff --git a/input/fsh/examples/general/example-oxygen-saturation.fsh b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh similarity index 100% rename from input/fsh/examples/general/example-oxygen-saturation.fsh rename to input/fsh/examples/vital-signs/example-oxygen-saturation.fsh diff --git a/input/fsh/examples/general/example-respiratory-rate.fsh b/input/fsh/examples/vital-signs/example-respiratory-rate.fsh similarity index 100% rename from input/fsh/examples/general/example-respiratory-rate.fsh rename to input/fsh/examples/vital-signs/example-respiratory-rate.fsh From db7fb0e8c970b9d2bc0bce3346d55aa3405c66a2 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:07:30 +0100 Subject: [PATCH 38/62] typo --- ...-surgical-wound.fsh => example-pain-surgical-wounds.fsh} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename input/fsh/examples/pain/{example-pain-surgical-wound.fsh => example-pain-surgical-wounds.fsh} (76%) diff --git a/input/fsh/examples/pain/example-pain-surgical-wound.fsh b/input/fsh/examples/pain/example-pain-surgical-wounds.fsh similarity index 76% rename from input/fsh/examples/pain/example-pain-surgical-wound.fsh rename to input/fsh/examples/pain/example-pain-surgical-wounds.fsh index d3456fc9..06d952b4 100644 --- a/input/fsh/examples/pain/example-pain-surgical-wound.fsh +++ b/input/fsh/examples/pain/example-pain-surgical-wounds.fsh @@ -1,8 +1,8 @@ -Instance: PainSurgicalWoundExample +Instance: PainSurgicalWoundsExample InstanceOf: Observation Usage: #example -Title: "Pain surgical wound example" -Description: "Pain surgical wound example description" //TODO: Needs description +Title: "Pain surgical wounds example" +Description: "Pain surgical wounds example description" //TODO: Needs description * status = #final * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir From 035c2d82cdb99794bef60772af209de7a97fb641 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:23:02 +0100 Subject: [PATCH 39/62] extra example --- .../pain/example-pain-during-urination.fsh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 input/fsh/examples/pain/example-pain-during-urination.fsh diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh new file mode 100644 index 00000000..17933b36 --- /dev/null +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -0,0 +1,14 @@ +Instance: PainDuringUrinationExample +InstanceOf: Observation +Usage: #example +Title: "Pain during urination example" +Description: "Pain during urination example description" //TODO: Needs description +* status = #final +* code = $snomed#49650001 "Urination painful" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $snomed#373066001 +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* contained[0] = nurse +* performer = Reference(nurse) From 2f34932a4cd98a3783719865145341072af0d0d0 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:26:57 +0100 Subject: [PATCH 40/62] urination example performer changes --- input/fsh/examples/pain/example-pain-during-urination.fsh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh index 17933b36..d6aca859 100644 --- a/input/fsh/examples/pain/example-pain-during-urination.fsh +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -11,4 +11,5 @@ Description: "Pain during urination example description" //TODO: Needs descripti * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse -* performer = Reference(nurse) +* performer.identifier.system = $fhir +* performer.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" From b5031ae3810bdec46de22cc61e792a9edbe3d2c6 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 11:27:41 +0100 Subject: [PATCH 41/62] updated distended abdomen example --- .../examples/other-qualitative/example-distended-abdomen.fsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh index d89334a0..9e4811eb 100644 --- a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh +++ b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh @@ -1,8 +1,8 @@ Instance: DistendedAbdomenExample InstanceOf: Observation Usage: #example -Title: "Distended abdomen example" -Description: "Distended abdomen example description" //TODO: Needs description +Title: "INCOMPLETE: Distended abdomen example" +Description: "NEEDS ATTENTION: Current answer options are no / a little / fierce. These cannot be found in LOINC or SNOMEDCT currently. Change answer options or request new LOINC codes. " //TODO: Needs description * status = #final * code = $snomed#60728008 "Swollen abdomen" * subject.identifier.system = $fhir From d61cd69ba15a346b3a5f2f0b1cc30e2059bef645 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:33:07 +0100 Subject: [PATCH 42/62] nurse removed as contained reference --- input/fsh/examples/pain/example-pain-during-urination.fsh | 1 - 1 file changed, 1 deletion(-) diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh index d6aca859..9e6388b7 100644 --- a/input/fsh/examples/pain/example-pain-during-urination.fsh +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -10,6 +10,5 @@ Description: "Pain during urination example description" //TODO: Needs descripti * valueCodeableConcept.coding = $snomed#373066001 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" -* contained[0] = nurse * performer.identifier.system = $fhir * performer.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" From cb04160c42c1d5f820fe4a9d9327f1cda045b82c Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 11:37:39 +0100 Subject: [PATCH 43/62] extra example --- input/fsh/examples/pain/example-pain-in-calves.fsh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 input/fsh/examples/pain/example-pain-in-calves.fsh diff --git a/input/fsh/examples/pain/example-pain-in-calves.fsh b/input/fsh/examples/pain/example-pain-in-calves.fsh new file mode 100644 index 00000000..615d2506 --- /dev/null +++ b/input/fsh/examples/pain/example-pain-in-calves.fsh @@ -0,0 +1,14 @@ +Instance: PainInCalvesExample +InstanceOf: Observation +Usage: #example +Title: "Pain in calves example" +Description: "Pain in calves example description" //TODO: Needs description +* status = #final +* code = $snomed#1264028004 "Pain in muscle of lower leg" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $snomed#373066001 +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* performer.identifier.system = $fhir +* performer.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" From 68fbf47924cac1e4a4015d44674721f379c0f427 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 11:50:03 +0100 Subject: [PATCH 44/62] description shortness of breath --- .../examples/other-qualitative/example-distended-abdomen.fsh | 2 +- .../examples/other-qualitative/example-shortness-of-breath.fsh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh index 9e4811eb..5569f1ab 100644 --- a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh +++ b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh @@ -2,7 +2,7 @@ Instance: DistendedAbdomenExample InstanceOf: Observation Usage: #example Title: "INCOMPLETE: Distended abdomen example" -Description: "NEEDS ATTENTION: Current answer options are no / a little / fierce. These cannot be found in LOINC or SNOMEDCT currently. Change answer options or request new LOINC codes. " //TODO: Needs description +Description: "NEEDS ATTENTION: Current answer options are no / a little / fierce. These cannot be found in LOINC or SNOMEDCT currently. Change answer options or request new LOINC codes." * status = #final * code = $snomed#60728008 "Swollen abdomen" * subject.identifier.system = $fhir diff --git a/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh b/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh index 34f1db6e..f28f4445 100644 --- a/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh +++ b/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh @@ -2,7 +2,7 @@ Instance: ShortnessOfBreathExample InstanceOf: Observation Usage: #example Title: "Shortness of breath example" -Description: "Shortness of breath example description" //TODO: Needs description +Description: "Answer options are yes / no " * status = #final * code = $snomed#267036007 "Shortness of breath" * subject.identifier.system = $fhir From c5c8513ad0c91938967fe354845e6ca0048451f4 Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Tue, 26 Nov 2024 11:54:39 +0100 Subject: [PATCH 45/62] Add initial description to vitalsigns examples --- input/fsh/examples/vital-signs/example-blood-pressure.fsh | 1 + input/fsh/examples/vital-signs/example-body-temperature.fsh | 1 + input/fsh/examples/vital-signs/example-body-weight.fsh | 1 + input/fsh/examples/vital-signs/example-heart-rate.fsh | 1 + input/fsh/examples/vital-signs/example-oxygen-saturation.fsh | 1 + input/fsh/examples/vital-signs/example-respiratory-rate.fsh | 1 + 6 files changed, 6 insertions(+) diff --git a/input/fsh/examples/vital-signs/example-blood-pressure.fsh b/input/fsh/examples/vital-signs/example-blood-pressure.fsh index 0e911729..df202e46 100644 --- a/input/fsh/examples/vital-signs/example-blood-pressure.fsh +++ b/input/fsh/examples/vital-signs/example-blood-pressure.fsh @@ -1,6 +1,7 @@ Instance: BloodPressureExample InstanceOf: $vitalsigns Usage: #example +Description: "Blood Pressure example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#85354-9 "Blood pressure panel with all children optional" diff --git a/input/fsh/examples/vital-signs/example-body-temperature.fsh b/input/fsh/examples/vital-signs/example-body-temperature.fsh index 8ebf06eb..6fd0a77c 100644 --- a/input/fsh/examples/vital-signs/example-body-temperature.fsh +++ b/input/fsh/examples/vital-signs/example-body-temperature.fsh @@ -1,6 +1,7 @@ Instance: BodyTemperatureExample InstanceOf: $vitalsigns Usage: #example +Description: "Temperature example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#8310-5 "Body Temperature" diff --git a/input/fsh/examples/vital-signs/example-body-weight.fsh b/input/fsh/examples/vital-signs/example-body-weight.fsh index 76c3fdac..1d81f29e 100644 --- a/input/fsh/examples/vital-signs/example-body-weight.fsh +++ b/input/fsh/examples/vital-signs/example-body-weight.fsh @@ -1,6 +1,7 @@ Instance: BodyWeightExample InstanceOf: $vitalsigns Usage: #example +Description: "Body Weight example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#29463-7 "Body Weight" diff --git a/input/fsh/examples/vital-signs/example-heart-rate.fsh b/input/fsh/examples/vital-signs/example-heart-rate.fsh index 38abb3c4..956b4605 100644 --- a/input/fsh/examples/vital-signs/example-heart-rate.fsh +++ b/input/fsh/examples/vital-signs/example-heart-rate.fsh @@ -1,6 +1,7 @@ Instance: HeartRateExample InstanceOf: $vitalsigns Usage: #example +Description: "Heart Rate example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#8867-4 "Heart rate" diff --git a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh index c082f898..5429bab6 100644 --- a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh +++ b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh @@ -1,6 +1,7 @@ Instance: OxygenSaturationExample InstanceOf: $vitalsigns Usage: #example +Description: "Oxygen saturation example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#2708-6 "Oxygen saturation in Arterial blood" diff --git a/input/fsh/examples/vital-signs/example-respiratory-rate.fsh b/input/fsh/examples/vital-signs/example-respiratory-rate.fsh index ade3949e..63766811 100644 --- a/input/fsh/examples/vital-signs/example-respiratory-rate.fsh +++ b/input/fsh/examples/vital-signs/example-respiratory-rate.fsh @@ -1,6 +1,7 @@ Instance: RespiratoryRateExample InstanceOf: $vitalsigns Usage: #example +Description: "Respiration example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" * code = $loinc#9279-1 "Respiratory rate" From c77f2d147d77e54d088ff991850ee37ec245e481 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 11:58:44 +0100 Subject: [PATCH 46/62] description abdominal pain --- input/fsh/examples/pain/example-abdominal-pain.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/examples/pain/example-abdominal-pain.fsh b/input/fsh/examples/pain/example-abdominal-pain.fsh index d0d1285d..d4c4ebd2 100644 --- a/input/fsh/examples/pain/example-abdominal-pain.fsh +++ b/input/fsh/examples/pain/example-abdominal-pain.fsh @@ -2,7 +2,7 @@ Instance: AbdominalPainExample InstanceOf: Observation Usage: #example Title: "Abdominal pain example" -Description: "Abdominal pain example description" //TODO: Needs description +Description: "Pain scale is used as answer." * status = #final * code = $snomed#21522001 "Abdominal pain" * subject.identifier.system = $fhir From 53c2216d53fa5f18a5d0e2cadda1590995bf1a1e Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 12:01:08 +0100 Subject: [PATCH 47/62] update shoulder pain example --- input/fsh/examples/pain/example-shoulder-pain.fsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/examples/pain/example-shoulder-pain.fsh b/input/fsh/examples/pain/example-shoulder-pain.fsh index e2ab7ec8..60861860 100644 --- a/input/fsh/examples/pain/example-shoulder-pain.fsh +++ b/input/fsh/examples/pain/example-shoulder-pain.fsh @@ -2,12 +2,12 @@ Instance: ShoulderPainExample InstanceOf: Observation Usage: #example Title: "Shoulder pain example" -Description: "Shoulder pain example description" //TODO: Needs description +Description: "Pain scale is used as answer." * status = #final * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* valueCodeableConcept.coding = $loinc#LA10138-8 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse From 8069086938d4798114234527e01e8db702ee3b78 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 12:02:55 +0100 Subject: [PATCH 48/62] markdown tables css --- input/pagecontent/ews.md | 1 + input/pagecontent/heartfailure.md | 1 + input/pagecontent/totem.md | 3 ++ .../package/content/assets/css/tables.css | 28 +++++++++++++++++++ .../includes/_append.fragment-css.html | 3 +- 5 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 local-template/package/content/assets/css/tables.css diff --git a/input/pagecontent/ews.md b/input/pagecontent/ews.md index e8ba5e07..e10d6c23 100644 --- a/input/pagecontent/ews.md +++ b/input/pagecontent/ews.md @@ -67,6 +67,7 @@ - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: +<div class="table-md"></div> | Description | LOINC Code(s) | | ------------------------------------ | --------------------- | diff --git a/input/pagecontent/heartfailure.md b/input/pagecontent/heartfailure.md index 2224a1f3..4ab14634 100644 --- a/input/pagecontent/heartfailure.md +++ b/input/pagecontent/heartfailure.md @@ -59,6 +59,7 @@ - **Frequency**: Maximum of 5 updates per day, on average 1 update per day (per measurement). - **LOINC Codes**: +<div class="table-md"></div> | Description | LOINC Code(s) | | ------------------------------- | --------------------- | diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index 58932c4a..ed6fb4ec 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -61,6 +61,7 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou - **LOINC Codes**: ###### General +<div class="table-md"></div> | Description | Code(s) | | ------------------------- | ------------------------ | @@ -89,6 +90,7 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Walking daily | ?? | ###### Colon surgery specific +<div class="table-md"></div> | Description | Code(s) | | ------------------------- | ------------------------ | @@ -96,6 +98,7 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Distended abdomen | SNOMEDCT 60728008 | ###### Bariatric surgery specific +<div class="table-md"></div> | Description | Code(s) | | ------------------------- | ------------------------ | | diff --git a/local-template/package/content/assets/css/tables.css b/local-template/package/content/assets/css/tables.css new file mode 100644 index 00000000..b67e496a --- /dev/null +++ b/local-template/package/content/assets/css/tables.css @@ -0,0 +1,28 @@ +/* markdown table */ + +div.table-md + table{ + margin-bottom: 10px; + margin-right: auto; + } + + div.table-md + table th { + border:1px solid silver; + padding:3px 7px 2px 7px !important; + font-size: 12px; + line-height: 1.4em; + font-family: verdana; + font-weight: bold; + padding: 3px; + vertical-align: top; + } + + div.table-md + table td { + border:1px solid silver; + padding:3px 7px 2px 7px !important; + font-size: 12px; + line-height: 1.4em; + font-family: verdana; + font-weight: normal; + padding: 3px; + vertical-align: top; + } \ No newline at end of file diff --git a/local-template/package/includes/_append.fragment-css.html b/local-template/package/includes/_append.fragment-css.html index 9ae66e47..6138bb28 100644 --- a/local-template/package/includes/_append.fragment-css.html +++ b/local-template/package/includes/_append.fragment-css.html @@ -1,2 +1,3 @@ <!-- Placeholder for child template CSS declarations --> -<link href="{{site.data.info.assets}}assets/css/colors.css" rel="stylesheet"/> \ No newline at end of file +<link href="{{site.data.info.assets}}assets/css/colors.css" rel="stylesheet"/> +<link href="{{site.data.info.assets}}assets/css/tables.css" rel="stylesheet"/> From 71038436a49f0e25900dd3020f1625f177de5e9e Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 12:03:39 +0100 Subject: [PATCH 49/62] update shoulder pain --- input/fsh/examples/pain/example-shoulder-pain.fsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/examples/pain/example-shoulder-pain.fsh b/input/fsh/examples/pain/example-shoulder-pain.fsh index 60861860..85301e42 100644 --- a/input/fsh/examples/pain/example-shoulder-pain.fsh +++ b/input/fsh/examples/pain/example-shoulder-pain.fsh @@ -1,8 +1,8 @@ Instance: ShoulderPainExample InstanceOf: Observation Usage: #example -Title: "Shoulder pain example" -Description: "Pain scale is used as answer." +Title: "INCOMPLETE: Shoulder pain example" +Description: "NEEDS ATTENTION: No LOINC or SNOMEDCT code currently exists for shoulder pain. Pain scale is used as answer." * status = #final * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir From 2c8bb49fa9662636a2b224b31783ed4637daa57e Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 12:12:14 +0100 Subject: [PATCH 50/62] description pain during urination --- input/fsh/examples/pain/example-pain-during-urination.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh index 9e6388b7..3c818318 100644 --- a/input/fsh/examples/pain/example-pain-during-urination.fsh +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -2,7 +2,7 @@ Instance: PainDuringUrinationExample InstanceOf: Observation Usage: #example Title: "Pain during urination example" -Description: "Pain during urination example description" //TODO: Needs description +Description: "Possible answers are yes or no" * status = #final * code = $snomed#49650001 "Urination painful" * subject.identifier.system = $fhir From 76a2742ddab068da14c7b9b640dd9c601d361724 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 12:19:21 +0100 Subject: [PATCH 51/62] description pain in calves --- input/fsh/examples/pain/example-pain-in-calves.fsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/input/fsh/examples/pain/example-pain-in-calves.fsh b/input/fsh/examples/pain/example-pain-in-calves.fsh index 615d2506..dbf62b92 100644 --- a/input/fsh/examples/pain/example-pain-in-calves.fsh +++ b/input/fsh/examples/pain/example-pain-in-calves.fsh @@ -2,7 +2,7 @@ Instance: PainInCalvesExample InstanceOf: Observation Usage: #example Title: "Pain in calves example" -Description: "Pain in calves example description" //TODO: Needs description +Description: "Answer optiona are yes and no" * status = #final * code = $snomed#1264028004 "Pain in muscle of lower leg" * subject.identifier.system = $fhir From 9dcb39c6bdf0de9eaf152fa6f894dc57b9004b46 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 13:23:23 +0100 Subject: [PATCH 52/62] added RC parameters to EWS --- input/pagecontent/ews.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/input/pagecontent/ews.md b/input/pagecontent/ews.md index e10d6c23..987e58ae 100644 --- a/input/pagecontent/ews.md +++ b/input/pagecontent/ews.md @@ -69,7 +69,7 @@ - **LOINC Codes**: <div class="table-md"></div> - | Description | LOINC Code(s) | + | Description | Code(s) | | ------------------------------------ | --------------------- | | Heart rate (HR) measurement | LOINC 8867-4 | | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | @@ -77,6 +77,8 @@ | Respiratory (RESP) measurement | LOINC 9279-1 | | Temperature (TEMP) measurement | LOINC 8310-5 | | Oxygen Saturation (SPO2) measurement | LOINC 59408-5 | + | Level of responsiveness (AVPU scale) | LOINC 67775-7 | + | National Early Warning Score (NEWS) | SNOMED 1287358002 | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. @@ -90,5 +92,5 @@ For detailed specifications, refer to the - [Oxygen Saturation Example](./Observation-OxygenSaturationExample.html) - [Respiratory Rate Example](./Observation-RespiratoryRateExample.html) - [Temperature Example](./Observation-BodyTemperatureExample.html) - +//- TODO add examples AVPU and NEWS These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 595f51efb8a9725ba7f75c8d537431b795e181ed Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 13:32:45 +0100 Subject: [PATCH 53/62] added possible answers to EWS --- input/pagecontent/ews.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/input/pagecontent/ews.md b/input/pagecontent/ews.md index 987e58ae..dd4417f8 100644 --- a/input/pagecontent/ews.md +++ b/input/pagecontent/ews.md @@ -69,16 +69,16 @@ - **LOINC Codes**: <div class="table-md"></div> - | Description | Code(s) | - | ------------------------------------ | --------------------- | - | Heart rate (HR) measurement | LOINC 8867-4 | - | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | - | Body weight (BW) measurement | LOINC 29463-7 | - | Respiratory (RESP) measurement | LOINC 9279-1 | - | Temperature (TEMP) measurement | LOINC 8310-5 | - | Oxygen Saturation (SPO2) measurement | LOINC 59408-5 | - | Level of responsiveness (AVPU scale) | LOINC 67775-7 | - | National Early Warning Score (NEWS) | SNOMED 1287358002 | + | Description | Code(s) | Possible answers | + | ------------------------------------ | --------------------- | -------------------- | + | Heart rate (HR) measurement | LOINC 8867-4 | | + | Blood pressure (BP) measurement | LOINC 8480-6 / 8463-4 | | + | Body weight (BW) measurement | LOINC 29463-7 | | + | Respiratory (RESP) measurement | LOINC 9279-1 | | + | Temperature (TEMP) measurement | LOINC 8310-5 | | + | Oxygen Saturation (SPO2) measurement | LOINC 59408-5 | | + | Level of responsiveness (AVPU scale) | LOINC 67775-7 | LOINC LL1845-8 | + | National Early Warning Score (NEWS) | SNOMED 1287358002 | | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 874e30b9b5ae66e580d4a9356af512687855df11 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 13:41:38 +0100 Subject: [PATCH 54/62] example changes --- .../example-shortness-of-breath.fsh | 2 +- input/fsh/examples/pain/example-abdominal-pain.fsh | 2 +- .../pain/example-pain-during-urination.fsh | 2 +- input/fsh/examples/pain/example-pain-in-calves.fsh | 2 +- .../pain/example-pain-medication-taken.fsh | 14 ++++++++++++++ 5 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 input/fsh/examples/pain/example-pain-medication-taken.fsh diff --git a/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh b/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh index f28f4445..1735d282 100644 --- a/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh +++ b/input/fsh/examples/other-qualitative/example-shortness-of-breath.fsh @@ -2,7 +2,7 @@ Instance: ShortnessOfBreathExample InstanceOf: Observation Usage: #example Title: "Shortness of breath example" -Description: "Answer options are yes / no " +Description: "Possible answers are yes and no" * status = #final * code = $snomed#267036007 "Shortness of breath" * subject.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-abdominal-pain.fsh b/input/fsh/examples/pain/example-abdominal-pain.fsh index d4c4ebd2..af5f7257 100644 --- a/input/fsh/examples/pain/example-abdominal-pain.fsh +++ b/input/fsh/examples/pain/example-abdominal-pain.fsh @@ -2,7 +2,7 @@ Instance: AbdominalPainExample InstanceOf: Observation Usage: #example Title: "Abdominal pain example" -Description: "Pain scale is used as answer." +Description: "Pain scale is used as answer" * status = #final * code = $snomed#21522001 "Abdominal pain" * subject.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh index 3c818318..472d2a9a 100644 --- a/input/fsh/examples/pain/example-pain-during-urination.fsh +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -2,7 +2,7 @@ Instance: PainDuringUrinationExample InstanceOf: Observation Usage: #example Title: "Pain during urination example" -Description: "Possible answers are yes or no" +Description: "Possible answers are yes and no" * status = #final * code = $snomed#49650001 "Urination painful" * subject.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-in-calves.fsh b/input/fsh/examples/pain/example-pain-in-calves.fsh index dbf62b92..9817783d 100644 --- a/input/fsh/examples/pain/example-pain-in-calves.fsh +++ b/input/fsh/examples/pain/example-pain-in-calves.fsh @@ -2,7 +2,7 @@ Instance: PainInCalvesExample InstanceOf: Observation Usage: #example Title: "Pain in calves example" -Description: "Answer optiona are yes and no" +Description: "Possible answers are yes and no" * status = #final * code = $snomed#1264028004 "Pain in muscle of lower leg" * subject.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-medication-taken.fsh b/input/fsh/examples/pain/example-pain-medication-taken.fsh new file mode 100644 index 00000000..ec12ddd9 --- /dev/null +++ b/input/fsh/examples/pain/example-pain-medication-taken.fsh @@ -0,0 +1,14 @@ +Instance: PainMedicationTakenExample +InstanceOf: Observation +Usage: #example +Title: "INCOMPLETE: Pain medication taken example" +Description: "NEEDS ATTENTION: No LOINC or SNOMEDCT code currently exists for Pain medication taken. Change answer options or request new LOINC codes." +* status = #final +* code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Find out which valueset to use +* effectivePeriod.start = "2024-11-15T09:56:00+00:00" +* effectivePeriod.end = "2024-11-15T09:57:00+00:00" +* performer.identifier.system = $fhir +* performer.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" From 0c8876f51f1ac9210475b7432899ea7733273a25 Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 14:26:08 +0100 Subject: [PATCH 55/62] added answer options to TOTeM --- input/pagecontent/totem.md | 67 ++++++++++++++++++++------------------ 1 file changed, 35 insertions(+), 32 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index ed6fb4ec..1a3d641f 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -63,46 +63,49 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou ###### General <div class="table-md"></div> - | Description | Code(s) | - | ------------------------- | ------------------------ | - | Heart rate | LOINC 8867-4 | - | Blood pressure | LOINC 8480-6 / 8463-4 | - | Body weight | LOINC 29463-7 | - | Respiratory rate | LOINC 9279-1 | - | Saturation | LOINC 2708-6 | - | Body temperature | LOINC 8310-5 | - | Abdominal pain | SNOMEDCT 21522001 | - | Pain puncture wounds | LOINC 72514-3 ?? | - | Pain during urination | SNOMEDCT 49650001 | - | Pain in calves | SNOMEDCT 1264028004 | - | Pain medication taken | ?? | - | Well-being | SNOMEDCT 365275006 | - | Flatulence | SNOMEDCT 249504006 | - | Bowel movement | SNOMEDCT 39211005 | - | Nausea | SNOMEDCT 422587007 | - | Vomiting | SNOMEDCT 300359004 | - | Water intake last 24h | LOINC 9007-6 | - | Meals last 24h | ?? | - | Coughing | SNOMEDCT 263731006 | - | Product cough | SNOMEDCT 28743005 | - | Pressure in chest | SNOMEDCT 23924001 | - | Shortness of breath | SNOMEDCT 267036007 | - | Walking daily | ?? | + | Description | Code(s) | Possible answers | + | ------------------------- | ------------------------ | -------------------- | + | Heart rate | LOINC 8867-4 | | + | Blood pressure | LOINC 8480-6 / 8463-4 | | + | Body weight | LOINC 29463-7 | | + | Respiratory rate | LOINC 9279-1 | | + | Saturation | LOINC 2708-6 | | + | Body temperature | LOINC 8310-5 | | + | Abdominal pain | SNOMEDCT 21522001 | LOINC 72514-3 | + | Pain puncture wounds | LOINC 72514-3 ?? | LOINC 72514-3 | + | Pain during urination | SNOMEDCT 49650001 | SNOMED 373066001 - ??| + | Pain in calves | SNOMEDCT 1264028004 | SNOMED 373066001 - ??| + | Pain medication taken | ?? | ?? | + | Well-being | SNOMEDCT 365275006 | ?? | + | Flatulence | SNOMEDCT 249504006 | | + | Bowel movement | SNOMEDCT 39211005 | | + | Nausea | SNOMEDCT 422587007 | | + | Vomiting | SNOMEDCT 300359004 | | + | Water intake last 24h | LOINC 9007-6 | | + | Meals last 24h | ?? | | + | Coughing | SNOMEDCT 263731006 | | + | Product cough | SNOMEDCT 28743005 | | + | Pressure in chest | SNOMEDCT 23924001 | | + | Shortness of breath | SNOMEDCT 267036007 | | + | Walking daily | ?? | | + | Wound appearance | | SNOMED 17621005 - ???| + | Concern about patient | ?? | SNOMED 373066001 - ??| + | Fraxiparine | ?? | | ###### Colon surgery specific <div class="table-md"></div> - | Description | Code(s) | - | ------------------------- | ------------------------ | - | Pain surgical wound | LOINC 72514-3 ?? | - | Distended abdomen | SNOMEDCT 60728008 | + | Description | Code(s) | Possible answers | + | ------------------------- | ------------------------ | ---------------------| + | Pain surgical wound | LOINC 72514-3 ?? | LOINC 72514-3 | + | Distended abdomen | SNOMEDCT 60728008 | | ###### Bariatric surgery specific <div class="table-md"></div> - | Description | Code(s) | - | ------------------------- | ------------------------ | | - | Shoulder pain | LOINC 72514-3 ?? | + | Description | Code(s) | Possible answers | + | ------------------------- | ------------------------ | ---------------------| + | Shoulder pain | LOINC 72514-3 ?? | | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 31115d7786f430db19638e8a907b398718af9d1b Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 14:48:24 +0100 Subject: [PATCH 56/62] extra examples + fix vitalsigns examples value --- input/fsh/aliases.fsh | 3 ++- .../other-qualitative/example-distended-abdomen.fsh | 2 +- .../example-level-of-responsiveness.fsh | 13 +++++++++++++ .../example-national-early-warning-score.fsh | 13 +++++++++++++ input/fsh/examples/pain/example-abdominal-pain.fsh | 2 +- .../examples/pain/example-pain-during-urination.fsh | 2 +- input/fsh/examples/pain/example-pain-in-calves.fsh | 2 +- .../examples/pain/example-pain-medication-taken.fsh | 2 +- .../examples/pain/example-pain-surgical-wounds.fsh | 2 +- input/fsh/examples/pain/example-shoulder-pain.fsh | 2 +- .../vital-signs/example-body-temperature.fsh | 4 ++-- .../examples/vital-signs/example-body-weight.fsh | 4 ++-- .../fsh/examples/vital-signs/example-heart-rate.fsh | 4 ++-- .../vital-signs/example-oxygen-saturation.fsh | 4 ++-- .../vital-signs/example-respiratory-rate.fsh | 4 ++-- input/pagecontent/ews.md | 5 +++-- 16 files changed, 48 insertions(+), 20 deletions(-) create mode 100644 input/fsh/examples/other-qualitative/example-level-of-responsiveness.fsh create mode 100644 input/fsh/examples/other-quantitative/example-national-early-warning-score.fsh diff --git a/input/fsh/aliases.fsh b/input/fsh/aliases.fsh index 4475fcbf..dc14dd45 100644 --- a/input/fsh/aliases.fsh +++ b/input/fsh/aliases.fsh @@ -3,4 +3,5 @@ Alias: $loinc = http://loinc.org Alias: $vitalsigns = http://hl7.org/fhir/StructureDefinition/vitalsigns Alias: $fhir = https://remecare.github.io/patient-monitoring/wip/ Alias: $snomed = http://snomed.info/sct -Alias: $cd-hcparty = https://www.ehealth.fgov.be/standards/fhir/core/CodeSystem/cd-hcparty \ No newline at end of file +Alias: $cd-hcparty = https://www.ehealth.fgov.be/standards/fhir/core/CodeSystem/cd-hcparty +Alias: $UCUM = http://unitsofmeasure.org \ No newline at end of file diff --git a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh index 5569f1ab..600c6cd9 100644 --- a/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh +++ b/input/fsh/examples/other-qualitative/example-distended-abdomen.fsh @@ -7,7 +7,7 @@ Description: "NEEDS ATTENTION: Current answer options are no / a little / fierce * code = $snomed#60728008 "Swollen abdomen" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* valueCodeableConcept = $loinc#LA10138-8 //TODO: Needs correct value * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse diff --git a/input/fsh/examples/other-qualitative/example-level-of-responsiveness.fsh b/input/fsh/examples/other-qualitative/example-level-of-responsiveness.fsh new file mode 100644 index 00000000..fc5bac5a --- /dev/null +++ b/input/fsh/examples/other-qualitative/example-level-of-responsiveness.fsh @@ -0,0 +1,13 @@ +Instance: LevelOfResponsivenessExample +InstanceOf: Observation +Usage: #example +Title: "Level of responsiveness example" +Description: "Level of responsiveness (AVPU scale)" +* status = #final +* code = $loinc#67775-7 "Level of responsiveness" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueCodeableConcept = $loinc#LA17108-4 +* effectiveDateTime = "2024-11-19T06:48:20+00:00" +* contained[0] = nurse +* performer = Reference(nurse) \ No newline at end of file diff --git a/input/fsh/examples/other-quantitative/example-national-early-warning-score.fsh b/input/fsh/examples/other-quantitative/example-national-early-warning-score.fsh new file mode 100644 index 00000000..abfba72f --- /dev/null +++ b/input/fsh/examples/other-quantitative/example-national-early-warning-score.fsh @@ -0,0 +1,13 @@ +Instance: NationalEarlyWarningScoreExample +InstanceOf: Observation +Usage: #example +Title: "National Early Warning Score example" +Description: "National Early Warning Score (NEWS)" +* status = #final +* code = $snomed#1287358002 "National Early Warning Score" +* subject.identifier.system = $fhir +* subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" +* valueQuantity.value = 6 +* effectiveDateTime = "2024-11-19T06:48:20+00:00" +* contained[0] = nurse +* performer = Reference(nurse) \ No newline at end of file diff --git a/input/fsh/examples/pain/example-abdominal-pain.fsh b/input/fsh/examples/pain/example-abdominal-pain.fsh index af5f7257..efe7587b 100644 --- a/input/fsh/examples/pain/example-abdominal-pain.fsh +++ b/input/fsh/examples/pain/example-abdominal-pain.fsh @@ -7,7 +7,7 @@ Description: "Pain scale is used as answer" * code = $snomed#21522001 "Abdominal pain" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 +* valueCodeableConcept = $loinc#LA10138-8 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse diff --git a/input/fsh/examples/pain/example-pain-during-urination.fsh b/input/fsh/examples/pain/example-pain-during-urination.fsh index 472d2a9a..00bd3119 100644 --- a/input/fsh/examples/pain/example-pain-during-urination.fsh +++ b/input/fsh/examples/pain/example-pain-during-urination.fsh @@ -7,7 +7,7 @@ Description: "Possible answers are yes and no" * code = $snomed#49650001 "Urination painful" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $snomed#373066001 +* valueCodeableConcept = $snomed#373066001 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * performer.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-in-calves.fsh b/input/fsh/examples/pain/example-pain-in-calves.fsh index 9817783d..79788f2b 100644 --- a/input/fsh/examples/pain/example-pain-in-calves.fsh +++ b/input/fsh/examples/pain/example-pain-in-calves.fsh @@ -7,7 +7,7 @@ Description: "Possible answers are yes and no" * code = $snomed#1264028004 "Pain in muscle of lower leg" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $snomed#373066001 +* valueCodeableConcept = $snomed#373066001 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * performer.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-medication-taken.fsh b/input/fsh/examples/pain/example-pain-medication-taken.fsh index ec12ddd9..fd3b0700 100644 --- a/input/fsh/examples/pain/example-pain-medication-taken.fsh +++ b/input/fsh/examples/pain/example-pain-medication-taken.fsh @@ -7,7 +7,7 @@ Description: "NEEDS ATTENTION: No LOINC or SNOMEDCT code currently exists for Pa * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Find out which valueset to use +* valueCodeableConcept = $loinc#LA10138-8 //TODO: Find out which valueset to use * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * performer.identifier.system = $fhir diff --git a/input/fsh/examples/pain/example-pain-surgical-wounds.fsh b/input/fsh/examples/pain/example-pain-surgical-wounds.fsh index 06d952b4..ae17a394 100644 --- a/input/fsh/examples/pain/example-pain-surgical-wounds.fsh +++ b/input/fsh/examples/pain/example-pain-surgical-wounds.fsh @@ -7,7 +7,7 @@ Description: "Pain surgical wounds example description" //TODO: Needs descriptio * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 //TODO: Needs correct value +* valueCodeableConcept = $loinc#LA10138-8 //TODO: Needs correct value * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse diff --git a/input/fsh/examples/pain/example-shoulder-pain.fsh b/input/fsh/examples/pain/example-shoulder-pain.fsh index 85301e42..7facc325 100644 --- a/input/fsh/examples/pain/example-shoulder-pain.fsh +++ b/input/fsh/examples/pain/example-shoulder-pain.fsh @@ -7,7 +7,7 @@ Description: "NEEDS ATTENTION: No LOINC or SNOMEDCT code currently exists for sh * code = $loinc#72514-3 "Pain severity - 0-10 verbal numeric rating [Score] - Reported" //TODO: Needs correct code * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* valueCodeableConcept.coding = $loinc#LA10138-8 +* valueCodeableConcept = $loinc#LA10138-8 * effectivePeriod.start = "2024-11-15T09:56:00+00:00" * effectivePeriod.end = "2024-11-15T09:57:00+00:00" * contained[0] = nurse diff --git a/input/fsh/examples/vital-signs/example-body-temperature.fsh b/input/fsh/examples/vital-signs/example-body-temperature.fsh index 6fd0a77c..2a611047 100644 --- a/input/fsh/examples/vital-signs/example-body-temperature.fsh +++ b/input/fsh/examples/vital-signs/example-body-temperature.fsh @@ -7,8 +7,8 @@ Description: "Temperature example" //TODO: Needs description * code = $loinc#8310-5 "Body Temperature" * subject.identifier.system = $fhir * subject.identifier.value = "EFD5E060-9522-48BE-9ECC-3BFA54EA3666" -* component.code = $loinc#8310-5 "Body Temperature" -* component.valueQuantity = 35.29 'Cel' "C" +* valueQuantity.value = 35.29 +* valueQuantity = $UCUM#Cel "C" * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) diff --git a/input/fsh/examples/vital-signs/example-body-weight.fsh b/input/fsh/examples/vital-signs/example-body-weight.fsh index 1d81f29e..6971f583 100644 --- a/input/fsh/examples/vital-signs/example-body-weight.fsh +++ b/input/fsh/examples/vital-signs/example-body-weight.fsh @@ -7,8 +7,8 @@ Description: "Body Weight example" //TODO: Needs description * code = $loinc#29463-7 "Body Weight" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* component.code = $loinc#29463-7 "Body weight" -* component.valueQuantity = 89.3 'kg' "kg" +* valueQuantity.value = 89.3 +* valueQuantity = $UCUM#kg "kg" * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) diff --git a/input/fsh/examples/vital-signs/example-heart-rate.fsh b/input/fsh/examples/vital-signs/example-heart-rate.fsh index 956b4605..7b52feb8 100644 --- a/input/fsh/examples/vital-signs/example-heart-rate.fsh +++ b/input/fsh/examples/vital-signs/example-heart-rate.fsh @@ -7,8 +7,8 @@ Description: "Heart Rate example" //TODO: Needs description * code = $loinc#8867-4 "Heart rate" * subject.identifier.system = $fhir * subject.identifier.value = "D358D4B4-6007-4C3E-A33B-056773F45DC9" -* component.code = $loinc#8867-4 "Heart rate" -* component.valueQuantity = 78 '/min' "beats/min" +* valueQuantity.value = 78 +* valueQuantity = $UCUM#/min "/min" * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) diff --git a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh index 5429bab6..741dad85 100644 --- a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh +++ b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh @@ -7,8 +7,8 @@ Description: "Oxygen saturation example" //TODO: Needs description * code = $loinc#2708-6 "Oxygen saturation in Arterial blood" * subject.identifier.system = $fhir * subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" -* component.code = $loinc#59408-5 "Oxygen saturation in Arterial blood by Pulse oximetry" -* component.valueQuantity = 98 '%' "%O2" +* valueQuantity.value = 98 +* valueQuantity = $UCUM#% "%O2" * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) diff --git a/input/fsh/examples/vital-signs/example-respiratory-rate.fsh b/input/fsh/examples/vital-signs/example-respiratory-rate.fsh index 63766811..73593262 100644 --- a/input/fsh/examples/vital-signs/example-respiratory-rate.fsh +++ b/input/fsh/examples/vital-signs/example-respiratory-rate.fsh @@ -7,8 +7,8 @@ Description: "Respiration example" //TODO: Needs description * code = $loinc#9279-1 "Respiratory rate" * subject.identifier.system = $fhir * subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" -* component.code = $loinc#9279-1 "Respiratory rate" -* component.valueQuantity = 17.35 '/min' "breaths/minute" +* valueQuantity.value = 17.35 +* valueQuantity = $UCUM#/min "breaths/minute" * contained[0] = vital-signs-box * contained[+] = byteflies * device = Reference(vital-signs-box) diff --git a/input/pagecontent/ews.md b/input/pagecontent/ews.md index dd4417f8..644bea2f 100644 --- a/input/pagecontent/ews.md +++ b/input/pagecontent/ews.md @@ -92,5 +92,6 @@ For detailed specifications, refer to the - [Oxygen Saturation Example](./Observation-OxygenSaturationExample.html) - [Respiratory Rate Example](./Observation-RespiratoryRateExample.html) - [Temperature Example](./Observation-BodyTemperatureExample.html) -//- TODO add examples AVPU and NEWS -These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. +- [Level of responsiveness Example](./Observation-LevelOfResponsivenessExample.html) +- [National Early Warning Score Example](./Observation-NationalEarlyWarningScoreExample.html) + From ce28ad9b133193fe12a23f415605688582d8c298 Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Tue, 26 Nov 2024 14:58:33 +0100 Subject: [PATCH 57/62] Extra LOINC code for oxygen saturation --- .../fsh/examples/vital-signs/example-oxygen-saturation.fsh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh index 741dad85..36c3e644 100644 --- a/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh +++ b/input/fsh/examples/vital-signs/example-oxygen-saturation.fsh @@ -4,7 +4,12 @@ Usage: #example Description: "Oxygen saturation example" //TODO: Needs description * status = #final * category = $observation-category#vital-signs "Vital Signs" -* code = $loinc#2708-6 "Oxygen saturation in Arterial blood" +* code.coding[0].system = $loinc +* code.coding[0].code = #2708-6 +* code.coding[0].display = "Oxygen saturation in Arterial blood" +* code.coding[+].system = $loinc +* code.coding[=].code = #59408-5 +* code.coding[=].display = "Oxygen saturation in Arterial blood by Pulse oximetry" * subject.identifier.system = $fhir * subject.identifier.value = "BE84DC42-2B5D-464C-AFFD-57DB87BD7D48" * valueQuantity.value = 98 From 7c7024f9d5d31239b61872075b8d9726411df7f0 Mon Sep 17 00:00:00 2001 From: nickgarrard <nick.garrard@remecare.eu> Date: Tue, 26 Nov 2024 15:20:02 +0100 Subject: [PATCH 58/62] example links --- input/pagecontent/totem.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index 1a3d641f..d5a298f5 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -113,6 +113,29 @@ These FHIR modules ensure standardized data exchange between systems and guarant For detailed specifications, refer to the +- [Heart Rate Example](./Observation-HeartRateExample.html) - [Blood Pressure Example](./Observation-BloodPressureExample.html) - [Weight Example](./Observation-BodyWeightExample.html) -- [Heart Rate Example](./Observation-HeartRateExample.html) +- [Respiratory rate Example](./Observation-RespiratoryRateExample.html) +- [Saturation Example](./Observation-OxygenSaturationExample.html) +- [Abdominal pain Example](./Observation-AbdominalPainExample.html) +- [Pain surgical wound Example](./Observation-PainSurgicalWoundsExample.html) +- Pain puncture wounds Example +- [Pain during urination Example](./Observation-PainDuringUrinationExample.html) +- [Pain in calves Example](./Observation-PainInCalvesExample.html) +- [Pain medication taken Example](./Observation-PainMedicationTakenExample.html) +- Well-being Example +- Flatulence Example +- Bowel movement Example +- [Distended abdomen Example](./Observation-DistendedAbdomenExample.html) +- Nausea Example +- Vomiting Example +- Water intake last 24h Example +- Meals last 24h Example +- Coughing Example +- Mucus when coughing Example +- Pression on chest Example +- [Shortness of breath Example](./Observation-ShortnessOfBreathExample.html) +- Walking daily Example +- [Shoulder pain Example](./Observation-ShoulderPainExample.html) + From 8fbbc255a069c43edda542d5c593da50a785ddea Mon Sep 17 00:00:00 2001 From: Nele Averens <nele.averens@remecare.eu> Date: Tue, 26 Nov 2024 16:00:51 +0100 Subject: [PATCH 59/62] extra answer options TOTeM --- input/pagecontent/totem.md | 44 +++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/input/pagecontent/totem.md b/input/pagecontent/totem.md index d5a298f5..9f00d3dd 100644 --- a/input/pagecontent/totem.md +++ b/input/pagecontent/totem.md @@ -71,24 +71,24 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Respiratory rate | LOINC 9279-1 | | | Saturation | LOINC 2708-6 | | | Body temperature | LOINC 8310-5 | | - | Abdominal pain | SNOMEDCT 21522001 | LOINC 72514-3 | - | Pain puncture wounds | LOINC 72514-3 ?? | LOINC 72514-3 | - | Pain during urination | SNOMEDCT 49650001 | SNOMED 373066001 - ??| - | Pain in calves | SNOMEDCT 1264028004 | SNOMED 373066001 - ??| + | Abdominal pain | SNOMED 21522001 | LOINC 72514-3 | + | Pain puncture wounds | ?? | LOINC 72514-3 | + | Pain during urination | SNOMED 49650001 | SNOMED 373066001 - ??| + | Pain in calves | SNOMED 1264028004 | SNOMED 373066001 - ??| | Pain medication taken | ?? | ?? | - | Well-being | SNOMEDCT 365275006 | ?? | - | Flatulence | SNOMEDCT 249504006 | | - | Bowel movement | SNOMEDCT 39211005 | | - | Nausea | SNOMEDCT 422587007 | | - | Vomiting | SNOMEDCT 300359004 | | - | Water intake last 24h | LOINC 9007-6 | | - | Meals last 24h | ?? | | - | Coughing | SNOMEDCT 263731006 | | - | Product cough | SNOMEDCT 28743005 | | - | Pressure in chest | SNOMEDCT 23924001 | | - | Shortness of breath | SNOMEDCT 267036007 | | - | Walking daily | ?? | | - | Wound appearance | | SNOMED 17621005 - ???| + | Well-being | SNOMED 365275006 | ?? | + | Flatulence | SNOMED 249504006 | ?? | + | Bowel movement | SNOMED 39211005 | ?? | + | Nausea | SNOMED 422587007 | ?? | + | Vomiting | SNOMED 300359004 | ?? | + | Water intake last 24h | LOINC 9007-6 | ?? | + | Meals last 24h | ?? | ?? | + | Coughing | SNOMED 263731006 | ?? | + | Product cough | SNOMED 28743005 | ?? | + | Pressure in chest | SNOMED 23924001 | ?? | + | Shortness of breath | SNOMED 267036007 | ?? | + | Walking daily | ?? | ?? | + | Wound appearance | | SNOMED 17621005 | | Concern about patient | ?? | SNOMED 373066001 - ??| | Fraxiparine | ?? | | @@ -97,15 +97,15 @@ With support from the FPS Public Health, some TOTeM projects are being rolled ou | Description | Code(s) | Possible answers | | ------------------------- | ------------------------ | ---------------------| - | Pain surgical wound | LOINC 72514-3 ?? | LOINC 72514-3 | - | Distended abdomen | SNOMEDCT 60728008 | | + | Pain surgical wound | ? ? | LOINC 72514-3 | + | Distended abdomen | SNOMED 60728008 | ??? | ###### Bariatric surgery specific <div class="table-md"></div> - | Description | Code(s) | Possible answers | - | ------------------------- | ------------------------ | ---------------------| - | Shoulder pain | LOINC 72514-3 ?? | | + | Description | Code(s) | Possible answers | + | ------------------------- | ------------------------ | ------------------------------------------------ | + | Shoulder pain | ?? | SNOMED 24028007 (right) <br> SNOMED 7771000 (left) <br> SNOMED 51440002 (right and left) <br> SNOMED 260413007 (no) | These FHIR modules ensure standardized data exchange between systems and guarantee consistency of the vital parameters. From 8c0afdd76dfab7166e28ae299a9310a7ebc2bf55 Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Tue, 26 Nov 2024 20:02:48 +0100 Subject: [PATCH 60/62] Update readme with information to run it locally --- README.md | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 01fa0e62..a69ee452 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,48 @@ -Patient Monitoring Outcome ---- +## Patient Monitoring Outcome + IG <br> </br> + ### + ### Publication + This ImplementationGuide is published in the following locations: -Continuous Build: -__https://hl7-be.github.io/patient-monitoring/__ -__http://build.fhir.org/ig/hl7-be/patient-monitoring/branches/main/index.html__ -Canonical / permanent URL: +Continuous Build: +**https://hl7-be.github.io/patient-monitoring/** +**http://build.fhir.org/ig/hl7-be/patient-monitoring/branches/main/index.html** +Canonical / permanent URL: <br> </br> ### Issues -Issues and change requests are managed here: -Issues: __https://github.com/hl7-be/patient-monitoring/issues__ -Kanban board: __https://github.com/hl7-be/patient-monitoring/projects/1__ +Issues and change requests are managed here: + +Issues: **https://github.com/hl7-be/patient-monitoring/issues** +Kanban board: **https://github.com/hl7-be/patient-monitoring/projects/1** --- + +### Running locally + +1. Install Prerequisites + Before running a FHIR IG locally, ensure you have the necessary tools installed: + +a. Java +FHIR tools like the IG Publisher require Java. Download and install Java. + +b. Node.js and npm +Some IGs may use Node.js scripts. Download and install Node.js. + +c. FHIR IG Publisher +The FHIR IG Publisher tool is essential for generating and validating IGs. Download the latest publisher.jar from [here](https://github.com/HL7/fhir-ig-publisher/releases). + +d. Jekyll (Optional) +If your IG uses Jekyll for hosting and templating, install Jekyll. Ensure Ruby and Bundler are installed. + +Run Locally: + +``` +java -jar path/to/publisher.jar -ig ig.ini +``` From ac4a47633c0d5fa0bbccbfd44175c8dda57d5c07 Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Tue, 26 Nov 2024 20:11:03 +0100 Subject: [PATCH 61/62] Undo changes to readme --- README.md | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/README.md b/README.md index a69ee452..12445109 100644 --- a/README.md +++ b/README.md @@ -23,26 +23,3 @@ Issues: **https://github.com/hl7-be/patient-monitoring/issues** Kanban board: **https://github.com/hl7-be/patient-monitoring/projects/1** --- - -### Running locally - -1. Install Prerequisites - Before running a FHIR IG locally, ensure you have the necessary tools installed: - -a. Java -FHIR tools like the IG Publisher require Java. Download and install Java. - -b. Node.js and npm -Some IGs may use Node.js scripts. Download and install Node.js. - -c. FHIR IG Publisher -The FHIR IG Publisher tool is essential for generating and validating IGs. Download the latest publisher.jar from [here](https://github.com/HL7/fhir-ig-publisher/releases). - -d. Jekyll (Optional) -If your IG uses Jekyll for hosting and templating, install Jekyll. Ensure Ruby and Bundler are installed. - -Run Locally: - -``` -java -jar path/to/publisher.jar -ig ig.ini -``` From e9138e16d243d83a6ca25b375fe72f486847cb8b Mon Sep 17 00:00:00 2001 From: Jan Pannecoeck <jan@codebreakers.be> Date: Wed, 27 Nov 2024 07:52:01 +0100 Subject: [PATCH 62/62] Update readme with instructions to run locally --- README.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/README.md b/README.md index 12445109..a69ee452 100644 --- a/README.md +++ b/README.md @@ -23,3 +23,26 @@ Issues: **https://github.com/hl7-be/patient-monitoring/issues** Kanban board: **https://github.com/hl7-be/patient-monitoring/projects/1** --- + +### Running locally + +1. Install Prerequisites + Before running a FHIR IG locally, ensure you have the necessary tools installed: + +a. Java +FHIR tools like the IG Publisher require Java. Download and install Java. + +b. Node.js and npm +Some IGs may use Node.js scripts. Download and install Node.js. + +c. FHIR IG Publisher +The FHIR IG Publisher tool is essential for generating and validating IGs. Download the latest publisher.jar from [here](https://github.com/HL7/fhir-ig-publisher/releases). + +d. Jekyll (Optional) +If your IG uses Jekyll for hosting and templating, install Jekyll. Ensure Ruby and Bundler are installed. + +Run Locally: + +``` +java -jar path/to/publisher.jar -ig ig.ini +```