A tool to Depict Vocabulary Summaries
Project description
Devos
Depicting Vocabulary Summaries(Devos) is a tool that generates a visual summary from a given ontology. Devos is built on top of Mermaid syntax which is a Markdown-inspired tool that renders text in diagrams and it uses SPARQL Query Language over the ontology generating a visual summary. It's based on three approaches.
- OntMet. Uses Ontology Meta Data to find matching classes.
- ClaFreq. Relies on Class Frequency in the ontology as the importance signal.
- LabLen. Utilizes Label Length of the classes as the importance signal. The intuition is that importance classes have richer metadata than less important classes.
Main Features
- Generate summary diagrams.
- Allows the user to use the summarisation technique (e.g., using meta data, class frequency, or label length)
- Enrich ontologies with labels for the classes that are missing them.
Dependencies
Install
pip install devos-py
Usage
There are three main ways to use Devos. Web application, Python Library, and as a standalone application (CLI).
Web Application
The web application is built using Flask. To run it, you can use the following command: python -m web.app
. This will start the server on 127.0.0.1:5000
. You can also pass the port as a parameter.
As a library
You have three main functions: meta_workflow
, freq_workflow
, and leng_workflow
. The all expects the path to the ontology, the output path to the summary diagram, and the maximum number of classes topn
(referred to it in paper as k
).
CLI Tutorial
- Use meta data as the signal for importance
python -m devos.gister -i data/ieswc/cocoon.ttl --freq
python -m devos.gister -i data/ieswc_enriched/ck.ttl -t -d -a
python -m devos.gister -i data/ieswc_enriched/explanation-ontology.owl -t -d -a --topn 7
python -m devos.gister -i data/ieswc_enriched/devops/core.ttl --freq --topn 7
python -m devos.gister -i data/ieswc_enriched/devops/core.ttl --freq --topn 7
Example:
classDiagram
Agent --> Document :interest
Person --> Document :publications
Thing --> Document :page
Agent --> Thing :topic_interest
Thing --> Agent :maker
Group --> Agent :member
Experimentation
Tests
To run unit tests
python -m unittest discover tests
Authors
- Ahmad Alobaid - (Ontology Engineering Group - UPM)
- Jhon Toledo - (Ontology Engineering Group - UPM)
- [María Poveda Villalón] - (Ontology Engineering Group - UPM)
- [Oscar Corcho] - (Ontology Engineering Group - UPM)
Ontology Engineering Group, Universidad Politécnica de Madrid.
License
DeVoS is available under the permissive Apache License 2.0.
PyPi
python -m build
twine check dist/*
twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.