UTYPEs and UFIs

Pedro Osuna Pedro.Osuna at sciops.esa.int
Wed Sep 19 05:44:58 PDT 2007


Hi Jonathan,

nice piece of work. I send you here what we had already compiled and  
showed in Beijing. We would obviously like to be part of the  
definition of UFIs, as they are of the utmost importance for  
discovery (ADQL) purposes, from which the issue was raised the first  
time.

The attached (see below) summary was compiled in April this year by  
Aurelien Stebe from our work here (Aurelien, Inaki, Alberto, Jesus  
and myself) after discussions with you and others prior to Beijing. I  
have changed unique UTYpes for UFIs to follow your new naming...

I also attach our possible answer to your open questions.

I am not sure I will be able to allocate much on our discussion for  
UTypes in our -single- VOQL session. In Beijing we agreed that you  
and myself would initiate this work, but there has not been much  
coordination and I am afraid that just a small bit on the last part  
of our single VOQL session might not be enough...

Maybe we have the chance to try to allocate more time if we meet  
during ADASS....

We keep in touch.
Cheers,
P.

On Unique UTYpes (====> UFIs in the new nomenclature)
------------------------------------------------------------------------ 
------

UFIs should be *unique* identifiers for elements in a DM.

They could respect the following BNF (from Alberto) :
<alpha> ::=  a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z
            |A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z
<digit> ::=  0|1|2|3|4|5|6|7|8|9
<char>  ::= <alpha>|<digit>|-|_
<period> ::== .
<colon> ::== :
<word-component> ::= <alpha>|<digit>|<word-component><char>
<namespace-ref> ::= <word-component>
<word> ::= <word-component>|<word><period><word-component>
<UFI> :: = <namespace-ref><colon><word>|<word>

that is for ex:         char:Axis.Time.start

By uniquely pointing at an element in a DM both the type and the  
usage of that element is known (should be clear in the DM).
UFIs could be constructed by reading the DM UML diagram from the root  
and writing in sequence the names of the entities separated by single  
dots until reaching the desired information to describe. Hence, the  
UML is the normative info and the UFis should stem from it  
automatically.

A convention might be to write UFIs following OO names case :  
"classes" first letter uppercase, following words first letter  
uppercase, all the rest lowercase.
The namespace prefix to use should be fixed by the DM doc. (it is the  
case more or less with "spec" "char" or "ssa")

New UFIs for attribute specification (filtering)
==================================
It is hard for the moment to express "the RA coord value of the  
center of the image in FK5".
It is possible to filter on it in a query writing something like :  
WHERE char:Axis.Spatial.coordSys = "FK5" AND  
char:Axis.Spatial.Center.ra < 42 AND NECESSARY_JOINS
But it is not possible to give a unique name to this value if  
returned in table format.

The proposal :   write it like this    =>      char:Axis.Spatial 
[coordSys="FK5"].Center.ra

A few things to discuss: use square brackets or curly brackets ? I  
would avoid parenthesis and XML type tags because already present in  
an ADQL syntax.
    force quotes around string type values ? or just write    
[coordSys=FK5]
    allow multiple conditional filters ?  like   [coordSys="FK5" and  
epoch="J200"]
          or even     char:Axis.Spatial[coordSys="FK5"].Center 
[unit="deg"].ra

If we want Registry people to use this also, they will want it to be  
fully compatible with XPath (especially AstroGrid). That is, square  
brackets, with quotes and "@" identifier for attributes (ex:   
char:Axis.Spatial[@coordSys="FK5"].Center.ra) .... they might even  
want slashes instead of dots. .... and meaningful namespaces => no  
"char:" if it is not declared and is the actual NS in the schema.
------------------------------------------------------------------------ 
------------------------------------------------------------------------ 
-
Possible answers to the questions on your document follow:
===============================================
** Spectrum.Target.Name  OR  spec:Target.Name    ->  Advantages and  
disadvantages on both side. Easier if we can avoid actual XML  
namespace declarations.
** Top Level Scope : yes, identify clearly in the IVOA, which DM are  
Top Level and which ones are only meant to be used by other DMs.
** Combining DMs : no, do not use the UCD system (UCD1;UCD2). If  
UType is too long, maybe the DM is wrong or the DM is just very complex.
** UFIs : token1.token2[attr1=valA].token3   That's our (only) idea/ 
solution, and it is the solution from the W3C also (XPath). But let's  
do it like in the Registry WG, use what we need from XPath and only  
what we really need.
** U = U.Value : no, a single element to map is much simpler than  
optional possibilities.  "value" should not exist in a DM anyway.
** Base UTypes on UML or XSD ? Should be rather identical, but I  
think XSD-based would allow actual XPath like usage of the UType.
** VOTable and UTypes : no, do not inherit the root of the UType from  
the GROUP, makes for too much parsing.

Cheers,
P.



On Sep 18, 2007, at 2:38 PM, Jonathan McDowell wrote:

>
> Dear DM team,
>  I have prepared a note on my view of the role and syntax of UTYPEs
> (data model field labels) and their relationship to what I call UFIs
> (ways to describe/locate uniquely a piece of information in a DM  
> instance),
> to set things up for discussion in Cambridge.
>  The doc is
>   http://hea-www.harvard.edu/~jcm/vo/docs/utype/ut2.pdf
>
> See you in the UK
>  Jonathan McDowell



_________________________________________
Pedro Osuna Alcalaya

European Space Agency (ESA)
European Space Astronomy Centre (ESAC)
Science Operations Department (SCI-O)
Science Archives and Computer Support Engineering Unit (SCI-OE)
e-mail: Pedro.Osuna at esa.int
Tel + 34 91 813 13 14    Fax: +34 91 813 11 72
_________________________________________
European Space Astronomy Centre (ESAC)
P.O. Box 50727
E-28080 Villafranca del Castillo
MADRID - SPAIN





================================================================================================
This message and any attachments are intended for the use of the addressee or addressees only. The
unauthorised disclosure, use, dissemination or copying (either in whole or in part) of its content
is prohibited. If you received this message in error, please delete it from your system and notify
the sender. E-mails can be altered and their integrity cannot be guaranteed. ESA shall not be liable
for any e-mail if modified.
=================================================================================================

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ivoa.net/pipermail/dm/attachments/20070919/e4b2f882/attachment-0001.html>


More information about the dm mailing list