Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support of clinical units (units not present in UCUMFormat properties file) #154

Closed
tiaden opened this issue Oct 30, 2019 · 8 comments
Closed

Comments

@tiaden
Copy link
Contributor

tiaden commented Oct 30, 2019

Hi
First thanks for this wonderful tool. Not sure if I'm right but I get a TokenException when I try the below

var ucumService = new UCUMServiceProvider();
var unitFormatService = ucumService.getFormatService();
var unitFormat = unitFormatService.getUnitFormat();
Unit<?> parsed1 = unitFormat.parse("mm[hg]");
System.out.println(parsed1);

I'm using the version 2.0 of this tool.
With a little investigation, I found that the definition of METER_OF_MERCURY_COLUMN is present in the UCUM.java file but not present if the UCUMFormat properties files. I'm not sure if I'm right.

Also I tried to more tests of this tool using the the functional tests provided by graham grieve at
https://unitsofmeasure.org/trac/wiki/FunctionalTests
After doing that I found that there are few units not supported by the version 2.0 of this tool. Please see below

Test 1-105: The unit '103/ul' was expected to be valid, but wasn't accepted
Test 1-106: The unit '10
-3/ul' was expected to be valid, but wasn't accepted
Test 1-107: The unit '10*+3/ul' was expected to be valid, but wasn't accepted
Test 1-110: The unit 'm[H2O]' was expected to be valid, but wasn't accepted
Test 1-111: The unit '1023' was expected to be valid, but wasn't accepted
Test 1-114: The unit '4.[pi].10
-7.N/A2' was expected to be valid, but wasn't accepted
Test 1-117: The unit '1{c}' was expected to be valid, but wasn't accepted
Test 1-155: The unit 'meq' was expected to be valid, but wasn't accepted
Test 1-162: The unit 'mm[Hg]' was expected to be valid, but wasn't accepted
Test 1-184: The unit 'wk' was expected to be valid, but wasn't accepted
Test 1-204: The unit 'meq' was expected to be valid, but wasn't accepted
Test 1-224: The unit 'wk' was expected to be valid, but wasn't accepted
Test 1-241: The unit '/[HPF]' was expected to be valid, but wasn't accepted
Test 1-242: The unit '/[LPF]' was expected to be valid, but wasn't accepted
Test 1-246: The unit '[APL'U]' was expected to be valid, but wasn't accepted
Test 1-248: The unit '[GPL'U]' was expected to be valid, but wasn't accepted
Test 1-249: The unit '[IU]' was expected to be valid, but wasn't accepted
Test 1-250: The unit '[IU]/d' was expected to be valid, but wasn't accepted
Test 1-251: The unit '[IU]/L' was expected to be valid, but wasn't accepted
Test 1-252: The unit '[IU]/mL' was expected to be valid, but wasn't accepted
Test 1-253: The unit '[MPL'U]' was expected to be valid, but wasn't accepted
Test 1-254: The unit '1012/L' was expected to be valid, but wasn't accepted
Test 1-255: The unit '10
6/L' was expected to be valid, but wasn't accepted
Test 1-256: The unit '109/L' was expected to be valid, but wasn't accepted
Test 1-275: The unit 'm[IU]/L' was expected to be valid, but wasn't accepted
Test 1-297: The unit 'mm[Hg]' was expected to be valid, but wasn't accepted
Test 1-337: The unit 'u[IU]/mL' was expected to be valid, but wasn't accepted
Test 1-351: The unit 'wk' was expected to be valid, but wasn't accepted
Test k=1=001: The unit '[arb'U]' was expected to be valid, but wasn't accepted
Test k=1=003: The unit '[iU]/mL' was expected to be valid, but wasn't accepted
Test k=1=005: The unit '[bdsk'U]' was expected to be valid, but wasn't accepted
Test k=1=008: The unit 'mm[Hg]' was expected to be valid, but wasn't accepted
Test k=1=010: The unit 'cm[H2O]' was expected to be valid, but wasn't accepted
Test k=1=014: The unit 'cm[H2O].s/L' was expected to be valid, but wasn't accepted
Test k=1=018: The unit 'cm[H2O]/(s.m)' was expected to be valid, but wasn't accepted
Test k=1=021: The unit '[drp]' was expected to be valid, but wasn't accepted
Test k=1=022: The unit 'dB[SPL]' was expected to be valid, but wasn't accepted
Test k=1=025: The unit '[ka'U]' was expected to be valid, but wasn't accepted
Test k=1=044: The unit '[knk'U]' was expected to be valid, but wasn't accepted
Test k=1=046: The unit 'meq/(8.h)' was expected to be valid, but wasn't accepted
Test k=1=047: The unit 'osm' was expected to be valid, but wasn't accepted
Test k=1=048: The unit '[mclg'U]' was expected to be valid, but wasn't accepted
Test k=1=049: The unit 'g.m/{hb}m2' was expected to be valid, but wasn't accepted
Test k=1=050: The unit 'meq/(8.h.kg)' was expected to be valid, but wasn't accepted
Test k=1=051: The unit 'osm/kg' was expected to be valid, but wasn't accepted
Test k=1=054: The unit 'meq/(kg.h)' was expected to be valid, but wasn't accepted
Test k=1=055: The unit 'osm/L' was expected to be valid, but wasn't accepted
Test k=1=058: The unit 'meq/h' was expected to be valid, but wasn't accepted
Test k=1=075: The unit '[todd'U]' was expected to be valid, but wasn't accepted
Test k=1=076: The unit '[in_i'Hg]' was expected to be valid, but wasn't accepted
Test k=1=077: The unit 'm[iU]/mL' was expected to be valid, but wasn't accepted
Test k=1=079: The unit '/[arb'U]' was expected to be valid, but wasn't accepted
Test k=1=080: The unit '[iU]' was expected to be valid, but wasn't accepted
Test k=1=083: The unit '[HPF]' was expected to be valid, but wasn't accepted
Test k=1=084: The unit '[iU]/d' was expected to be valid, but wasn't accepted
Test k=1=088: The unit '[iU]/h' was expected to be valid, but wasn't accepted
Test k=1=090: The unit 'u[iU]' was expected to be valid, but wasn't accepted
Test k=1=091: The unit '/[iU]' was expected to be valid, but wasn't accepted
Test k=1=092: The unit '[iU]/kg' was expected to be valid, but wasn't accepted
Test k=1=094: The unit '10
3{rbc}' was expected to be valid, but wasn't accepted
Test k=1=095: The unit '[iU]/L' was expected to be valid, but wasn't accepted
Test k=1=098: The unit '[iU]/min' was expected to be valid, but wasn't accepted
Test k=1=099: The unit 'mL/cm[H2O]' was expected to be valid, but wasn't accepted
Test k=1=107: The unit 'ueq' was expected to be valid, but wasn't accepted
Test k=1=149: The unit 'dB' was expected to be valid, but wasn't accepted
Test k=1=165: The unit 'eq' was expected to be valid, but wasn't accepted
Test k=1=172: The unit '1012/L' was expected to be valid, but wasn't accepted
Test k=1=180: The unit '10
3/L' was expected to be valid, but wasn't accepted
Test k=1=188: The unit '103/mL' was expected to be valid, but wasn't accepted
Test k=1=193: The unit 'mosm/L' was expected to be valid, but wasn't accepted
Test k=1=196: The unit '10
3/mm3' was expected to be valid, but wasn't accepted
Test k=1=204: The unit '106/L' was expected to be valid, but wasn't accepted
Test k=1=212: The unit '10
6/mL' was expected to be valid, but wasn't accepted
Test k=1=215: The unit 'meq' was expected to be valid, but wasn't accepted
Test k=1=220: The unit '106/mm3' was expected to be valid, but wasn't accepted
Test k=1=223: The unit 'meq/(kg.d)' was expected to be valid, but wasn't accepted
Test k=1=228: The unit '10
9/L' was expected to be valid, but wasn't accepted
Test k=1=231: The unit 'meq/(kg.min)' was expected to be valid, but wasn't accepted
Test k=1=236: The unit '109/mL' was expected to be valid, but wasn't accepted
Test k=1=239: The unit 'meq/d' was expected to be valid, but wasn't accepted
Test k=1=244: The unit '10
9/mm3' was expected to be valid, but wasn't accepted
Test k=1=247: The unit 'meq/kg' was expected to be valid, but wasn't accepted
Test k=1=255: The unit 'meq/L' was expected to be valid, but wasn't accepted
Test k=1=263: The unit 'meq/min' was expected to be valid, but wasn't accepted

@keilw keilw added this to the 2.0.1 milestone Oct 30, 2019
@keilw
Copy link
Member

keilw commented Oct 30, 2019

Thanks a lot for pointing that out. I wasn't aware the functional tests also worked with the UCUM system, do you think you might be able to write something about how to do that e.g. in the Wiki: https://github.com/unitsofmeasurement/uom-systems/wiki? For those units missing a format entry we'll add them for the next release. There was also a Jigsaw related dependency to the RI that should go into that, see #153

@tiaden
Copy link
Contributor Author

tiaden commented Oct 31, 2019

Sure, I can write about the functional in the wiki.. I will let you know when it is done. I also have a working example of those tests in java in case you want me to share that with you.

@tiaden
Copy link
Contributor Author

tiaden commented Dec 4, 2019

Sorry about the delay, this is the writing about the functional tests https://github.com/unitsofmeasurement/uom-systems/wiki/Conformance-to-Ucum-Functional-Tests.
When do you plan on releasing version 2.01 ? I can help with the addition of units in case you need help
Thank you

@keilw
Copy link
Member

keilw commented Jan 11, 2020

Based on #158 I think we'd release 2.0.1 a bit sooner, @zodikadem would you be able to help with this one, so we could include it with a future release (2.0.2 or 2.1, given it may offer further units from UCUM or Unicode probably a single dot release) also together with #157 ?

@keilw keilw removed this from the 2.0.1 milestone Jan 11, 2020
@tiaden
Copy link
Contributor Author

tiaden commented Jan 11, 2020

Ok. So if I understand correctly you want me to help with the addition of new units for UCUM and CLDR 36 ? I just want to confirm so I don't work on the wrong subject/task

@sc036868
Copy link

sc036868 commented Apr 8, 2020

I am also facing an issue with the clinical unit mm[Hg] not being accepted. Is there a timeframe of when this enhancement will be included?

@keilw
Copy link
Member

keilw commented Apr 8, 2020

Will have a look over Easter. There are other issues with UCUM especially the way that it loads resource bundles under Java 9 and above (Jigsaw) so there are other things to do there anyway.

@sc036868
Copy link

sc036868 commented Apr 8, 2020

Thanks for the update!

@keilw keilw added this to the 2.1 milestone Jun 13, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
keilw added a commit that referenced this issue Jul 8, 2020
@keilw keilw closed this as completed Jul 10, 2020
keilw added a commit that referenced this issue Jul 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants