TAP questions

'Markus Demleitner' msdemlei at ari.uni-heidelberg.de
Thu Mar 1 13:03:11 CET 2018


Hi Laszlo,

On Thu, Mar 01, 2018 at 12:14:18PM +0100, Dobos, László wrote:
> The remaining issue is identifier quoting and table naming (whether
> schemaname.tablename is required or simply tablename is enough).
> This is why: SkyQuery will soon make it possible to write a
> cross-match query that references TAP sources, as well databases
> available locally at our db cluster. This requires parsing the
> queries and resolve the identifiers against the TAP sources. Now,
> my parser supports identifier quoting for both columns and table
> names, so I only have unquoted identifiers after the parsing
> procedure and I have to compose the ADQL queries bases on these
> that I can send to any TAP endpoint that talks the standard. If
> can't be sure whether an endpoint understands/requires/tolerates
> quoting or whether it combines schema names with tables names I
> can't really make it work with just any endpoint. Do you have any
> suggestions regarding this issue?

I don't think I understand the problem well enough to advise -- but
again: you cannot interoperably turn a regular to a delimited
identifiers or meaningfully parse table references without knowing
the DDL, so whatever scheme you end up with should just re-uses what
it finds in tap_schema.tables.table_name in the eventual queries --
anything else will break sooner or later.

What that looks like to a user sending queries to your machine is a
different question, and I agree it *might* not be the best idea to
expose all the uglyness of delimited SQL identifiers, including their
whacky relationship to regular identifiers, to your users.  In the
end it's probably also up to what tools your users have to discover
what tables are out there.

So -- how do you plan to let users write the remote table selection
at this point?

          -- Markus


More information about the dal mailing list