4 ms·
We do this heavily in astronomy: http://ivoa.net/documents/TAP http://ivoa.net/documents/TAP Although it's a bit crusty, it is heavily used. We store addition
by batbomb 8y ago
We do this heavily in astronomy:
http://ivoa.net/documents/TAP http://ivoa.net/documents/TAP
Although it's a bit crusty, it is heavily used. We store additional metadata about columns and we annotate the results we return.
You can build something easily like this in Java with the Presto parser, including adding authorization to systems that can't/don't support it.
If Go is more of your thing, there's a parser in Vitess:
https://github.com/vitessio/vitess/blob/master/go/vt/sqlparser/sql.y https://github.com/vitessio/vitess/blob/master/go/vt/sqlpars...
I had done some work on porting the presto parser to python (github.com/slaclab/lacquer) to also build an API, but I had some problems in my parser grammar I never figured out. I was going to revisit this again now that Antlr4 can deal with Python properly and I can reuse the presto grammar, but I haven't had the chance.
You can couple all of this with csvw as well, and get some additional nice features out + JSON-LD.