<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<font face="ArialMT" class=""><span style="font-style: normal; font-size: 14px;" class=""><span md-inline="plain" class="md-expand md-plain" style="box-sizing: border-box; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); orphans: 4; white-space: pre-wrap;">NExScI
has released Version 1.0 of the source code for nexsciTAP, a Python-based server that complies with the International Virtual Observatory Alliance (IVOA) Table Access Protocol (TAP). The protocol defines a web service for searching tables in relational databases
using the Astronomical Data Query Language (ADQL), a dialect of SQL optimized for astronomical spatial queries. nexsciTAP translates ADQL into the SQL for the local DBMS (including the spatial search constructs) then uses off-the-shelf Python DB-API 2.0 implementations
to retrieve the data. The distribution includes spatial indexing code that does not require any special augmentation to the local DBMS code, thereby allowing it to work with any DBMS engine. Version1.0 includes connections to Oracle and SQLite3. The code base
is compact. It consists of 10 KLOC of Python, and 15 KLOC of spatial indexing code written in C and deployed as a Python binary extension package. Both HTM and HEALPix spatial index tesselations are supported. nexsciTAP underpins queries to the NASA Exoplanet
Archive, the Keck Observatory Archive (KOA) and the NEID archive. Both synchronous and asynchronous queries for public data have been tested with three commonly used TAP clients: PyVO, TAPPlus (TAP+) and TOPCAT as well as with shell scripts using wget. The
code is available at </span><span md-inline="url" class="md-link md-pair-s" spellcheck="false" style="box-sizing: border-box; word-break: break-all; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); orphans: 4; white-space: pre-wrap;"><a href="https://github.com/Caltech-IPAC/nexsciTAP" style="box-sizing: border-box; cursor: pointer; color: rgb(65, 131, 196); outline: 0px; -webkit-user-drag: none;" class="">https://github.com/Caltech-IPAC/nexsciTAP</a></span><span md-inline="plain" class="md-plain" style="box-sizing: border-box; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); orphans: 4; white-space: pre-wrap;">
(BSD 3-clause license) and the documentation at </span><span md-inline="url" class="md-link md-pair-s" spellcheck="false" style="box-sizing: border-box; word-break: break-all; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); orphans: 4; white-space: pre-wrap;"><a href="https://caltech-ipac.github.io/nexsciTAP/" style="box-sizing: border-box; cursor: pointer; color: rgb(65, 131, 196); -webkit-user-drag: none;" class="">https://caltech-ipac.github.io/nexsciTAP/</a></span><span md-inline="plain" class="md-expand md-plain" style="box-sizing: border-box; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); orphans: 4; white-space: pre-wrap;">.</span></span></font>
<div class="">
<div style="orphans: 4;" class=""><font color="#333333" face="ArialMT" class=""><span style="caret-color: rgb(51, 51, 51); white-space: pre-wrap; font-style: normal; font-size: 14px;" class=""><br class="">
</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-style: normal; font-size: 14px;" class=""><font color="#333333" class=""><span style="white-space: pre-wrap;" class="">Future releases will include support for
</span></font>PostgreSQL and continuous integration.</span></font></div>
<div style="orphans: 4;" class=""><br class="">
</div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class="">We invite suggestions for upgrades and for contributions.</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class=""><br class="">
</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class="">Cheers</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class=""><br class="">
</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class="">Bruce</span></font></div>
<div style="orphans: 4;" class=""><font face="ArialMT" class=""><span style="font-size: 14px;" class=""><br class="">
</span></font></div>
<div class=""><br class="">
</div>
<div class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div><span style="font-style: normal;" class=""><b class="">-----------------------------------------------</b></span></div>
<div><span style="font-style: normal;" class=""><b class="">Bruce Berriman</b></span></div>
<div>Scientist</div>
<div>Caltech/IPAC</div>
<div class=""><br class="">
</div>
</div>
<br class="Apple-interchange-newline">
<br class="Apple-interchange-newline">
</div>
<br class="">
</div>
</body>
</html>