VOTable 1.5 Working Draft (2023-09-13)

Mark Taylor m.b.taylor at bristol.ac.uk
Mon Oct 16 15:27:42 CEST 2023


Markus has provided his answers to that question earlier in this thread
(http://mail.ivoa.net/pipermail/apps/2023-October/001609.html):
referential integrity, one-role-limitation, implementational
inconvenience.

On Mon, 16 Oct 2023, Pierre Fernique wrote:

> 
> In preparation for the VOTable 1.5 meeting later today, I'd like to comment on
> the previous example.
> Why not simply use what is already defined in the current standard. Place the
> utype on the fields to simplify recognition of their role, and add a "ref" to
> the associated COOSYS?
> 
> 
>   <VOTABLE>
>     <RESOURCE>
>       <COOSYS *ID="system"* system="ICRS"/>
>       <TABLE>
>         <FIELD name="ra" utype="votable:LonLatPoint-lon" *ref="system"*
> datatype="double" unit="deg"/>
>         <FIELD name="dec" utype="votable:LonLatPoint-lat" *ref="system"*
> datatype="double" unit="deg"/>
>         <FIELD name="pmra" utype="votable:ProperMotion-lon" *ref="system"*
> datatype="double" unit="mas/yr"/>
>         <FIELD name="pmdec" utype="votable:ProperMotion-lat" *ref="system"*
> datatype="double" unit="mas/yr"/>
>       </TABLE>
>     </RESOURCE>
>   </VOTABLE>
> 
> No need to change the standard for that. And it is exactly what Aladin Desktop
> uses for years (except these utypes). And we just wait MIVOT for a more
> generic solution.
> Pierre
> 
> Le 16/10/2023 à 14:17, Mark Taylor a écrit :
> > On Mon, 16 Oct 2023, Francois Ochsenbein wrote:
> > 
> > > > > components should be placed ? Also don't forget that the COOSYS
> > > > > element was up to now located at the RESOURCE level, and from there
> > > > > you can't safely reference FIELDs which may exist in several TABLEs;
> > > > > should COOSYS become as a sub-TABLE element? Could the example
> > > > > proposed at the end of section 3.4 work is there are several TABLEs
> > > > > in the RESOURCE ?
> > > > Ah: is that the "safely" in you original mail?  Let me try to
> > > > re-phrase it:
> > > > 
> > > >   If COOSYS contains references into a TABLE and that TABLE is
> > > >   taken out when re-organising the VOTable, the references in the
> > > >   COOSYS will be dangling.
> > > ==> It's worse that this: the referencing may quote FIELDs in different
> > >      TABLEs, which potentially generates a complete mess!
> > I agree with Francois on this point: COOSYS as a RESOURCE child
> > is at the wrong level to do the job of referencing FIELDs,
> > since a FIELD can only appear within a single TABLE.
> > That doesn't make it impossible for it to do the job proposed,
> > but it's less elegant, and it also means that clients parsing such
> > VOTables have to go looking for the COOSYS in the parent RESOURCE
> > rather than finding it in the TABLE.  When doing this they may find
> > a COOSYS that belongs in that RESOURCE but is not relevant to the
> > TABLE of interest (since it refers to another TABLE in the same RESOURCE).
> > I'd say that is an annoyance on the same level as having to do
> > ref-ID matching between a GROUP and a COOSYS.
> > 
> > I don't have strong feelings about whether COOSYS is altered or
> > GROUPs are used for this purpose, except for the point made by Tom:
> > 
> > On Mon, 9 Oct 2023, Tom Donaldson wrote:
> > 
> > > In my reading of the GROUP specification, it is too general to be used
> > > unambiguously among provider and consumers who have only read the VOTable
> > > spec.  GROUPs do supply a very good mechanism for peers to convey mutually
> > > agreed upon information, but since that requires mutual understanding of
> > > non-public conventions, it cannot be reliably interoperable.  I'd be happy
> > > to be proven wrong here, but as Markus points out, without an agreed-upon
> > > standard or convention, there is guesswork in both providing and consuming
> > > this content.  To me such guesswork is not suitable for interoperability.
> > GROUPs and ID/ref matching have been used in VOTable for a number
> > of things in a way that may look obvious to the author but whose
> > semantics is not at all obvious to client who may have no idea what
> > is intended by grouping some set of fields and pointing at some
> > different kind of element.  But I don't think the interoperability
> > issue is insurmountable, it's just a matter of flagging and
> > documenting the various usages.
> > 
> > That could be done in the context of this discussion for instance
> > by putting a utype (with semantics that are documented in the
> > VOTable document or possibly elsewhere) on the GROUP that links
> > table columns to an old-style COOSYS, e.g.:
> > 
> >    <VOTABLE>
> >      <RESOURCE>
> >        <COOSYS ID="system" system="ICRS"/>
> >        <TABLE>
> >          <GROUP utype="votable:skycoords" ref="system">
> >            <FIELDref utype="votable:LonLatPoint-lon"  ref="id-ra"/>
> >            <FIELDref utype="votable:LonLatPoint-lat"  ref="id-dec"/>
> >            <FIELDref utype="votable:ProperMotion-lon" ref="id-pmra"/>
> >            <FIELDref utype="votable:ProperMotion-lat" ref="id-pmdec"/>
> >          </GROUP>
> >          <FIELD name="ra"    ID="id-ra"    datatype="double" unit="deg"/>
> >          <FIELD name="dec"   ID="id-dec"   datatype="double" unit="deg"/>
> >          <FIELD name="pmra"  ID="id-pmra"  datatype="double" unit="mas/yr"/>
> >          <FIELD name="pmdec" ID="id-pmdec" datatype="double" unit="mas/yr"/>
> >        </TABLE>
> >      </RESOURCE>
> >    </VOTABLE>
> > 
> > where the GROUP-qualifying utype "votable:skycoords" is documented
> > in the same place as the FIELDref-level utype votable:LonLatPoint-lon
> > and friends.  (I still don't like the names of those utypes,
> > and there's probably a better name than "votable:skycoords",
> > but you get the idea).
> > 
> > Mark
> > 
> > --
> > Mark Taylor  Astronomical Programmer  Physics, Bristol University, UK
> > m.b.taylor at bristol.ac.uk           https://www.star.bristol.ac.uk/mbt/
> 

--
Mark Taylor  Astronomical Programmer  Physics, Bristol University, UK
m.b.taylor at bristol.ac.uk          https://www.star.bristol.ac.uk/mbt/


More information about the apps mailing list