SBOL Visual Ontology

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.

  • Terms for glyphs to represent
  • A base term. The base term in the ontology is called “Glyph”.
  • 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”.
  • Ontological axioms. Logical axioms restricting the use of SBOL-VO terms to specific biological roles and processes.

Browse

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.

Download

SBOL-VO is available as an RDF file. Click here to download the ontology.

Computational access: The SBOL-VO web service (SBOL-VOWS)

An HTTP-based glyph service: The SBOL-VO web service(SBOL-VO-WS) has been developed to resolve SBOL-VO glyphs via an REST-based HTTP interface. The matching glyph is returned by using a term from the SBOL-Visual Ontology, the Sequence Ontology (SO) or the Systems Biology Ontology (SBO). The http://{SBOL-VO-WS}/glyph/{ONTOLOGY_TERM}"} REST interface returns glyphs. When a term from the SO or the SBO is used and there is no exact match, then a glyph is returned using the closest mathing parent term. The following example demonsrates retrieving the aptamer glyph by using the corresponding SBOL-VO or terms from the SO:

The web service returns the default PNG images. The PNG and SVG versions can be retrieved explicitly by appending “/svg” or “/png” to the query interface :

Mapping glyphs to terms from ontologies: Tools can also use the SBOL-VO-WS to get the mapping information and then to subsequently include glyphs, using the http://{SBOL-VO-WS}/mapping/{ONTOLOGY_TERM}"} interface. The mapping interface works similar to the glyph interface but it returns information in the JSON format. This interface includes information about the closest parent term, for which a glyph is assigned, and the parent term’s distance to the query term. URL examples below return information about AptamerGlyph.

Searching for glyphs: The SBOL-VO-WS can be used to search for glyphs using the http://{SBOL-VO-WS}/query/{ONTOLOGY_TERM}"} REST interface. This query interface is the reverse of the mapping interface and returns information about glyphs using a query term and for all its child terms. Glyphs are searched for by using a term from the SBOL-Visual Ontology, the Sequence Ontology or the Systems Biology Ontology. Examples:

Retrieving metadata about glyphs: The SBOL-VO-WS can also be used to retrieve metadata about SBOL Visual glyphs, using the for glyphs using the http://{SBOL-VO-WS}/metadata/{SBOL-VO-TERM}"} REST interface. Examples:

Programmatic access to SBOL-VOWS

Python and Java examples and related documentation can be found in the following GitHub repository:

https://github.com/dissys/sbol-visual-client

The web service returns data using the RDF/JSON format. Hence, any RDF or JSON library can be used to access information regarding the mapping, query, and metadata interfaces. Please note that examples are provided using the RDFLib and Jena libraries for Python and Java programming languages respectively.