additional metdata for describing columns, parameters
Ray Plante
rplante at poplar.ncsa.uiuc.edu
Wed May 13 08:26:40 PDT 2009
DALers and VOTable-ers,
As very nicely summarized in Mark Taylor's email today
(http://www.ivoa.net/forum/dal/0905/1236.htm), an important thread of
discussion is how to provide additional metadata to column descriptions
(FIELD, PARAM) that will aid applications in the handling of the data they
contain.
I thought it might be useful to share an XML Schema technique that I have
been experimenting with in the context of VOResource extensions (such
as VODataService). It's not always applicable nor always perfectly
convenient, which I'll discuss below, but it might be useful. Consider
that the following could be added to the definition of the FIELD element:
<xs:anyAttribute namespace="##other" />
What this says is that the FIELD element can contain any (globally
defined) attribute from another schema (i.e. other than VOTable). That
attribute would have to be qualified with an XML prefix.
The aim of this is to allow any additional other metadata to be tacked
on to the FIELD element as long as it has been defined by in a Schema
document. I think this would most useful for communicating metadata such
as handling or transformation hints that are *specific to a particular
application*, such as TAP.
For example, we can imagine that VOTables that go back and forth between
a TAP service and a client would have FIELD elements with an attribute
like 'tap:ADQLtype="TIMESTAMP"' to indicate an TAP-specific interpretation
of the data. Any application that understood tap:ADQLtype could treat the
data values as timestamps; those that did not would have to treat it as
whatever is given in the "type" attribute.
Where this solution is less appropriate is as a solution to a problem that
spans across applications. The problem of relating STC information would
probably fall into this category. There in lies a downside of the
solution: it could lead to addressing general VOTable handling problems
through ad-hoc solutions and thereby reduce interoperability.
Another disadvantage may be in considering the case of uploading tables to
a TAP service and how this specialized metadata gets into the VOTable. If
the anyAttribute were incorporated into the VOTable standard, then
presumably VOTable libraries could be updated to allow arbitrary metadata
to be added to the FIELD elements. Furthermore, TAP services would have
to be lenient about the existance of TAP-specific metadata; otherwise, we
would lose the ability to upload arbitrary VOTables. But if extra
column information is usually needed to upload a table, would it matter if
it was encoded in a standard VOTable attribute or something customized to
TAP? I'm not sure.
I hope this doesn't confuse the issue.
cheers,
Ray
More information about the dal
mailing list