UCDS vs DM - Peacekeeping
martin hill
mchill at dial.pipex.com
Fri Oct 17 09:05:45 PDT 2003
I've been trying to sort out in my own head the differences between UCD2s and
data models. Particularly as one doesn't seem to work entirely without the
other. So donning my UN peacekeepers hat (which in the British case is a
tatty gardeners hat in a rather trendy camouflage, not a kevlar helmet):
It strikes me that data models are about structure, and UCDs about describing
elements in that structure.
Now it is probably possible that the way data models are defined could include
naming elements to define what they mean. I suggest that these should be (or
include as attributes) UCDs, at the very least so that we can compare data
items that have been formally modelled with those that haven't.
For example, we can say (simplistically) that a coordinate is an RA, DEC,
error, and refers to some co-ordinate frame, and might look like this in XML:
<CatalogueObject ucd2="sky.galaxy">
<WorldCoordinate ucd2="pos" frame="J2000">
<RA ucd2="pos.wcs.ra">
<VALUE units="degrees">42</VALUE>
<ERROR ucd2="error" units="arcSeconds">23</ERROR>
</RA>
<DEC ucd2="pos.wcs.dec">
<VALUE units="degrees">42</VALUE>
<ERROR ucd2="error" units="arcSeconds">23</ERROR>
</DEC>
</WorldCoordinate>
<Brightness ucd2="phot" type="SomeObscureOptical">
<Magnitude ucd2="phot.mag.vega">72.3</Magnitude>
<Error ucd2="error">1</Error>
</Brightness>
etc
</CatalogueObject>
Now this is a horribly simple example (sorry about the mixed-up case
conventions) - how do people feel about it? It means that we should avoid
trying to describe structure/context in UCDs (which has the potential of
making them horribly long and complicated) and gives us an immediately useful
way of giving wider meaning to our data structures.
It kind of implies that we then have a method for appending our UCDs up a data
model tree if we need to get more context for them. Thus we don't have to
have src.galaxy;phot.mag.ObscureOptical;error *as a defined UCD*. Instead
such strings are constructed out of individual UCDs as required by the program
that is investigating the data.
It also means that UCDs don't have to be specific (which the UCD group are
avoiding cos it's a horrible task, small wonder) and yet I as a developer can
assemble specifics for doing cross comparisons.
I've only had a pint and it still seems a good idea. It was a big pint though.
--
Martin Hill
07901 55 24 66
www.mchill.net
More information about the dm
mailing list