OntoGraph

Try OntoGraph

You can download OntoGraph’s source from GitHub (and customize it for your environment, following the instructions in the README), or just download the executable jar (and Stardog) and run it yourself. All of the “how-to” details are also on GitHub. Alternately, you can access OntoGraph directly from your browser (either Firefox or Chrome) using our server. The choice is yours!

Overview

OntoGraph is a Spring Boot application for graphing OWL ontologies. OntoGraph is a Spring Boot application for graphing OWL ontologies. It lets you go from (see the complete FOAF ontology at http://xmlns.com/foaf/spec/index.rdf )…

...
<!-- FOAF classes (types) are listed first. -->
<rdfs:Class rdf:about="http://xmlns.com/foaf/0.1/Person" rdfs:label="Person" rdfs:comment="A person." vs:term_status="stable">
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class" />
  <owl:equivalentClass rdf:resource="http://schema.org/Person" />
  <owl:equivalentClass rdf:resource="http://www.w3.org/2000/10/swap/pim/contact#Person" />
  <!--    <rdfs:subClassOf><owl:Class rdf:about="http://xmlns.com/wordnet/1.6/Person"/></rdfs:subClassOf> -->
  <rdfs:subClassOf><owl:Class rdf:about="http://xmlns.com/foaf/0.1/Agent"/></rdfs:subClassOf>
  <!--    <rdfs:subClassOf><owl:Class rdf:about="http://xmlns.com/wordnet/1.6/Agent"/></rdfs:subClassOf> -->
  <rdfs:subClassOf><owl:Class rdf:about="http://www.w3.org/2003/01/geo/wgs84_pos#SpatialThing" rdfs:label="Spatial Thing"/></rdfs:subClassOf> 
  <rdfs:isDefinedBy rdf:resource="http://xmlns.com/foaf/0.1/"/>
  <owl:disjointWith rdf:resource="http://xmlns.com/foaf/0.1/Organization"/>
  <owl:disjointWith rdf:resource="http://xmlns.com/foaf/0.1/Project"/>
</rdfs:Class>
...

To …

The code consists of a Java-based REST API that creates various GraphML outputs of a user-provided OWL ontology file (or zip file of a set of ontology files) that can be input programmatically or using a simple GUI. The program stores the ontologies in a triple store (Stardog), then runs a series of queries to return the necessary information (classes, properties, individuals…) to be diagrammed. For more information on OntoGraph and why it was created, click ‘Download’ for the paper, Ontology Development by Domain Experts (Without Using the “O” Word). The paper has been accepted for publication in the next issue of the Journal of Applied Ontology from IOS Press.

Four visualizations of ontology data can be generated:

  • Custom format (defined to fit existing business or personal preferences)
  • Graffoo
  • UML
  • VOWL

And, information can be segmented to display:

  • Class-related information (subclassing, equivalent and disjoint classes, class restrictions, …)
  • Individual instances, their types, and their datatype and object property information
  • Property information (datatype and object properties, functional/symmetric/… properties, domain and range definitions, …)
  • Both class and property information

After the GraphML outputs are created, a graphical editor (we recommend yEd) is used to perform layout functions.