TAP-1.0 Erratum 3: Database Column Type in VOTable

Author: DAL WG

Date last changed: 2014-12-22

Date accepted: 2017-05-14


The ADQL-2.0 specification does not explicitly talk about types. The TAP-1.0 specification, using the ADQL-2.0 as the mandatory query language, needed to cover this normative lack to map VOTable datatypes with server side database datatypes. This is the meaning of the table in $2.5 (page 19) of TAP-1.0. However, this table, especially the last column (database column type), due to the missing ADQL normative on types, cannot be taken as conformance criteria and needs a better description of its meaning.

Erratum Content

The datatype mapping between VOTable serialization and database objects is delegated to the table at page 19 (2.5) of the TAP-1.0 specification. Due to the normative lack of ADQL-2.0 with respect to datatypes this mapping cannot be considered a normative part of the TAP recommendation.

This Erratum sanitizes this situation adding the following text before 2.5.1 of TAP-1.0 document:

Note that the last column of datatype mapping table in this section is not normative. Implementations SHOULD try to make sure that the actual types chosen are at least signature-compatible with the recommended types (i.e., integers should remain integers, floating-point values floating-point values, etc.), such that clients can reliably write queries against uploaded tables.

For columns with xtype adql:REGION, this is particularly critical, since databases typically use different types to represent various STC-S objects. Clients are advised to assume that such columns will be approximated with polygons in the actual database table.

Impact Assessment

Erratum changes to TAP-1.0 shouldn't impact server side or client side TAP implementations given that actual mapping usage already should have taken into account the missing normative about types.

Moreover, considering the fact that it is clear that for a predictable behaviour across individual ADQL implementations, ADQL should talk about types, a Type System will be provided within the next revision of the current ADQL specification.


This Erratum was previously part of the TAP1Err1 Note still available on volute. The content reflects 4 of that Note at svn revision 2800.

Topic revision: r3 - 2017-06-06 - MarcoMolinaro
This site is powered by the TWiki collaboration platformCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback