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

Add an implementation of the MOD API #53

Open
syphax-bouazzouni opened this issue Feb 17, 2025 · 0 comments
Open

Add an implementation of the MOD API #53

syphax-bouazzouni opened this issue Feb 17, 2025 · 0 comments
Assignees

Comments

@syphax-bouazzouni
Copy link
Collaborator

Timeline

3 months collaborative work - from February to April

  • Kick off session: 10th February at 2:00 pm CET
  • Mid term session: 5th March at 2:00 pm CET
  • Final session: 28th April at 2:00 pm CET

Goal

Try to implemented MOD API to an existent Terminology service

Glossary

  • Semantic Catalog: Terminology catalog, Ontologies reposity, …
  • Semantic Artefacts: Terminologies , ontologies, thesaurus
  • Resource: RDF resources, classes. entities, concepts, properties, .....
  • Distribution: A semantic artefact version, ontology submission, .....

Roadmap in API Gateway & OntoPortal

Started working on it in December 2024 - Imad (https://github.com/imadbourouche/) is the developer in AgroPortal, and Syphax (https://github.com/syphax-bouazzouni) for API Gateway.

  • Iteration 1 Metadata endpoints (Easy):
    • / describe the service, require to implement the Catalog model
    • /doc/api OpenAPI documentation of the service
    • /artefacts a list of the Artefact model
    • /artefacts/{artefactID}
    • /artefacts/{artefactID}/distributions
    • /artefacts/{artefactID}/distributions/{distributionID}
  • Iteration 2 Data endpoints:
    • /artefacts/{artefactID}/resources/classes list all owl:Class
    • /artefacts/{artefactID}/resources/concepts list all skos:Concept
    • /artefacts/{artefactID}/resources/properties list all rdf:Property
    • /artefacts/{artefactID}/resources/individuals list allowl:Instance
    • /artefacts/{artefactID}/resources/schemeslist all skos:ConceptScheme
    • /artefacts/{artefactID}/resources/collection list all skos:Collection
    • /artefacts/{artefactID}/distributions/latest/resources list everything
  • Iteration 3 Search endpoints:
    • /search search data and metadata
    • /search/content search data only
    • /search/metadata search metadata only
  • Iteration 4 depending of the progress, see which other endpoints to implement

Each endpoint will need to implement this parameters

  • display
  • page and pagesize
  • and only show jsonld, so not support fully the format parameter.

We made a validator to check the validity of our implementations

[MOD API specification (not official)](https://syphax-bouazzouni.github.io/mod-api-validator/)

We did a document comparing the different services, and how we aligned them for the T4NFDI APIGateway

[OLS, OntoPortal, Skosmos - API mapping specifications for API Gateway and Terminology Service Suite](https://doi.org/10.5281/zenodo.13143176)

We need to consolidate the OpenAPI file, to know on what to focus first:

  • Required and not required endpoints
  • Required and not required params for each endpoint
  • Required and not required attributes for each endpoint
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant