Ontologies
Ontologies are used in computer science to define entities, and to set them in relation. Ontologies are a fundamental part of the semantic web and through the unique identifiers (IRIs) of entities and relations the base of Linked Open Data (LOD).
In the Department of Medical Bioinformatics we work with ontologies on different levels.
Modelling of ontologies
Cytomer is an ontology describing the human anatomy and development and comprises morphological structures from the cell level up to parts of the body. Structures are linked to Carnegie stages and under each other with various relations.
Crosslinking with other resources
In order to interconnect Cytomer with other ontologies or data resources, mapping files have been generated are provided below. Currently the BRENDA Tissue Ontology (BTO), EndoNet and the International Statistical Classification of Diseases and Related Health Problems (ICD) are supported.
Ontology service OBA
The oba project provides a service to facilitate the access to ontologies for applications and workflows. The service maps the content of ontologies to an object oriented model and makes i accessible through the network as RESTful service. In addition the oba service can be used to answer ontological questions, such as to which organ an arbitrary anatomical entity belongs.
Publication:
Dönitz, J. and Wingender, E.:
www.frontiersin.org/articles/10.3389/fgene.2012.00197/full
Front. Gene. 3, 197 (2012).
Documentation
The interface of the oba service is free to be used for the implementation of own clients or embedding into workflows. As an example for the usage, an open source Java connector, which utilizes the Cytomer ontology, is provided for download (see below). Additionally to the example client, which can be used for demostration and testing, a generic client is provided for download, which you can extend for your own purposes.
The interface of the oba service is documented in a manual, which is also available from this page. In the manual you will find a detailed description of the syntax, and the input and return values of the functions.
The client can be downloaded and embedded into Java applications by adding the jar file to the classpath. By default the client will connect to the public oba-server. If the Cytomer connector is run from a command line (java -jar cytomer-*.jar) a simple test client is run, which calls some functions of the public server and prints the results to the console
Parts of the oba-service
oba-client.zip
The zip file contains the basic client and the Cytomer client as single jar file containing all dependencies.
oba-server.zip
If required, the server can be downloaded and run locally. The zip file for the server contains also the Cytomer ontologie, the Tribolium ontology and plugins with semantic functions. The jar file "oba-server-*.jar can be run from the command line or using the start script on Linux and MacOS. After startup the oba-server is available at port 9998.
Ontology viewer OntoScope
Ontologies can provide a large amount of information and can be get very complex by the various relation-ships, adding new dimensions. With OntoScope we developed a new ontology viewer with the focus of browsing ontologies while keeping the focus on the current interest of the user. Some of the features are:
- Treat ontologies as graph without over representing the class hierarchy
- Selective expand a node along the relation-ship the user is interested in
- Use ontology depending semantic functions of the OBA service in order to improve the visualization
- A browse history for easy navigation
- Enable user influenceable layout and export of the graph as image
OntoScope is available as Java version, a JavaScript based version is currently under development.
Projects using ontologies
Ontologies, often with the help of the OBA service are used in various projects:
- In MyPathSem ontologies are used to map different ontologies
- On iBeetle-Base the TrOn ontology is used for a semantic search. In the master thesis from Karly Conrads functions for a clustering of phenotypic data based on semantic similarity are added to OBA
- In TFClass the OBA service is used as backend for the web application