Table Access Protocol (TAP)ΒΆ
Warning
This feature is under active development, and the available functionality and command line options may change in future releases.
Felis can be used to generate records for TAP_SCHEMA which describes metadata for a TAP service. The TAP_SCHEMA database can either be updated directly or SQL statements can be generated and then executed manually.
The SQL can be generated, and optionally executed, by using the load-tap
command.
To generate SQL statements and save them to a file, a command like the following can be used:
felis load-tap --dry-run --engine-url=mysql:// $file > tap_schema.sql
This SQL file can then be used for initialization of the TAP_SCHEMA database, e.g. within a Docker container. (This procedure is not covered here.)
Felis can also update an existing TAP_SCHEMA database directly if a valid URL is provided:
felis load-tap --engine--url=mysql+mysqlconnector://user:password@host:port/TAP_SCHEMA
Felis can create an empty TAP_SCHEMA database using the init-tap
command.
felis init-tap --engine-url=mysql+mysqlconnector://user:password@host:port
By default, this will create a database called TAP_SCHEMA
.
If you want to use a different name, you can specify it with the --tap-schema-name
option:
felis init-tap --engine-url=mysql+mysqlconnector://user:password@host:port --tap-schema-name=MY_TAP_SCHEMA
Felis does not provide the full functionality and configuration for standing up a TAP service.
For that, you will need to use a TAP service implementation like
CADC TAP.
Standards-conformant TAP services will generally make the TAP_SCHEMA data available at a /tables
endpoint.