Closed jmkeil closed 11 months ago
Thanx again so much, Jan Martin! Your contributions are so greatly appreciated! :) So, I have reviewed all changes and they seemed fine. Everyone who reads this, see issue #42 for more details why this is very important. There's maybe only one point of attention: conversions of numbers greater than 1, like:
<!-- hasDefinition --> <om:hasFactor rdf:datatype="&xsd;float">1.0e9</om:hasFactor>
to:
<!-- hasDefinition --> <om:hasFactor rdf:datatype="&xsd;decimal">1000000000</om:hasFactor>
Now, the significance of the number has changed (the precision). Of course this is less severe than the issues raised in #42, so I think we should accept this. Hopefully in the future, datatypes will improve so that we will be able to indicate the proper significances. What do you think, Jan Martin?
None of the current standard datatypes supports significance. It is only the lexical representation, which (falsely) seems to represent significance. But it is not reflected in the lexical mapping: "1.0e9"^^xsd:float
≡ "1.00e9"^^xsd:float
and "1000000000"^^xsd:decimal
≡ "1000000000.000000"^^xsd:decimal
. There once was an attempt to define precisionDecimal as a numeric datatype preserving significance. But it got dropped in the XSD standardization process.
Thanx, you're completely right. I also dived in it and it became clear to me. Wanted to let you know, but you were faster than me. ;)
This solves #42.
I used a RegEx based python script to do the transformation.