<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Dear Datalink contributors and Apps members</p>
<p><i>This is an open discussion concerning DATALINK vs LINK usage.</i><i><br>
</i></p>
<p><span class="tlid-translation translation" lang="en"><span
title="" class="">I looked in detail at the <a
moz-do-not-send="true"
href="https://wiki.ivoa.net/internal/IVOA/DataLink-1_0-Next/DataLink.pdf">new
Datalink document</a> and I tried to evaluate the potential
impact on the current use of the classic VOTable LINK.</span>
<span title="" class="">Specifically, I tried to write the
VOTable corresponding to a basic Simbad result, containing two
direct links, one to get the basic Simbad result page, the
other to list the associated bib references (this is a
real/live example since 18</span> <span title="" class="">years
- the expected result in Aladin is provided at the end of this
mail).</span> <span title="" class=""></span><br>
<br>
<span title="" class="">Currently, I have to admit that I remain
a little bit dubious about the complexity of the Datalink
solution to implement one or more direct simple links.</span><br>
<span title="">In any case, here are the results of my effort:</span></span></p>
<div class="moz-cite-prefix">
<div class="text-wrap tlid-copy-target">
<div class="result-shield-container tlid-copy-target"
tabindex="0"><span class="tlid-translation translation"
lang="en"><b><span title="" class="">1) Method using VOTable
LINK (available from v1.0 and following), using
templating convention ($ {columnName} ... described in
VOTable appendices)</span></b><b><br>
</b><b><br>
</b><i><span title="" class="">We can easily describe in one
XML line the 4 essential elements of a link: 1-how is
built the link, 2-where it must be placed, 3-what is its
associated text, 4-what it will return.</span></i><i> </i><i><span
title="">The knowledge of the links is placed at the
beginning of the VOTable stream which will simplify the
life of the clients</span></i></span></div>
</div>
</div>
<div class="moz-cite-prefix"><br>
</div>
<p><tt><VOTABLE><RESOURCE><TABLE></tt><tt><br>
</tt><tt> <FIELD ID="MAIN_ID" name="MAIN_ID"
ucd="meta.id;meta.main" datatype="char" arraysize="*"
width="22"></tt><tt><br>
</tt><tt> <DESCRIPTION>Main identifier for an
object</DESCRIPTION></tt><tt><br>
</tt><font color="#009900"><b><tt> <LINK
contentType="text/html"
href=<a class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id?Ident=${MAIN_ID}&NbIdent=1"
moz-do-not-send="true">"http://simbad.u-strasbg.fr/simbad/sim-id?Ident=${MAIN_ID}&NbIdent=1"</a>/></tt></b><b><tt><br>
</tt></b></font><tt> </FIELD></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt> <FIELD ID="BIBLIST" name="BIBLIST" ucd="meta.bib"
datatype="short" width="4"></tt><tt><br>
</tt><tt> <DESCRIPTION>List of
Bibcodes</DESCRIPTION></tt><tt><br>
</tt><b><font color="#009900"><tt> <LINK </tt></font></b><b><font
color="#009900"><tt><font color="#009900"><b><tt>contentType="text/html"
title</tt></b></font></tt></font></b><b><font
color="#009900"><tt><font color="#009900"><b><tt><font
color="#009900"><b><tt>="${BIBLIST} references for
${MAIN_ID}"<br>
</tt></b></font> </tt></b></font>href=<a
class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id?bibdisplay=refsum&Ident=${MAIN_ID}#lab_bib"
moz-do-not-send="true">"http://simbad.u-strasbg.fr/simbad/sim-id?bibdisplay=refsum&Ident=${MAIN_ID}#lab_bib"</a>/></tt><tt><br>
</tt></font></b><tt> </FIELD></tt><tt><br>
</tt><tt>...</tt><tt><br>
</tt><tt><DATA><TABLEDATA></tt><tt><br>
</tt><tt> <TR></tt><tt><br>
</tt><tt> <TD>[VV98] J084822.3+274553</TD></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt> <<TD>19</TD></tt><tt><br>
</tt><tt> </TR></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt></TABLEDATA></DATA></RESOURCE></VOTABLE></tt><tt><br>
</tt></p>
<p><br>
<b><span class="tlid-translation translation" lang="en"><span
title="" class="">2) The same thing expressed in Datalink
1.1</span></span></b><span class="tlid-translation
translation" lang="en"><span title="" class=""> (templating
alternative discussed in Datalink author groups (see <a
moz-do-not-send="true"
href="https://github.com/ivoa-std/datalink/">Datalink github</a>)
is presented below)</span></span><b><span
class="tlid-translation translation" lang="en"></span></b><span
class="tlid-translation translation" lang="en"><span title=""
class=""></span></span><b><span class="tlid-translation
translation" lang="en"><br>
</span></b></p>
<p><b><span class="tlid-translation translation" lang="en"></span></b><i><span
class="tlid-translation translation" lang="en"><span title=""
class="">We can describe via additional RESOURCES one or
more links: 1-we know how to build it but with limitations
(everything before the ? is constant and only key=value
parameters are possible), 2- <font color="#ff0000">we</font></span><font
color="#ff0000"> </font><span title="" class=""><font
color="#ff0000">do not know where the link should be
placed (on which column)</font>, 3- we can describe the
associated text, 4- we can describe the type of data
returned.</span> <span title="">The knowledge of the links
is given <font color="#ff0000">at the end of the stream </font>which
can/will force the client to buffer.</span> <span title="">Finally
the client must check that these services descriptors do not
use a VO standardID or multiple choice parameters (OPTION).</span></span></i><i>
</i></p>
<i> </i>
<p><tt><VOTABLE><b><font color="#009900"><RESOURCE></font></b><RESOURCE
</tt><tt><font color="#009900"><b>type="result"</b></font></tt><tt>><TABLE></tt><tt><br>
</tt><tt> <FIELD ID="MAIN_ID" name="MAIN_ID"
ucd="meta.id;meta.main" datatype="char" arraysize="*"
width="22"></tt><tt><br>
</tt><tt> <DESCRIPTION>Main identifier for an
object</DESCRIPTION></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt> <FIELD ID="BIBLIST" name="BIBLIST" ucd="meta.bib"
datatype="short" width="4"></tt><tt><br>
</tt><tt> <DESCRIPTION>List of
Bibcodes</DESCRIPTION></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt><tt>...</tt><tt><br>
</tt><tt><DATA><TABLEDATA></tt><tt><br>
</tt><tt> <TR></tt><tt><br>
</tt><tt> <TD>[VV98] J084822.3+274553</TD></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt> <<TD>19</TD></tt><tt><br>
</tt><tt> </TR></tt><tt><br>
</tt><tt> ...</tt><tt><br>
</tt><tt></TABLEDATA></DATA></RESOURCE></tt><tt><br>
</tt><tt><br>
</tt><font color="#009900"><tt><RESOURCE type="meta"
utype="adhoc:service" name="SimbadMainPage"></tt><tt><br>
</tt><tt> <DESCRIPTION>Link to Simbad main
page</DESCRIPTION></tt><tt><br>
</tt><tt> <PARAM name="accessURL" datatype="char"
arraysize="*" value=<a class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id"
moz-do-not-send="true">"http://simbad.u-strasbg.fr/simbad/sim-id"</a>/></tt><tt><br>
</tt><tt> <PARAM name="contentType" datatype="char"
arraysize="*" value="text/html"/></tt><tt><br>
</tt><tt> <GROUP name="inputParams"></tt><tt><br>
</tt><tt> <PARAM name="Ident" datatype="char"
arraysize="*" ref="MAIN_ID"/></tt><tt><br>
</tt><tt><tt> <PARAM name="NbIdent" datatype="char"
arraysize="*" value="1"/></tt><tt><br>
</tt> </GROUP></tt><tt><br>
</tt><tt></RESOURCE></tt></font></p>
<p><font color="#009900"><tt><RESOURCE type="meta"
utype="adhoc:service" name="SimbadBiblio"></tt><tt><br>
</tt><tt> <DESCRIPTION>Link to Simbad
biblio</DESCRIPTION></tt><tt><br>
</tt><tt> <PARAM name="accessURL" datatype="char"
arraysize="*" value=<a class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id"
moz-do-not-send="true">"http://simbad.u-strasbg.fr/simbad/sim-id"</a>/></tt><tt><br>
</tt><tt> <PARAM name="contentType" datatype="char"
arraysize="*" value="text/html"/></tt><tt><br>
</tt><tt> <GROUP name="inputParams"></tt><tt><tt><br>
<PARAM name="</tt></tt><tt><tt><b><tt>bibdisplay</tt></b>"
datatype="char" arraysize="*" value="</tt></tt><tt><tt><tt><tt><b><tt>refsum</tt></b></tt></tt>"/></tt><tt><br>
</tt></tt><tt> <PARAM name="Ident" datatype="char"
arraysize="*" ref="MAIN_ID"/></tt><tt><br>
</tt><tt><tt> <font color="#ff0000"><!-- Not possible
to describe the end of the URL : </font></tt></tt><tt><font
color="#ff0000"><tt><b><tt>#lab_bib</tt></b></tt></font><tt><font
color="#ff0000"> --></font><br>
</tt> </GROUP></tt><tt><br>
</tt><tt></RESOURCE></tt></font></p>
<p><tt><font color="#009900"></RESOURCE></font><br>
</tt><tt></VOTABLE></tt></p>
<p><tt><br>
</tt></p>
<p>Or via the alternative templating possibility proposed in 1.1
datalink discussion (only the last link description is provided -
thanks to François Bonnarel for his help)<b><br>
</b></p>
<p><font color="#009900"><tt>...<br>
<RESOURCE type="meta" utype="adhoc:service"
name="SimbadBiblio"></tt><tt><br>
</tt><tt> <DESCRIPTION>Link to Simbad
biblio</DESCRIPTION></tt><tt><br>
</tt><tt> <PARAM name="accessURL" datatype="char"
arraysize="*" value=<a class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id">"http://simbad.u-strasbg.fr/simbad/sim-id"</a>/></tt><tt><br>
</tt><tt> <PARAM name="contentType" datatype="char"
arraysize="*" value="text/html"/></tt><tt><br>
</tt><tt> <GROUP name="inputParams"></tt><tt><tt><br>
<PARAM name="</tt></tt><tt><tt><b><tt>bibdisplay</tt></b>"
datatype="char" arraysize="*" value="</tt></tt><tt><tt><tt><tt><b><tt>refsum</tt></b></tt></tt>"/></tt><tt><br>
</tt></tt><tt> </GROUP></tt><tt><br>
<GROUP name="endpoints" ><br>
<PARAM name="identifier" utype="template"
datatype="char" arraysize="*" </tt><tt><tt>ucd="meta.code"
value= "Ident={?MAIN_ID*}#lab_bib /></tt></tt><tt><tt><br>
</GROUP></tt></tt><tt><tt></tt><br>
</tt></font><font color="#009900"><tt></RESOURCE><br>
...<br>
</tt></font></p>
<font color="#009900"> </font>
<p><span class="tlid-translation translation" lang="en"><span
title="" class=""><br>
</span></span></p>
<p><span class="tlid-translation translation" lang="en"><span
title="" class="">At the end, and in the context of basic
direct links, from a LINK solution in one code line without
using any additional dedicated structure, we had to deploy a
solution with additional RESOURCES, nested, structured, 10 to
15 times more verbose, but who can not do the job completely.
There are two main issues in addition of the complexity :</span></span></p>
<ul>
<li><span class="tlid-translation translation" lang="en"><span
title="" class="">There is no possibility in Datalink to say
that this link in associated to this value of this row, on
this other link to this other value. Datalink is only row
oriented.</span></span></li>
<li><span class="tlid-translation translation" lang="en"><span
title="" class="">Datalink can only describe key=value
parameters URL implying constant values for the root URL (no
REST URLs for instance)<br>
</span></span></li>
</ul>
<span class="tlid-translation translation" lang="en"><span title=""
class="">My reaction is it will not be easy to sell this
Datalink alternative, and the risk of writing/parsing errors
will be proportionate to this complexity.</span></span><br>
<span class="tlid-translation translation" lang="en"></span>
<p><span class="tlid-translation translation" lang="en"><span
title="">As far as I understood and after my exercise, <b>I
would tend to think that Datalink can not/should not replace
the use of basic LINK - with or without templating - and
probably each method will keep its niche:</b></span><b> </b><b><span
title="">the basic LINK for direct links associated with the
values of a column, the Datalink for lists of links with
descriptions, SODA and more for each line result.</span></b>
<span title="">I'm afraid that if we do not keep the classic
LINK usage, we'll just see Aladin Desktop's links disappear
(as it was occured for the NED results for example).</span></span></p>
<p><span class="tlid-translation translation" lang="en"><span
title="">Feel free to react to this open discussion, maybe
only is the DAL mailing list for avoiding dupplications.<br>
</span></span></p>
<p>Best regards<br>
Pierre Fernique<br>
</p>
<p>---<br>
</p>
<p>PS. <span class="tlid-translation translation" lang="en"><span
title="">FYI, here is the list of clients and data providers
who currently use - to my knowledge - the LINK (with or
without templating).</span> <span title="">To my knowledge,
none of them has had any inclination in these last 4 years to
move to Datalink1.0 alternative for basic direct links</span>
<span title="" class="">(except Aladin Desktop).</span></span> </p>
<p><b>Clients </b>(clearly CDS oriented)<b>:</b><b><br>
</b></p>
<ol>
<li> Aladin Desktop (Java)</li>
<li> CDS portal (JS)</li>
<li> Simbad Simplay (Flash)<br>
</li>
</ol>
<p><b>Data base services using VOTable LINK facility with templating
(${columnName} variables in the LINK URL template)</b><b><br>
</b></p>
<ol>
<li> CDS Simbad</li>
<li> CDS VizieR</li>
<li> CDS photometric service (VizieR SED)</li>
<li> IMCCE Skybot</li>
<li> LEDA Hypercat</li>
<li> All HiPS providers using progenitor facility (for accessing
to the original images)</li>
</ol>
<p><b>Some examples (in use):</b><br>
<br>
1) Simbad:
<a class="moz-txt-link-freetext"
href="http://alasky.u-strasbg.fr/cgi/simbad-flat/simbad-cs.py?target=08+47+18.60770+%2B26+53+20.1212&SR=54.63&format=votable-tsv&SRUNIT=arcmin&SORTBY=nbref"
moz-do-not-send="true">http://alasky.u-strasbg.fr/cgi/simbad-flat/simbad-cs.py?target=08+47+18.60770+%2B26+53+20.1212&SR=54.63&format=votable-tsv&SRUNIT=arcmin&SORTBY=nbref</a><br>
<br>
<tt><FIELD ID="BIBLIST" name="BIBLIST" ucd="meta.bib"
datatype="short" width="4"><DESCRIPTION>List of
Bibcodes</DESCRIPTION><LINK value="ref (${BIBLIST})"
href=<a class="moz-txt-link-rfc2396E"
href="http://simbad.u-strasbg.fr/simbad/sim-id?bibdisplay=refsum&Ident=${MAIN_ID}#lab_bib"
moz-do-not-send="true">"http://simbad.u-strasbg.fr/simbad/sim-id?bibdisplay=refsum&Ident=${MAIN_ID}#lab_bib"</a>/></FIELD></tt><tt><br>
</tt><br>
2) VizieR SED:
<a class="moz-txt-link-freetext"
href="http://vizier.u-strasbg.fr/viz-bin/sed?-c=04+59+02.70698+%2B21+44+11.2538&-c.rs=5.0"
moz-do-not-send="true">http://vizier.u-strasbg.fr/viz-bin/sed?-c=04+59+02.70698+%2B21+44+11.2538&-c.rs=5.0</a><br>
<br>
<tt> <FIELD name="_tabname" ucd="meta.table" datatype="char"
arraysize="32*"></tt><tt><br>
</tt><tt> <DESCRIPTION>Table name</DESCRIPTION></tt><tt><br>
</tt><tt> <LINK
href=<a class="moz-txt-link-rfc2396E"
href="http://vizier.u-strasbg.fr/viz-bin/VizieR-5?-info=XML&amp;-out.add=.&amp;-source=${_tabname}&amp;${_ID}"
moz-do-not-send="true">"http://vizier.u-strasbg.fr/viz-bin/VizieR-5?-info=XML&amp;-out.add=.&amp;-source=${_tabname}&amp;${_ID}"</a>/></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt><tt>...</tt><tt><br>
</tt><tt> <FIELD ID="sed_filter" name="_sed_filter"
ucd="meta.id;instr.filter" unit="" datatype="char" width="32"
arraysize="32*"></tt><tt><br>
</tt><tt> <DESCRIPTION>Filter designation, in the form
photoSystem:filterName; a designation starting by ':=' is an
assumed monochromatic point; this column is empty when the
frequency is specified for each data point.</DESCRIPTION></tt><tt><br>
</tt><tt> <LINK href=<a class="moz-txt-link-rfc2396E"
href="http://cdsarc.u-strasbg.fr/viz-bin/metafilter?${_sed_filter}"
moz-do-not-send="true">"http://cdsarc.u-strasbg.fr/viz-bin/metafilter?${_sed_filter}"</a>/></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt><tt><br>
</tt><br>
3) VizieR:
vizier.u-strasbg.fr/viz-bin/votable?-source=I%2F284%2Fout&-c=05+34+31.93920+%2B22+00+52.2000&-out.add=_RAJ,_DEJ&-oc.form=dm&-out.meta=DhuL&-out.max=999999&-c.rm=23.82&-out=_VizieR,*Mime(image/fits),*&-mime=TSV<br>
<br>
<tt> <FIELD name="_V" ucd="meta.ref" datatype="char"
arraysize="6"></tt><tt><br>
</tt><tt> <DESCRIPTION>Link to the VizieR record with
all details</DESCRIPTION></tt><tt><br>
</tt><tt> <LINK
href=<a class="moz-txt-link-rfc2396E"
href="http://vizier.u-strasbg.fr/viz-bin/VizieR-5?-info=XML&amp;-out.add=.&amp;-source=I/284/out&amp;-c=${RAJ2000}${DEJ2000}&amp;-c.eq=J2000.000&amp;-c.rs=0.5"
moz-do-not-send="true">"http://vizier.u-strasbg.fr/viz-bin/VizieR-5?-info=XML&amp;-out.add=.&amp;-source=I/284/out&amp;-c=${RAJ2000}${DEJ2000}&amp;-c.eq=J2000.000&amp;-c.rs=0.5"</a>/></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt> <br>
4) HiPS - HST B example: <a class="moz-txt-link-freetext"
href="http://alasky.u-strasbg.fr/HST-hips/filter_B_hips/HpxFinder/metadata.xml"
moz-do-not-send="true">http://alasky.u-strasbg.fr/HST-hips/filter_B_hips/HpxFinder/metadata.xml</a><br>
<br>
<tt><FIELD name="DATASET" datatype="char"
arraysize="*"><LINK
href=<a class="moz-txt-link-rfc2396E"
href="http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/AdvancedSearch/?Observation.observationID=${DATASET}"
moz-do-not-send="true">"http://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/AdvancedSearch/?Observation.observationID=${DATASET}"</a>
title="Full metainfo"/></FIELD></tt><tt><br>
</tt><tt><br>
</tt>5) IMCCE:
<a class="moz-txt-link-freetext"
href="http://vo.imcce.fr/webservices/skybot/skybotconesearch_query.php?-ep=2019-11-11&-ra=131.82753208333332&-dec=26.888922555555556&-size=109.26,109.26&-mime=votable&-out=basic&-loc=500&-search=Asteroids+and+Planets&-filter=120+arcsec&-from=Aladin"
moz-do-not-send="true">http://vo.imcce.fr/webservices/skybot/skybotconesearch_query.php?-ep=2019-11-11&-ra=131.82753208333332&-dec=26.888922555555556&-size=109.26,109.26&-mime=votable&-out=basic&-loc=500&-search=Asteroids+and+Planets&-filter=120+arcsec&-from=Aladin</a><br>
<br>
<tt><vot:FIELD ID="name" name="Name" ucd="meta.id;meta.main"
datatype="char" arraysize="32"><vot:DESCRIPTION>Solar
system object name</vot:DESCRIPTION><vot:LINK
href="${ExternalLink}"/></vot:FIELD></tt><tt><br>
</tt><br>
6) LEDA:
<a class="moz-txt-link-freetext"
href="http://leda.univ-lyon1.fr/leda/leda-aladin.cgi?type=astrores&ra=210.80242917&de=54.34875&width=1.4&height=1.4"
moz-do-not-send="true">http://leda.univ-lyon1.fr/leda/leda-aladin.cgi?type=astrores&ra=210.80242917&de=54.34875&width=1.4&height=1.4</a><br>
<br>
<tt> <FIELD name="Designation" ucd="IDENT" datatype="A"
width="21"></tt><tt><br>
</tt><tt> <DESCRIPTION>LEDA
designation</DESCRIPTION></tt><tt><br>
</tt><tt> <LINK
href=<a class="moz-txt-link-rfc2396E"
href="http://leda.univ-lyon1.fr/leda/querybyname.cgi?objname=${Designation}&amp;donnee=mean&amp;Submit=Submit"
moz-do-not-send="true">"http://leda.univ-lyon1.fr/leda/querybyname.cgi?objname=${Designation}&amp;donnee=mean&amp;Submit=Submit"</a>>${Designation}</LINK></tt><tt><br>
</tt><tt> </FIELD></tt><tt><br>
</tt></p>
<p><br>
</p>
<p><b>Résultats à obtenir dans Aladin Desktop pour les deux liens
directs Simbad</b><b><br>
</b></p>
<p><img src="cid:part19.01E164D7.70127795@astro.unistra.fr" alt=""
class=""></p>
<br>
</body>
</html>