From 26714ed559020dcc43bae1e8575140361c905c82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20Rinnetm=C3=A4ki?= Date: Sun, 8 Sep 2024 22:56:03 +0300 Subject: [PATCH 1/3] Have each concept map have its own page The structure, and especially the automated rendering of the concept map, kind of requires this. --- ...p-ajanvarauksenTila-appointmentStatus.fsh} | 101 ++---------------- ...ap-appointmentStatus-ajanvarauksenTila.fsh | 98 +++++++++++++++++ .../fragment-status-concept-map.md} | 8 +- ...anvarauksentila-appointmentstatus-intro.md | 1 + ...pointmentstatus-ajanvarauksentila-intro.md | 1 + input/pagecontent/terminology.md | 48 ++++++--- 6 files changed, 146 insertions(+), 111 deletions(-) rename input/fsh/mappings/{appointment-status-concept-map.fsh => conceptMap-ajanvarauksenTila-appointmentStatus.fsh} (51%) create mode 100644 input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh rename input/{pagecontent/ConceptMap-appointment-status-concept-map-intro.md => includes/fragment-status-concept-map.md} (86%) create mode 100644 input/pagecontent/ConceptMap-ajanvarauksentila-appointmentstatus-intro.md create mode 100644 input/pagecontent/ConceptMap-appointmentstatus-ajanvarauksentila-intro.md diff --git a/input/fsh/mappings/appointment-status-concept-map.fsh b/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh similarity index 51% rename from input/fsh/mappings/appointment-status-concept-map.fsh rename to input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh index c13fd0b..7d6830b 100644 --- a/input/fsh/mappings/appointment-status-concept-map.fsh +++ b/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh @@ -1,11 +1,13 @@ -Instance: appointment-status-concept-map +Instance: ajanvarauksentila-appointmentstatus InstanceOf: ConceptMap -Title: "FHIR Appointment status codes and Ajanvaraus - Ajanvarauksen tila" -Description: "Mapping between the Finnish logical model [*Ajanvaraus - Ajanvarauksen tila*](https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943) (oid `1.2.246.537.6.881`) and FHIR Appoinment status codes, in both directions." +Title: "Ajanvarauksen tila to Appointment status" +Description: "Mapping between the Finnish logical model [*Ajanvaraus - Ajanvarauksen tila*](https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943) (oid `1.2.246.537.6.881`) and FHIR Appoinment status codes." Usage: #definition +* name = "FinnishAppointmentStatusCodeMap" * status = #draft +* experimental = false * sourceUri = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" -* targetCanonical = "http://hl7.org/fhir/appointmentstatus" +* targetCanonical = "http://hl7.org/fhir/ValueSet/appointmentstatus" * group * source = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" * target = "http://hl7.org/fhir/appointmentstatus" @@ -57,7 +59,7 @@ Usage: #definition * code = #7 * display = "Toteutunut" * target - * code = #fullfilled + * code = #fulfilled * display = "Fulfilled" * equivalence = #inexact * comment = "There is no status for an appointment being in process in FHIR. In FHIR this information is tracked with the status of the Encounter resource." @@ -88,92 +90,3 @@ Usage: #definition * code = #checked-in * display = "Checked In" * equivalence = #equal -* group[+] - * source = "http://hl7.org/fhir/appointmentstatus" - * target = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" - * element - * code = #proposed - * display = "Proposed" - * target - * code = #8 - * display = "Ehdotettu" - * equivalence = #wider - * comment = "The Finnish logical model does not separate between proposed and pending codes" - * element[+] - * code = #pending - * display = "Pending" - * target - * code = #8 - * display = "Ehdotettu" - * equivalence = #wider - * comment = "The Finnish logical model does not separate between proposed and pending codes" - * element[+] - * code = #booked - * display = "Booked" - * target - * code = #3 - * display = "Varattu" - * equivalence = #equal - * element[+] - * code = #arrived - * display = "Arrived" - * target - * code = #10 - * display = "Ilmoittautunut" - * equivalence = #wider - * comment = "The Finnish logical model does not separate between arrived and checked-in codes" - * element[+] - * code = #fulfilled - * display = "Fulfilled" - * target - * code = #6 - * display = "Alkanut" - * equivalence = #narrower - * comment = "Use Alkanut when the encounter of this Appointment is in progress" - * target - * code = #7 - * display = "Toteutunut" - * equivalence = #narrower - * comment = "Use Toteutunut when the service related to the Appointment has begun or is completed" - * element[+] - * code = #cancelled - * display = "Cancelled" - * target - * code = #4 - * display = "Peruttu" - * equivalence = #equal - * element[+] - * code = #noshow - * display = "No Show" - * target - * code = #9 - * display = "Saapumatta" - * equivalence = #equal - * element[+] - * code = #entered-in-error - * display = "Entered in error" - * target - * equivalence = #unmatched - * comment = "There is no code for erroneously entered records in the Finnish logical model" - * element[+] - * code = #checked-in - * display = "Checked In" - * target - * code = #10 - * display = "Ilmoittautunut" - * equivalence = #equivalent - * comment = "The Finnish logical model does not separate between arrived and checked-in codes" - * element[+] - * code = #waitlist - * display = "Waitlisted" - * target - * code = #1 - * display = "Suunniteltu" - * equivalence = #narrower - * comment = "Use Suunniteltu when no service provider has been identified" - * target[+] - * code = #2 - * display = "Tilattu" - * equivalence = #narrower - * comment = "Use Tilattu when a service provider has been identified" - diff --git a/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh b/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh new file mode 100644 index 0000000..89f8b3a --- /dev/null +++ b/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh @@ -0,0 +1,98 @@ +Instance: appointmentstatus-ajanvarauksentila +InstanceOf: ConceptMap +Title: "Appointment status to Ajanvarauksen tila" +Description: "Mapping between FHIR Appoinment status codes and the Finnish logical model [*Ajanvaraus - Ajanvarauksen tila*](https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943) (oid `1.2.246.537.6.881`)." +Usage: #definition +* name = "FinnishAppointmentStatusCodeMap" +* status = #draft +* experimental = false +* sourceCanonical = "http://hl7.org/fhir/ValueSet/appointmentstatus" +* targetUri = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" +* group + * source = "http://hl7.org/fhir/appointmentstatus" + * target = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" + * element + * code = #proposed + * display = "Proposed" + * target + * code = #8 + * display = "Ehdotettu" + * equivalence = #wider + * comment = "The Finnish logical model does not separate between proposed and pending codes" + * element[+] + * code = #pending + * display = "Pending" + * target + * code = #8 + * display = "Ehdotettu" + * equivalence = #wider + * comment = "The Finnish logical model does not separate between proposed and pending codes" + * element[+] + * code = #booked + * display = "Booked" + * target + * code = #3 + * display = "Varattu" + * equivalence = #equal + * element[+] + * code = #arrived + * display = "Arrived" + * target + * code = #10 + * display = "Ilmoittautunut" + * equivalence = #wider + * comment = "The Finnish logical model does not separate between arrived and checked-in codes" + * element[+] + * code = #fulfilled + * display = "Fulfilled" + * target + * code = #6 + * display = "Alkanut" + * equivalence = #narrower + * comment = "Use Alkanut when the encounter of this Appointment is in progress" + * target + * code = #7 + * display = "Toteutunut" + * equivalence = #narrower + * comment = "Use Toteutunut when the service related to the Appointment has begun or is completed" + * element[+] + * code = #cancelled + * display = "Cancelled" + * target + * code = #4 + * display = "Peruttu" + * equivalence = #equal + * element[+] + * code = #noshow + * display = "No Show" + * target + * code = #9 + * display = "Saapumatta" + * equivalence = #equal + * element[+] + * code = #entered-in-error + * display = "Entered in error" + * target + * equivalence = #unmatched + * comment = "There is no code for erroneously entered records in the Finnish logical model" + * element[+] + * code = #checked-in + * display = "Checked In" + * target + * code = #10 + * display = "Ilmoittautunut" + * equivalence = #equivalent + * comment = "The Finnish logical model does not separate between arrived and checked-in codes" + * element[+] + * code = #waitlist + * display = "Waitlisted" + * target + * code = #1 + * display = "Suunniteltu" + * equivalence = #narrower + * comment = "Use Suunniteltu when no service provider has been identified" + * target[+] + * code = #2 + * display = "Tilattu" + * equivalence = #narrower + * comment = "Use Tilattu when a service provider has been identified" diff --git a/input/pagecontent/ConceptMap-appointment-status-concept-map-intro.md b/input/includes/fragment-status-concept-map.md similarity index 86% rename from input/pagecontent/ConceptMap-appointment-status-concept-map-intro.md rename to input/includes/fragment-status-concept-map.md index 8b18242..bfdf91f 100644 --- a/input/pagecontent/ConceptMap-appointment-status-concept-map-intro.md +++ b/input/includes/fragment-status-concept-map.md @@ -24,8 +24,12 @@ and when the service is in progress or completed ([#7, Toteutunut](https://koodistopalvelu.kanta.fi/codeserver/pages/code-view-page.xhtml?conceptCodeKey=101027624)). The Finnish logical model does not have a separate state for when the patient has arrived (FHIR -status `#arrived`). It does have a code #10 Ilmoittautunut that matches the FHIR code -`#checked-in`. +status +[`#arrived`](https://hl7.org/fhir/R4/codesystem-appointmentstatus.html#appointmentstatus-arrived)). +It does have a code +[#10 Ilmoittautunut](https://koodistopalvelu.kanta.fi/codeserver/pages/code-view-page.xhtml?conceptCodeKey=200188374) +that matches the FHIR code +[`#checked-in`](https://hl7.org/fhir/R4/codesystem-appointmentstatus.html#appointmentstatus-checked-in). The Finnish logical model used to have a separate code for an appointment that has been rescheduled ([#5, Siirretty](https://koodistopalvelu.kanta.fi/codeserver/pages/code-view-page.xhtml?conceptCodeKey=101027622)), diff --git a/input/pagecontent/ConceptMap-ajanvarauksentila-appointmentstatus-intro.md b/input/pagecontent/ConceptMap-ajanvarauksentila-appointmentstatus-intro.md new file mode 100644 index 0000000..1321159 --- /dev/null +++ b/input/pagecontent/ConceptMap-ajanvarauksentila-appointmentstatus-intro.md @@ -0,0 +1 @@ +{% include fragment-status-concept-map.md %} diff --git a/input/pagecontent/ConceptMap-appointmentstatus-ajanvarauksentila-intro.md b/input/pagecontent/ConceptMap-appointmentstatus-ajanvarauksentila-intro.md new file mode 100644 index 0000000..e4f5f20 --- /dev/null +++ b/input/pagecontent/ConceptMap-appointmentstatus-ajanvarauksentila-intro.md @@ -0,0 +1 @@ +{% include fragment-status-concept-map.md %} \ No newline at end of file diff --git a/input/pagecontent/terminology.md b/input/pagecontent/terminology.md index 59e444e..61cbc75 100644 --- a/input/pagecontent/terminology.md +++ b/input/pagecontent/terminology.md @@ -1,26 +1,44 @@ ### CodeSystems - - +{% capture codeSystemsCapture %} +{% include list-simple-codesystems.xhtml raw="" %} +{% endcapture %} +{% if codeSystemsCapture contains "
  • " %} +{{ codeSystemsCapture }} +{% else %} +No CodeSystems are defined by this implementation guide. +{% endif %} ### ValueSets - - +{% capture valueSetsCapture %} +{% include list-simple-valuesets.xhtml raw="" %} +{% endcapture %} +{% if valueSetsCapture contains "
  • " %} +{{ valueSetsCapture }} +{% else %} +No ValueSets are defined by this implementation guide. +{% endif %} ### ConceptMaps - - +{% capture conceptMapsCapture %} +{% include list-simple-conceptmaps.xhtml raw="" %} +{% endcapture %} +{% if conceptMapsCapture contains "
  • " %} +{{ conceptMapsCapture }} +{% else %} +No ConceptMaps are defined by this implementation guide. +{% endif %} ### NamingSystems +{% capture namingSystemsCapture %} +{% include list-simple-namingsystems.xhtml raw="" %} +{% endcapture %} +{% if namingSystemsCapture contains "
  • " %} +{{ namingSystemsCapture }} +{% else %} +No NamingSystems are defined by this implementation guide. +{% endif %} - +### Other Terminologies There are also many other notable terminologies used in Finland. Please see the [terminology section](https://hl7.fi/fhir/finnish-base-profiles/terminology.html) of the Finnish From 82743f269a5fe3a2a3d50dcb1a7892b0cf811fb6 Mon Sep 17 00:00:00 2001 From: Janne Heikkinen Date: Thu, 22 Aug 2024 16:53:31 +0300 Subject: [PATCH 2/3] Add StructureDefinition intro files (template). --- .../StructureDefinition-fi-scheduling-appointment-intro.md | 1 + ...StructureDefinition-fi-scheduling-healthcare-service-intro.md | 1 + .../StructureDefinition-fi-scheduling-location-intro.md | 1 + .../StructureDefinition-fi-scheduling-schedule-intro.md | 1 + .../pagecontent/StructureDefinition-fi-scheduling-slot-intro.md | 1 + 5 files changed, 5 insertions(+) create mode 100644 input/pagecontent/StructureDefinition-fi-scheduling-appointment-intro.md create mode 100644 input/pagecontent/StructureDefinition-fi-scheduling-healthcare-service-intro.md create mode 100644 input/pagecontent/StructureDefinition-fi-scheduling-location-intro.md create mode 100644 input/pagecontent/StructureDefinition-fi-scheduling-schedule-intro.md create mode 100644 input/pagecontent/StructureDefinition-fi-scheduling-slot-intro.md diff --git a/input/pagecontent/StructureDefinition-fi-scheduling-appointment-intro.md b/input/pagecontent/StructureDefinition-fi-scheduling-appointment-intro.md new file mode 100644 index 0000000..b21009e --- /dev/null +++ b/input/pagecontent/StructureDefinition-fi-scheduling-appointment-intro.md @@ -0,0 +1 @@ +### Scope and Usage \ No newline at end of file diff --git a/input/pagecontent/StructureDefinition-fi-scheduling-healthcare-service-intro.md b/input/pagecontent/StructureDefinition-fi-scheduling-healthcare-service-intro.md new file mode 100644 index 0000000..b21009e --- /dev/null +++ b/input/pagecontent/StructureDefinition-fi-scheduling-healthcare-service-intro.md @@ -0,0 +1 @@ +### Scope and Usage \ No newline at end of file diff --git a/input/pagecontent/StructureDefinition-fi-scheduling-location-intro.md b/input/pagecontent/StructureDefinition-fi-scheduling-location-intro.md new file mode 100644 index 0000000..b21009e --- /dev/null +++ b/input/pagecontent/StructureDefinition-fi-scheduling-location-intro.md @@ -0,0 +1 @@ +### Scope and Usage \ No newline at end of file diff --git a/input/pagecontent/StructureDefinition-fi-scheduling-schedule-intro.md b/input/pagecontent/StructureDefinition-fi-scheduling-schedule-intro.md new file mode 100644 index 0000000..b21009e --- /dev/null +++ b/input/pagecontent/StructureDefinition-fi-scheduling-schedule-intro.md @@ -0,0 +1 @@ +### Scope and Usage \ No newline at end of file diff --git a/input/pagecontent/StructureDefinition-fi-scheduling-slot-intro.md b/input/pagecontent/StructureDefinition-fi-scheduling-slot-intro.md new file mode 100644 index 0000000..b21009e --- /dev/null +++ b/input/pagecontent/StructureDefinition-fi-scheduling-slot-intro.md @@ -0,0 +1 @@ +### Scope and Usage \ No newline at end of file From 2da00008e73a855473c9c06ba7cf6ca30b0bdd39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikael=20Rinnetm=C3=A4ki?= Date: Mon, 9 Sep 2024 15:29:39 +0300 Subject: [PATCH 3/3] Use the 'Fi' abbreviation in names See discussion at https://github.com/fhir-fi/finnish-scheduling/pull/24#discussion_r1749574717 --- .../mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh | 2 +- .../mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh b/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh index 7d6830b..a685473 100644 --- a/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh +++ b/input/fsh/mappings/conceptMap-ajanvarauksenTila-appointmentStatus.fsh @@ -3,7 +3,7 @@ InstanceOf: ConceptMap Title: "Ajanvarauksen tila to Appointment status" Description: "Mapping between the Finnish logical model [*Ajanvaraus - Ajanvarauksen tila*](https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943) (oid `1.2.246.537.6.881`) and FHIR Appoinment status codes." Usage: #definition -* name = "FinnishAppointmentStatusCodeMap" +* name = "FiAppointmentStatusCodeMap" * status = #draft * experimental = false * sourceUri = "https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943" diff --git a/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh b/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh index 89f8b3a..60d2fa8 100644 --- a/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh +++ b/input/fsh/mappings/conceptMap-appointmentStatus-ajanvarauksenTila.fsh @@ -3,7 +3,7 @@ InstanceOf: ConceptMap Title: "Appointment status to Ajanvarauksen tila" Description: "Mapping between FHIR Appoinment status codes and the Finnish logical model [*Ajanvaraus - Ajanvarauksen tila*](https://koodistopalvelu.kanta.fi/codeserver/pages/classification-view-page.xhtml?classificationKey=1943) (oid `1.2.246.537.6.881`)." Usage: #definition -* name = "FinnishAppointmentStatusCodeMap" +* name = "FiAppointmentStatusCodeMap" * status = #draft * experimental = false * sourceCanonical = "http://hl7.org/fhir/ValueSet/appointmentstatus"