Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IMPROVEMENT: Custom UWS Service #216

Open
agy-why opened this issue Sep 4, 2023 · 0 comments
Open

IMPROVEMENT: Custom UWS Service #216

agy-why opened this issue Sep 4, 2023 · 0 comments

Comments

@agy-why
Copy link
Member

agy-why commented Sep 4, 2023

What is an UWS Service?

The IVOA SOAP services like TAP, ConeSearch, Datalink... are all based on a general construct called UWS service: Universal Worker Service.
They provide a discovery interface (capabilities) and a availability interface (service online), as well as a SOAP interface.
They can be called via a URI plus Parameters and some kind of objects.

Compatibility with IVOA and TopCat

The Advantage of implementing an UWS Service is its compatibility to the IVOA Standard and IVOA clients like TopCat.
Therefore PyVO and TopCat both naturally support this kind of interface, allowing the Daiquiri Instance Designer to declare Custom Services compatible with the UWS standard.

Implementation in daiquiri

In Daiquiri UWS Service additionally have a REST API, making them even more vesatile allowing users to also interact with such services via REST API instead of the IVOA SOAP interface.

Example of implementation: spectra_download app

An example of implementation of such services is the spectra_download app from the gaia.aip.de instance. please refer to it for more details.

The idea would be to partially transfer some part of this app into daiquiri to simplify the implementation of Custom UWS Service for the instance designer (framework users).

according to #213 such service would look like:

graph LR
USER-->IVOA-SOAP["IVOA Soap
capability, availability, service"]
USER-->REST
IVOA-SOAP-->REST
REST-->MetaDB["MetaDB 
(JobQuery)"]
Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant