Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 2.35 KB

README.md

File metadata and controls

45 lines (33 loc) · 2.35 KB

Purpose

This is an ontology to annotate omnibenchmark runs.

We provide three components:

  • the ontology formalization (turtle)
  • an example knowledgebase (turtle) with a simplified setup:
    • one data module
    • two filtering modules
    • one method module, run with different parameters
  • another (more realistic) example, the the iris-example knowledgebase somewhat resembling the omnibenchmark named iris-example
  • some SPARQL queries, including:
    • get_deliverables_by_activity.sparql
    • get_deliverables_by_epoch.sparql
    • get_deliverables.sparql
    • get_file_provenances_one_hop.sparql
    • get_file_provenances_recursive.sparql
    • get_modules.sparql

To generate these triples and send them to the endpoint: adopt and reuse epoch.py from omni-cli (it's mainly python native templating).

Design philosophy

  • Keep it deliverable-centric (file-centric), because bioinformatics workflows typically are.
  • Reduce overlaps to renku's ontology but keep in mind future cross-queries; we can add federated queries and/or merge graphs by matching literals (i.e. plan ids or activity ids).
  • Make use of gitLFS / S3 buckets identifiers, to streamline dataset retrieval in a renku-free manner.
  • Make use of module names and file names, to perhaps switch to renku-free command-line workflows at some point.
  • Keep versions/epochs explicit.

Ontology layout

Layout generated by WebVOWL 1.1.7.

Omnibenchmark ontology layout

Requirements

To remember

  • Missing git hook/populate the endpoint on push
  • To be linked to the container/codebase tagging/branching system
  • (Sept 2023) Renku's named key:value parameters are named parameterMaps and only apply to composite plans, not to plans: source
  • renkulab API queries (to potentially replace with our custom queries)