The SBOL Visual Ontology (SBOL-VO) provides a set of controlled terms to describe visual glyphs for genetic circuit designs. The terms are organised based on their descriptions in community-edited Markdown files. Terms are defined for recommended and alternative glyphs in addition to terms to represent generic glyphs. SBOL-VO consists of the following items.
- A base term. The base term in the ontology is called "Glyph".
- Terms for glyphs. Examples include "AptamerGlyph", "AssemblyScarGlyph" and "AssemblyScarGlyphAlternative".
- Properties. SBOL-VO includes object properties such as "hasGlyph" and "isAlternativeOf" to define the relationships between different terms.
- Annotations. Terms are annotated using properties such as "defaultGlyph" and "recommended".
Browse the SBOL-VO terms via an HTML page.
The ontology can also be viewed after downloading and opening in an ontology editor, such as Protege.
SBOL-VO is available as an RDF file. Click here to download the ontology.
The Python code to generate the ontology is maintained by Goksel Misirli and is available at the sbol-visual-ontology GitHub repository.
If you are interested in contributing, please see below and get in touch with the developers of this repository.
- Make sure you have git and python3 installed. Then install owlready2 and rdflib python libraries.
pip3 install owlready2
pip3 install rdflib
-
Also make sure you jave Maven and Java installed to update the autogenerated HTML version.
-
Download the SBOL-Visual project
git clone https://github.com/SynBioDex/SBOL-visual.git
and place it at the same level with the SBOL-Visual-Ontology folder. The parent working folder should look like below:
- Parent working folder
- SBOL-visual
- sbol-visual-ontology
- The edit the python scripts under markdown-to-owl scripts. The main file to execute is Application.py and the changes to the ontology can be done via Ontology.py.
SBOL-VO has an HTML version that is automatically created from the ontology using LODE.
- Download a forked copy of LODE and run it:
git clone https://github.com/dissys/LODE.git
cd LODE
mvn clean jetty:run
- Open a web browser and save the output from the following URL as sbol-vo.html, into the sbol-visual-ontology folder, replacing the existing file.
http://localhost:8080/lode/extract?url=https://dissys.github.io/sbol-visual-ontology/sbol-vo.rdf
- Finally, run the following line to update the autogenerated HTML.
cd sbol-vo-update-doc
mvn exec:java -Dexec.mainClass="uk.ac.keele.dissys.sbolvo.html.App"
Note: Update instructions are adapted from https://github.com/SynBioDex/SBOL-visual.
Updates should be made in a branch or a separate fork on GitHub. To do this, follow standard git branching or forking procedure.
Here is an example of git commands to achieve this:
git clone https://github.com/dissys/sbol-visual-ontology.git
git pull origin master # MAKE SURE NO ONE HAS MADE ANYMORE CHANGES
git checkout -b <newBranch> # CREATE NEW BRANCH
Make your edits and use the following commands to add them to your own GitHub branch.
git add <filesYouChanged>
git commit
git push origin <newBranch>
These changes will then be uploaded to SBOL-visual ontology v2 directory after the changes are reviewed and incorporated. Alternatively, please follow the insructions at https://github.com/SynBioDex/SBOL-visual to incorporate the changes to the https://github.com/SynBioDex/SBOL-visual/tree/master/Ontology/v2 folder directly.