gematik / app-referencevalidator

The reference validator is a tool to perform advanced validation of FHIR resources for TI applications and interoperability standards
https://fachportal.gematik.de/hersteller-anbieter/primaersysteme/referenzvalidator
Other
22 stars 4 forks source link

Referenzvalidator 2.6.0: Abweichende Locale-Einstellungen führen zur Falschbewertung von GEM_ERP_PR_Medication|1.4-Profilen #28

Closed alexey-tschudnowsky closed 1 month ago

alexey-tschudnowsky commented 1 month ago

Beschreibung

(Betrifft die Version vom Referenzvalidator 2.6.0)

Falls sich die Locale der Umgebung, in der der Referenzvalidator läuft, von en_* abweicht (z.B. de_DE), werden GEM_ERP_PR_Medication|1.4-Ressourcen (sowie eventuell umgebende Ressourcen wie z.B. GEM_ERP_PR_PAR_DispenseOperation_Input|1.4, die das CodeSystem http://standardterms.edqm.eu zur Kodierung der Abgabeform (Medication.form) verwenden, fälschlicherweise als invalide bewertet:

===== Valid: false =====

See 1 errors below.

Severity Code Location (FHIRPath) Profile, Element and Problem description


1 ERROR Terminology_TX_ValueSet_NotFound Parameters.parameter[1].part[1].resource/Medication/Medication-Without-Strength-Code/.form.coding[0] ValueSet http://hl7.org/fhir/uv/ips/ValueSet/medicine-doseform vom Validator nicht gefunden

Schritte zur Reproduktion

  1. Beispielinstanz Parameters-ExampleDispenseInputParametersMultipleMedicationDispenses.xml.txt herunterladen (Endung txt entfernen)
  2. Den Referenzvalidator 2.6.0 starten (Beispiel für Powershell):

java "-Duser.country=DE" "-Duser.language=de" -jar .\referencevalidator-cli-2.6.0.jar erp "[PATH]\Parameters-ExampleDispenseInputParametersMultipleMedicationDispenses.xml"

Ausgabe:

15.10.24-11:45:38.841 INFO - gematik Referencevalidator 2.6.0 Java: 17.0.12 from C:\Program Files\Eclipse Adoptium\jdk-17.0.12.7-hotspot on amd64 (64bit). 8136MB, 16 CPU cores available Locale: de_DE

15.10.24-11:45:39.217 INFO - Reading input file [PATH]\Parameters-ExampleDispenseInputParametersMultipleMedicationDispenses.xml... 15.10.24-11:45:39.261 INFO - Validating against https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_DispenseOperation_Input|1.4... 15.10.24-11:45:46.600 INFO -

===== Valid: false =====

See 1 errors below.

  Severity     Code                                         Location (FHIRPath)    Profile, Element and Problem description
  --------     ----------------------------------------     -------------------    ----------------------------------------

1 ERROR Terminology_TX_ValueSet_NotFound Parameters.parameter[1].part[1].resource/Medication/Medication-Without-Strength-Code/.form.coding[0] ValueSet http://hl7.org/fhir/uv/ips/ValueSet/medicine-doseform vom Validator nicht gefunden

Erwartetes Verhalten

Die Locale-Einstellungen des Systems sollen keine Rolle für die Bewertung des Referenzvalidators spielen. Die Beispielressource soll als valide bewertet werden.

Umgebung

  1. Windows 10 (Locale en_US)
  2. Adoptium jdk-17.0.12.7-hotspot
  3. Referenzvalidator v2.6.0

Weitere Informationen

Das Fehlverhalten betrifft nur die Version 2.6.0 und nur die GEM_ERP_PR_Medication|1.4-Profile sowie die, die GEM_ERP_PR_Medication|1.4 enthalten (GEM_ERP_PR_PAR_DispenseOperation_Input|1.4, GEM_ERP_PR_PAR_CloseOperation_Input|1.4). Des Weiteren werden nur die Instanzen falsch bewertet, die das CodeSystem http://standardterms.edqm.eu (aus dem ValueSet http://hl7.org/fhir/uv/ips/ValueSet/medicine-doseform) zur Kodierung der Abgabeform verwenden.

Workaround

Das Starten des Referenzvalidators für die betroffenen Ressourcen mit einer englischsprachigen Locale führt zur korrekten Bewertung:

java "-Duser.country=US" "-Duser.language=en" -jar .\referencevalidator-cli-2.6.0.jar erp "[PATH]\Parameters-ExampleDispenseInputParametersMultipleMedicationDispenses.xml" 15.10.24-12:05:05.799 INFO - gematik Referencevalidator 2.6.0 Java: 17.0.12 from C:\Program Files\Eclipse Adoptium\jdk-17.0.12.7-hotspot on amd64 (64bit). 8136MB, 16 CPU cores available Locale: en_US

15.10.24-12:05:06.115 INFO - Reading input file C:\Dev\gematik-referenzvalidator\valmodule-erp\src\test\resources\OtherProfiles\GEM_ERP_PR_PAR_DispenseOperation_Input\1.4\valid\Parameters-ExampleDispenseInputParametersMultipleMedicationDispenses.xml... 15.10.24-12:05:06.149 INFO - Validating against https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_DispenseOperation_Input|1.4... 15.10.24-12:05:13.155 INFO -

===== Valid: true =====

alexey-tschudnowsky commented 1 month ago

Gelöst mit dem Release 2.6.1