<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Dear Marco,<br>
<br>
thanks for your comments.<br>
<br>
Yes, we have considered TAP 1.1, but, as you can imagine, we do
not want to use a working draft for an operational software.<br>
<br>
Once it is released, we might schedule the implementation of TAP
1.1. in our archive.<br>
<br>
Thanks,<br>
cheers,<br>
Juan Carlos.<br>
<br>
<br>
On 08/21/2017 09:08 AM, Marco Molinaro wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CABiOC75xkJH20oOu8GekiTZK_zzYV7JJQcuGf4_mP-kMQTDn0w@mail.gmail.com">
<div dir="ltr">Dear Juan Carlos, dear all,
<div><br>
</div>
<div>just a quick reply.</div>
<div><br>
</div>
<div>Have you considered working directly on TAP-1.1?</div>
<div>It's in <span class="" id=":zn.1" tabindex="-1" style="">WD</span>
status now, but I was about to push it to PR this week and it
should solve at least the "size" issue in columns instead of
adding the array_dim and array_type columns (that you can
always leave there, of course).</div>
<div><br>
</div>
<div>Apart from that, accessing array internal elements is not
yet covered, that's true, so I'm glad <span class=""
id=":zn.2" tabindex="-1" style="">GAIA</span> proposes its
own implementation as a use case in that direction.</div>
<div><br>
</div>
<div>Cheers,</div>
<div> Marco<br>
<div class="gmail_extra"><br>
<div class="gmail_quote">2017-08-21 8:46 GMT+02:00 Juan
Carlos Segovia <span dir="ltr"><<a
href="mailto:juan.carlos.segovia@sciops.esa.int"
target="_blank" moz-do-not-send="true"><span class=""
id=":zn.3" tabindex="-1" style="">juan</span>.<span
class="" id=":zn.4" tabindex="-1" style="">carlos</span>.<span
class="" id=":zn.5" tabindex="-1" style="">segovia</span>@<span
class="" id=":zn.6" tabindex="-1" style="">sciops</span>.<span
class="" id=":zn.7" tabindex="-1" style="">esa</span>.int</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Dear
All,<br>
<br>
This mail is to explain how arrays are going to be
handled in the Gaia archive TAP service for DR2.<br>
<br>
We can consider to modify the approach in the future if
TAP finally supports this data type but, in our view,
the current approach is already providing the basic
support required.<br>
<br>
In Gaia we are going to work with arrays of multiple
dimensions. It means we need something like (VOTable
syntax) 'AxBxC...[x*]' (e.g. '2x3x*') as the size of an
array column.<br>
<br>
In the current stable specification (1.0),
TAP_SCHEMA.columns.size is an integer. This value cannot
be mapped to the required needs.<br>
<br>
Also, the current stable specification assigns to
TAP_SCHEMA.columns.size, for numeric types with value
> 1, a database type VARBINARY.<br>
<br>
We tried to be compatible with the current
specification. So we have decided to assign VARBINARY
type for all numeric array types. Note that as the data
type VARBINARY is assigned, you loose the original data
type.<br>
<br>
In order to be compatible, we have added two new columns
to TAP_SCHEMA.columns table:<br>
<br>
array_dim (dimensions)<br>
array_type (numeric data type)<br>
<br>
So, for instance, for an integer array of 4x5, we have
the following TAP_SCHEMA.column row (only involved
columns are shown):<br>
<br>
datatype: 'VARBINARY'<br>
size: null<br>
array_dim: '4x5'<br>
array_type: 'int'<br>
<br>
(There are some problems with chars, so we finally
decided to avoid char arrays.)<br>
<br>
Please, find the attached document with a basic mapping
for our types. Only integer, short, char and
unsignedByte are shown, but all numeric types (short,
int, long, float, double) are handled in the same way.
Please, take in mind that the last column, database data
type, can be ignored as this is an implementation
detail.<br>
<br>
The implementation we have done is quite similar to the
specified in VOTable 1.1 working draft (main difference:
VARBINARY for arrays data type).<br>
<br>
When retrieving data, the VOTable will contain the right
array specification as they are extracted from the two
extra columns: array_dim and array_type.<br>
<br>
In order to access an specific element (and until the
ADQL syntax allows a direct access) we have implemented
a database function named get_array_double_element (only
for doubles) and can be used as follows (more
information at <a
href="http://gea.esac.esa.int/archive-help/index.html"
rel="noreferrer" target="_blank"
moz-do-not-send="true">http://gea.esac.esa.int/archiv<wbr>e-help/index.html</a>,
section "ADQL syntax"):<br>
<br>
<br>
SELECT get_double_array_element('{{1.<wbr>0,2.6},{0.8,0.1}}','[1][2]')
from public.dual<br>
<br>
<br>
Best regards,<br>
Juan-Carlos Segovia.<br>
<br>
-- <br>
Serco for ESA - European Space Agency<br>
<br>
Juan-Carlos Segovia Serrato<br>
<br>
ESAC Science Data Centre<br>
Data and Engineering Division<br>
Operations Department, Directorate of Science<br>
European Space Astronomy Centre (ESAC)<br>
European Space Agency (ESA)<br>
<br>
email: <a
href="mailto:juan.carlos.segovia@sciops.esa.int"
target="_blank" moz-do-not-send="true">juan.carlos.segovia@sciops.esa<wbr>.int</a><br>
Phone: (34)-91-8131-175 - 70175 internal<br>
Fax: (34)-91-8131-308<br>
<br>
European Space Astronomy Centre (ESAC)<br>
Camino Bajo del Castillo s/n<br>
Urb. Villafranca del Castillo<br>
28692 Villanueva de la Cañada, Madrid, Spain.<br>
<br>
<br>
This message and any attachments are intended for the
use of the addressee or addressees only.<br>
The unauthorised disclosure, use, dissemination or
copying (either in whole or in part) of its<br>
content is not permitted.<br>
If you received this message in error, please notify the
sender and delete it from your system.<br>
Emails can be altered and their integrity cannot be
guaranteed by the sender.<br>
<br>
Please consider the environment before printing this
email.<br>
<br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
Serco for ESA - European Space Agency
Juan-Carlos Segovia Serrato
ESAC Science Data Centre
Data and Engineering Division
Operations Department, Directorate of Science
European Space Astronomy Centre (ESAC)
European Space Agency (ESA)
email: <a class="moz-txt-link-abbreviated" href="mailto:juan.carlos.segovia@sciops.esa.int">juan.carlos.segovia@sciops.esa.int</a>
Phone: (34)-91-8131-175 - 70175 internal
Fax: (34)-91-8131-308
European Space Astronomy Centre (ESAC)
Camino Bajo del Castillo s/n
Urb. Villafranca del Castillo
28692 Villanueva de la Cañada, Madrid, Spain.
</pre>
<PRE>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 not permitted.
If you received this message in error, please notify the sender and delete it from your system.
Emails can be altered and their integrity cannot be guaranteed by the sender.
Please consider the environment before printing this email.
</PRE></body>
</html>