medizininformatik-initiative / kerndatensatzmodul-labor

Kerndatensatzmodul Labordaten
0 stars 1 forks source link

Signifikante Dezimalstellen #7

Closed jorieck closed 8 months ago

jorieck commented 1 year ago

Laut FHIR-Spezifikation soll die Präzision von Dezimalwerten beibehalten werden, z.B. sollte 0.100 so erhalten bleiben. Nur werden durch unseren JSON-Parser die letzten Nullstellen entfernt, sodass das Beispiel zu 0.1 geparst wird. Diese Problematik kam schon im FHIR-Chat auf. Ein custom JSON-Parser kommt für uns nicht in Frage, wir wollen dennoch bei der JSON-Repräsentation bleiben.

Dies betrifft uns unter anderem bei den Observations für die Laboruntersuchungen. Das Thema mit den Dezimalstellen scheint im IG nicht behandelt zu sein, zumindest habe ich davon noch nichts gelesen. Als standortspezifische Lösung würden wir dem Element Observation.valueQuantity.value die Extension precision hinzuzfügen, damit die Anzahl der signifikanten Stellen erhalten bleibt. Somit kann später wieder auf die korrekte Dezimalzahl zurückgeschlossen werden. Als Beispiel würden wir 10.100 mg/l wie folgt in der Observation darstellen:

valueQuantity : {
  "value" : 10.1,
  "_value" : {
    "extension" : [
      {
        "url" : "http://hl7.org/fhir/StructureDefinition/quantity-precision",
        "valueInteger" : 3
      }
    ]
  },
  "unit" : "mg/l",
  "system" : "http://unitsofmeasure.org",
  "code" : "mg/l"
}

Da bei 10.1 nur eine Dezimalstelle angegeben ist, laut Extension aber drei vorhanden sein sollen, würden wir somit wissen, dass die restlichen zwei Stellen beim Parsen weggeschnitten wurden und somit mit Nullen aufzufüllen sind.

Gibt es hier vielleicht doch schon andere Lösungsansätze? Eventuell wäre diese oder eine ähnliche Extension eine sinnvolle Ergänzung für die Profilierung der Laboruntersuchung (und eventuell auch in anderen Modulen), wenn an anderen Standorten eine ähnliche Problematik besteht.