SKOS concepts in VOTable
Mark Taylor
m.b.taylor at bristol.ac.uk
Mon May 28 02:54:04 PDT 2012
On Fri, 25 May 2012, Sebastien Derriere wrote:
> Hi all,
>
> The need to express SKOS concepts emerged during this interop,
> for example to indicate what SKOS concept corresponds to a column
> contents for the Theory WG.
> There is no dedicated VOTable element or attribute to do this,
> and so several ideas have been suggested. I try to list these below,
> in order to see what people are thinking would be the best way to go.
> The question of the VOTable representation is only one aspect of the
> problem, because there are issues like being able to query on SKOS
> concepts in TAP for example...
> Several concepts coming from different SKOS vocabularies could in
> principle be associated to a single VOTable column.
I'm with Norman on this.
> Solution 1 :
> Use the "ucd" attribute. The UCD gives a semantic information on what
> a quantity is. With SKOS vocabularies, we have more flexibility, so the
> UCD attribute could be broadened to other vocabularies.
> PROs : use an existing attribute
> CONs : the regexp for ucd attribute in VOTable does not allow the '/'
> character, so it cannot contain URIs. It could break some apps expecting
> to find words from the UCD vocabulary if some alternate vocabularies are
> allowed in the same attribute. Is is not possible to describe several
> SKOS concepts, because there is only one attribute.
Valid syntax aside, using the existing ucd attribute clearly counts
as abuse of it, since it is intended to hold a UCD, that is something
defined by the UCD1 or UCD1+ standards (or possibly successors to these).
Using the ucd attribute for a SKOS concept would also preclude tagging
a column with an actual UCD.
> Solution 2 :
> Create another attribute (or element) dedicated to SKOS vocabularies.
> PROs : clean way to do things. Well defined scope, no ambiguities.
> CONs : makes metadata generation more complicated or confusing for data
> providers (generate ucds, utypes, skos, ...). If it is an attribute,
> not possible to describe several SKOS concepts. Requires schema change in
> VOTable 1.3 to allow this solution.
Although this is quite clean, I don't like the idea of adding a new
attribute to FIELD every time somebody comes up with a new item of
per-column metadata; VOTable will keep getting more complicated.
If it was absolutely necessary to do something like this, I would
favour some extensible mechanism (value='...' role='skos' or similar).
> Solution 3 :
> Use <LINK> subelements for <FIELD>.
> PROs : already allowed in VOTable 1.2. URIs can be expressed in href="".
> Possible to use content-type and content-role attributes to give additional
> context. Possible to have multiple <LINK> for one <FIELD>.
> CONs : not sure how parsers would handle this or how this can be used
> in TAP...
Since LINK is already present, and seems to be syntactically and
semantically capable of doing what's required here, it looks to me
like the best option.
> Other solutions ?
> Like custom use of PARAM / GROUP.
PARAM/GROUP is probably doable, but can get a bit fiddly.
Mark
--
Mark Taylor Astronomical Programmer Physics, Bristol University, UK
m.b.taylor at bris.ac.uk +44-117-928-8776 http://www.star.bris.ac.uk/~mbt/
More information about the interop
mailing list