From d20797ace016c9c79d2e08468169f3481044e507 Mon Sep 17 00:00:00 2001 From: tmsMedcom <88831880+tmsMedcom@users.noreply.github.com> Date: Mon, 2 Feb 2026 12:35:18 +0100 Subject: [PATCH] Review done --- input/fsh/MedComNotesComposition.fsh | 6 ++--- input/fsh/MedComNotesObservation.fsh | 4 ++-- ...ureDefinition-medcom-notes-bundle-intro.md | 2 +- ...finition-medcom-notes-composition-intro.md | 4 ++-- ...finition-medcom-notes-observation-intro.md | 22 +++++++++---------- input/pagecontent/examples.md | 8 +++---- input/pagecontent/index.md | 22 ++++++++++++------- 7 files changed, 37 insertions(+), 31 deletions(-) diff --git a/input/fsh/MedComNotesComposition.fsh b/input/fsh/MedComNotesComposition.fsh index 3fc78a7..8e75e74 100644 --- a/input/fsh/MedComNotesComposition.fsh +++ b/input/fsh/MedComNotesComposition.fsh @@ -5,19 +5,19 @@ Description: "A profile for the MedCom Notes Composition resource." * type.coding.system = $Loinc (exactly) * type.coding.code = #11488-4 (exactly) * type.coding.display = "Consult note" (exactly) -* date ^short = "Last update of the note (Da: Sidste opdatering af notatet)" +* date ^short = "Last update of the note (Da: Seneste opdatering af notatet)" * title ^short = "Title MUST be 'Journalnotat for **CPR-nummer**'" * meta.profile obeys medcom-canonical-fixed-major * meta.profile ^short = "[DocumentEntry.formatCode] The profile canonical SHALL include the major and minor version of the standard in the form `|x.y`." * author only Reference(MedComDocumentOrganization or MedComDocumentPractitioner or MedComDocumentPractitionerRole) * author[institution] only Reference(MedComDocumentOrganization) -* category 1.. // SKS: i EKG er de endt med at have denne med, profileret som her. Var det noget med metadata? +* category 1.. // SKS: i EKG er de endt med at have denne med, profileret som her. Var det noget med metadata? ja, nemlig. * category.coding.system = $ClassCodeCS * category.coding.code = #001 * category.coding.display = "Klinisk rapport" -* section 1..1 //SKS: der må kun være et journalnotat pr. dokument, er dette så den rette måde at udtrykke det på? +* section 1..1 //SKS: der må kun være et journalnotat pr. dokument, er dette så den rette måde at udtrykke det på? ja, det giver god mening. * section.entry 1..1 MS * section.entry only Reference(MedComNotesObservation) * confidentiality = #N (exactly) diff --git a/input/fsh/MedComNotesObservation.fsh b/input/fsh/MedComNotesObservation.fsh index 1a765b1..c1205be 100644 --- a/input/fsh/MedComNotesObservation.fsh +++ b/input/fsh/MedComNotesObservation.fsh @@ -24,9 +24,9 @@ Description: "Observation profile intended to be used in MedCom's Notes standard * extension[valueAttachment].valueAttachment.data ^short = "Base64-encoded content of the note (Da: journalnotatet)" * extension[valueAttachment].valueAttachment.contentType 1..1 MS * extension[valueAttachment].valueAttachment.contentType = #application/xhtml+xml (exactly) -* extension[valueAttachment].valueAttachment.contentType ^short = "MIME type of the note (Da: journalnotat)" +* extension[valueAttachment].valueAttachment.contentType ^short = "MIME type of the note" * extension[valueAttachment].valueAttachment.title 1..1 MS -* extension[valueAttachment].valueAttachment.title ^short = "Either the title of the note written by the responsible or 'Journalnotat'." +* extension[valueAttachment].valueAttachment.title ^short = "Either the title of the note written by the responsible or a generic title e.g. 'Journalnotat'." * subject 1..1 MS * subject only Reference(MedComDocumentPatient) * performer ..1 diff --git a/input/pagecontent/StructureDefinition-medcom-notes-bundle-intro.md b/input/pagecontent/StructureDefinition-medcom-notes-bundle-intro.md index eda41d1..c211e65 100644 --- a/input/pagecontent/StructureDefinition-medcom-notes-bundle-intro.md +++ b/input/pagecontent/StructureDefinition-medcom-notes-bundle-intro.md @@ -1,6 +1,6 @@ # MedCom Notes Bundle -The MedComNotesBundle profile describes the Bundle resource that shall be used in all documents exchanged as Shared Notes. MedComNotesBundle inherits from MedComDocumentBundle, and is the container for the content in a document. +The MedComNotesBundle profile describes the Bundle resource that shall be used in all documents exchanged as Shared Notes. MedComNotesBundle inherits from [MedComDocumentBundle](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-bundle.html), and is the container for the content in a document. As this profile is the used in a document, the element type shall always be ‘document’. This entails that the first resource in the entry element shall be a MedComNotesComposition, which can be found in the slicing on Bundle.entry. diff --git a/input/pagecontent/StructureDefinition-medcom-notes-composition-intro.md b/input/pagecontent/StructureDefinition-medcom-notes-composition-intro.md index 8379217..a96a138 100644 --- a/input/pagecontent/StructureDefinition-medcom-notes-composition-intro.md +++ b/input/pagecontent/StructureDefinition-medcom-notes-composition-intro.md @@ -4,7 +4,7 @@ This page describes how the **MedCom Notes Composition** profile is intended to The MedComNotesComposition profile defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type is 'document', and any other resources referenced from Composition must be included as subsequent entries in the Bundle.entry element. The Composition resource organizes clinical and administrative content into sections, each of which contains a narrative, and references other resources. -The `Composition.section.entry` element **MUST** reference the MedComNotesObservation that contains the Note from the General Practitioner. As there is only supposed to be one note in each document, it is only allowed to reference one MedComNotesObservation. +The `Composition.section.entry` element **MUST** reference the MedComNotesObservation that contains the note from the healtcare provider e.g. general practitioner. As there is only supposed to be one note in each document, it is only allowed to reference one MedComNotesObservation. The `Composition.title` **MUST** be (in Danish) "Journalnotat for '**CPR-nummer**'", where 'CPR-nummer' is the actual identifier for the patient (Patient.identifier.value). @@ -12,4 +12,4 @@ The `Composition.type` is fixed to the LOINC code "11488-4 Consult note", as it ## Timestamps -The `Composition.date` The last update date of the note performed by the patient's general practitioner must be included (Da: dato og tid for Sidste opdatering af notatet). \ No newline at end of file +The `Composition.date` **MUST** be the last update date of the note performed by the patient's healthcare provider e.g. general practitioner must be included (Da: dato og tid for seneste opdatering af notatet). \ No newline at end of file diff --git a/input/pagecontent/StructureDefinition-medcom-notes-observation-intro.md b/input/pagecontent/StructureDefinition-medcom-notes-observation-intro.md index 597e47e..cb4c96c 100644 --- a/input/pagecontent/StructureDefinition-medcom-notes-observation-intro.md +++ b/input/pagecontent/StructureDefinition-medcom-notes-observation-intro.md @@ -1,26 +1,26 @@ # MedCom Notes Observation -This page describes how the **MedCom Notes Observation** profile is intended to be used within the MedCom Notes standard. +This page describes how the MedComNotesObservation profile is intended to be used within the MedCom Notes standard. -## Purpose of the Profile -This profile specifies how the Observation represents the note from the gerneal practitioner using a dedicated extension. It also specifies how the related attachment metadata, and how the required LOINC coding and references to the patient and performing organization or practitioner must be applied. Read more about this in the following paragrafs. +This profile specifies how the Observation represents the note from the general practitioner using a dedicated extension. It also specifies how other information must be applied, such as the metadata related to the attachment, as well as coding and references to the patient and performing organization or practitioner. Read more about this in the following paragrafs. -## Use of the valueAttachment Extension -This Observation contains a FHIR extension designed to hold the note as a xhtml+xml file encoded in Base64. The `valueAttachment` element is implemented as an extension as the base `value[x]` element does not support the `Attachment` type in FHIR R4. The extension also captures essential metadata for the attachment - the MIME type and the title. +## Consultation Note +This Observation contains a FHIR extension designed to hold the note. The note must be encoded in Base64 and the mimetype must be `xhtml+xml` to describe the content. The `valueAttachment` element is implemented as an extension as the base `value[x]` element does not support the `Attachment` type in FHIR R4. The extension also captures essential metadata for the attachment; the MIME type and the title. -The note is represented in the Composition resource in valueAttachment, as described above. This also means that the note content is base64-encoded. The formatting of the content follows the same conventions as defined in the [MedCom FNUX standard](https://svn.medcom.dk/svn/releases/Standarder/FNUX/Dokumentation/SimplifiedHTML-specifikation.pdf). This means that line breaks, bold, italics, underline, and monospaced text are supported, and these may be combined. +The note is represented in the Observation resource in `extension:valueAttachment`, as described above. This also means that the note content is base64-encoded. The formatting of the content follows the same conventions as defined in the [MedCom FNUX standard](https://svn.medcom.dk/svn/releases/Standarder/FNUX/Dokumentation/SimplifiedHTML-specifikation.pdf). This means that line breaks, bold, italics, underline, and monospaced text are supported, and these may be combined. ## Title -It is possible for practitioners authoring the notes to include a title for the note. The title is profiled as mandatory and **SHALL** be populated in `value[attachment].title`. +It is possible for practitioners authoring the notes to include a self-written title for the note. The title is profiled as mandatory and **SHALL** be populated in `extension:valueAttachment.value.title`. -Although it is not mandatory for practitioners to provide a title in their clinical system, a value **MUST** be provided in `value[attachment].title`. If no title is entered in the clinical system, the value *"Journalnotat"* **MUST** be used instead. +Although it is not mandatory for practitioners to provide a title in their clinical system, a value **MUST** be provided in `extension:valueAttachment.value.title`. If no title is entered in the clinical system, a generic description of the content **MUST** be used instead, e.g. *"Journalnotat"*. ## Notes date and time -The `effectiveDateTime` element is a mandatory element used to represent the time the note was created and **SHALL** be provided as a dateTime. +The `effectiveDateTime` element is a mandatory element used to represent the date and time the note was created and **SHALL** be provided as a dateTime. ## Required LOINC coding -This Observation contains the fixed code: +The element `code` describes what was observed. This code is for Shared Notes fixed to code.coding:LOINC.code: `11488-4` system: `http://loinc.org` display: `Consult Note`. -- code.coding:LOINC: code: `11488-4` system: `http://loinc.org` display: `Consult Note`. +## Author +A reference to the author of the note is included in the element `performer`. If information about the healthcare professional and his/her role is available this should be included in the profiles MedComDocumentPractitioner and MedComDocumentPractitionerRole, respectively. If only information about the authoring organization is available, this must be included. ## Resource references This Observation references the `Patient` resource through the `subject` element and the author `Organization`, `Practitioner`, or `PractitionerRole` through the `performer` element. \ No newline at end of file diff --git a/input/pagecontent/examples.md b/input/pagecontent/examples.md index 9eead7e..570a38c 100644 --- a/input/pagecontent/examples.md +++ b/input/pagecontent/examples.md @@ -2,12 +2,12 @@ *Note: The narrative texts (text.div) elements in the examples are autogenerated. They are not representative of the MedCom Governance demands for narratives and must only be treated as incomplete example representations. Find [MedCom Governance for narratives here](https://medcomdk.github.io/MedComLandingPage/assets/documents/GeneralGovernanceFHIRStandards.html).* -### 1st example - only mandatory content +### 1st example +This example only contains the mandatory content. [Mimimal example](./Bundle-9521a7f0-bad4-4a46-8c51-cd8378b24106.html) -### 2nd example - more optionel content - -The document contains a written title, responsible author person and role, different creation time and updatede time, 'ydernummer' on author organization, and xhtml-marked text. +### 2nd example +The example contains the mandatory content and a written title, responsible author person and role, different creation time and updatede time, 'ydernummer' on author organization, and xhtml-marked text. [Extended example](./Bundle-ba7d908a-0134-4f28-b5f5-0fcaf088e60b.html) \ No newline at end of file diff --git a/input/pagecontent/index.md b/input/pagecontent/index.md index 3fddcab..e205125 100644 --- a/input/pagecontent/index.md +++ b/input/pagecontent/index.md @@ -1,32 +1,36 @@ ### Introduction -This implementation guide (IG) is provided by MedCom to describe the use of FHIR ®© Shared Notes (Da: Deling af Jornalnotater) in document based exchange of data in Danish healthcare. +This implementation guide (IG) is provided by MedCom to describe the use of FHIR ®© Shared Notes (Da: Deling af Journalnotater) in document based exchange of data in Danish healthcare. -This IG contains profiles supporting the MedCom document sharing of notes. The purpose of sharing notes is to make the notes from general practice available to relevant healthcare actors, thereby supporting continuity of care and providing insight into clinically relevant assessments, observations, and decisions documented by the general practitioner. +This IG contains profiles supporting the MedCom document Shared Notes. The purpose of sharing notes is to make the notes from a healthcare provider - at first the general practice - available to relevant healthcare actors, thereby supporting continuity of care and providing insight into clinically relevant assessments, observations, and decisions documented by the general practitioner. More information about the project [Shared Notes from General Practice](https://medcomdk.github.io/dk-medcom-notes/) can be found here. +The MedCom document Shared Notes will be exchanged via the National Service Platform (NSP) using the Document Sharing Service (DDS), which is already used for national sharing of healthcare documents. Each document must contain only one note and related information, therefore will the system requesting the notes receive multiple document if the patient has been to multiple consultations e.g. at the general practitioner. + +The FHIR standard will ensure consistent structuring of metadata and clinically relevant information, enabling Shared Notes to be searched, interpreted, and used correctly by receiving systems, clinicians and patiens. + #### Shared Notes The structure of the Shared Notes document is depicted in the following diagram:
-Shows the general MedCom Notes document model. Each document must at least contain the following resources: Bundle, Composition, Organization, Patient and Observation. +Shows the general MedCom Notes document model. Each document must at least contain the following resources: Bundle, Composition, Organization, Patient, Practitioner, PractitionerRole and Observation.
Figure 1: Overview of the references between profiles in the MedCom Shared Notes standard
-The shared Notes IG follows the [general MedCom FHIR Document model](https://medcomfhir.dk/ig/document/index.html#general-document-model). This includes the resources Bundle, Composition, Organization, Patient and if relevant Practitioner. To hold information about the patient's Notes, the resource Observation is also included. +The Shared Notes IG follows the [general MedCom FHIR Document model](https://medcomfhir.dk/ig/document/index.html#general-document-model). This includes the resources Bundle, Composition, Organization, Patient and if relevant Practitioner. To hold information about the patient's Notes, the resource Observation is also included. #### Profiles The following sections describe the overall purpose of each profile. ##### MedComNotesBundle -[MedComNotesBundle](./StructureDefinition-medcom-notes-bundle.html) is used as the Bundle profile for the standard. The Bundle profile acts as the container for all included resources and they must all be referenced from the Bundle.entry element, which is illustrated in the [examples](examples.html). +[MedComNotesBundle](./StructureDefinition-medcom-notes-bundle.html) is used as the Bundle profile for the standard. This profiles inheritsfrom [MedComDocumentBundle](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-bundle.html). The Bundle profile acts as the container for all included resources and they must all be referenced from the Bundle.entry element, which is illustrated in the [examples](examples.html). ##### MedComNotesComposition [MedComNotesComposition](./StructureDefinition-medcom-notes-composition.html) creates the structure of the document. It is specifically designed for structuring patients' Notes, inheriting from [MedComDocumentComposition](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-composition.html). The key differences are: the Composition.type is fixed to "Consult note" to standardize the document type; the Composition.title must be the following in Danish: "Journalnotat for 'CPR-nummer'"; and the Composition.section.entry is restricted to reference [MedComNotesObservation](./StructureDefinition-medcom-notes-observation.html). ##### MedComNotesObservation -[MedComNotesObservation](./StructureDefinition-medcom-notes-observation.html) is the profile that specifies the note in the document. It inherits from [MedComDocumentObservation](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-observation.html) and further restricts the profile, for example is valueattachment specified to only include the data as xhtml+xml. +[MedComNotesObservation](./StructureDefinition-medcom-notes-observation.html) is the profile that specifies the note in the document. It inherits from [MedComDocumentObservation](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-observation.html) and further restricts the profile, for example is valueattachment specified to only include the data as xhtml+xml, which is where the note will be included. ##### MedComDocumentPatient [MedComDocumentPatient](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-patient.html) describes the basic requirements for information about citizens and patients when exchanging a document. The profile inherits from [MedComCorePatient](https://medcomfhir.dk/ig/core/4.0.0/StructureDefinition-medcom-core-patient.html) and further limit the requirements, e.g. may documents only be exchanged for patients with a CPR-number. It is not allowed to add a replacement-CPR (Danish: erstatningsCPR), as this is not supported in the infrastructure. @@ -35,7 +39,7 @@ The following sections describe the overall purpose of each profile. [MedComDocumentOrganization](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-organization.html) is a profile representing Danish healthcare organizations that acts as the author institution in FHIR Documents. The profile inherits from [MedComCoreOrganization](https://medcomfhir.dk/ig/core/4.0.0/StructureDefinition-medcom-core-organization.html). ##### MedComDocumentPractitionerRole -[MedComDocumentPractitionerRole](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-practitionerrole.html) represents the health care professional that acts as the author person. The profile inherits from [MedComCorePractitionerRole](https://medcomfhir.dk/ig/core/4.0.0/StructureDefinition-medcom-core-practitionerrole.html) +[MedComDocumentPractitionerRole](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-practitionerrole.html) represents the role of the health care professional that acts as the author person. The profile inherits from [MedComCorePractitionerRole](https://medcomfhir.dk/ig/core/4.0.0/StructureDefinition-medcom-core-practitionerrole.html) ##### MedComDocumentPractitioner [MedComDocumentPractitioner](https://medcomfhir.dk/ig/document/2.0.0/StructureDefinition-medcom-document-practitioner.html) represents the health care professional that acts as the author person. The profile inherits from [MedComCorePractitioner](https://medcomfhir.dk/ig/core/4.0.0/StructureDefinition-medcom-core-practitioner.html) and further requires a given and family name to be present. @@ -44,9 +48,11 @@ The following sections describe the overall purpose of each profile. #### Timestamps A Shared Notes document includes several timestamps. These timestamps are present in the profiles MedComNotesBundle, MedComNotesComposition and MedComNotesObservation. They have different purposes: * Bundle.timestamp: Represents the time the bundle was assembled. This timestamp must be included. -* Composition.date: The last update date of the note performed by the patient's general practitioner must be included (Da: dato og tid for Sidste opdatering af notatet). +* Composition.date: The last update date of the note performed by the patient's general practitioner must be included (Da: dato og tid for seneste opdatering af notatet). * Observation.effectiveDatetime: Date and time the note was created (Da: Oprettelsestidspunkt for notatet) +If the Composition.date and Observation.effectiveDatetime are similar, this represents that the note has not been updated after it was generated. If the two timestamps are different, this represents that the note has been updated after it was generated. + #### Examples The [examples page](examples.html) different examples of the Shared Notes standard. Each example is accompanied by a short description of the example.