A tool to generate a knowledge graph from a source of RO Crates. By default, this tool sources and generates an RDF graph of crates from WorkflowHub.
This tool is run as a Snakemake workflow. We recommend building a Docker container to run the workflow:
docker build -t knowledgegraph .
Then, you can run the workflow using the following command:
docker run --rm -v $(pwd):/app -w /app knowledgegraph --cores 4 -s /app/Snakefile
This command runs a Docker container using the knowledgegraph
image. It mounts the working directory to /app
inside the container, sets /app
as the working directory, and then runs the workflow. Once the workflow completes,
the container is automatically removed.
flowchart TD
A[Source RO Crates] --> B[Check Outputs];
B[Check Outputs] --> C[Report Downloaded RO Crates];
B[Check Outputs]-->D[Merge RO Crates];
D[Merge RO Crates]-->E[Create Merged Workflow Run RO Crate]
source_ro_crates
: This rule sources RO crates from the WorkflowHub API (source_crates.py
) and then checks
the output (check_outputs.py
). This generates a list of expected file paths based on the workflow IDs and versions to
facilitate the workflow.
report_created_files
: Optional. This rule reports the downloaded RO crates to the user.
merge_files
: This rule merges the downloaded RO crates into a single RDF graph (merge_ro_crates.py
).
create_ro_crate
: This rule creates a merged workflow run RO crate from the merged RDF graph (create_ro_crate.py
).
develop
. e.g. feature/description
or bugfix/description
.develop
branch is currently our main integration branch. Features and fixes should target develop
through PRs.develop
.