VOUnits RFC
Norman Gray
norman at astro.gla.ac.uk
Tue Jul 30 07:10:17 PDT 2013
Greetings, all.
On 2013 Jul 29, at 22:11, Arnold Rots wrote:
> If Norman introduces MyWeight, how does the user know what value
> Norman actually used?
> Some canonical value? his preferred weight? his weight of the day?
> Is that value (whatever it is) published anywhere?
> The tropical year is another example.
...as is local solar day.
I think this is a great example. If I've sent Arnold a dataset with units of MyWeight, then it's presumably because he asked me to, or because I have some other grounds for believing that he'll want that, and be able to do something with it. Neither of us would welcome the VOUnits spec's interference in that conversation.
This example, and Rob's pointing out that something like jupMass may be recalibrated in future, are both examples of the scalefactor changing in time. As such, they show that a unit is not straightforwardly reducible to a scalefactor*base-unit, and indeed that it might be _incorrect_ to force it to be so reduced.
When I was implementing the VOUnit stuff to check the grammars and design, I realised, somewhat to my surprise, that all that a list of 'known units' adds is disambiguation plus a bit of extra metadata. Syntactically, 'known' or 'not-known' makes very little difference. That means that the question of what to do with unknown units gets punted to the application which is calling the parser, which is probably in much the best place to decide on the best course of action. That action may consist of "I don't recognise this unit, so you FAIL", but it doesn't have to be.
----
All of this does of course leave the question of how one communicates the meaning of these units. Marco sketched a mechanism based on the VOTable LINK element: that's a nice approach which would work in that context, and which would tie in neatly to the mention of QUDT in an earlier message of this thread. But it also leaves the problem of 'odd' units where it belongs, at an application level rather than in an IVOA Recommendation.
----
Incidentally (and finally), I should point out that the unit 'MyWeight' would be parsed, according to the VOUnits spec, as the mega-'yWeight', which is pretty clearly undesirable (the consequence of this hadn't fully struck me before). There are two alternatives: (i) allow units to be quoted (thus <'jupMass'/hr> or <'MyWeight'/'USD(Au)'>), or (ii) forbid prefixes on all unknown units. Option (i) has the advantage of highlighting that a unit is 'unknown', but right now, I'm inclined to invert the prescription of the spec and go for (ii).
--
Norman Gray : http://nxg.me.uk
SUPA School of Physics and Astronomy, University of Glasgow, UK
More information about the semantics
mailing list