150 likes | 275 Views
GATE Ontology Tools. GATE Training Course October 2006 Kalina Bontcheva kalina@dcs.shef.ac.uk. Ontology Plugins (gate 3.1). OWLIM support (v. 4.0). Loading and viewing ontologies is the same from the GATE GUI Storage and reasoning performed by OWLIM Access is via a web service.
E N D
GATE Ontology Tools GATE Training Course October 2006 Kalina Bontcheva kalina@dcs.shef.ac.uk 1/(27)
Ontology Plugins (gate 3.1) 2/(27)
OWLIM support (v. 4.0) • Loading and viewing ontologies is the same from the GATE GUI • Storage and reasoning performed by OWLIM • Access is via a web service 3/(27)
Create New Ontology LR • Example uses Jena as a backend • Loads an ontology over the Web, in this case Proton (http://proton.semanticweb.org/) • Supports OWL (Lite, DL, Full) & RDF – as this is what Jena supports 4/(27)
Loading extra data http://www.dcs.shef.ac.uk/~kalina/test/test-input.rdf 5/(27)
View classes 6/(27)
View instances 7/(27)
Forthcoming ontology editor features • Deleting classes, properties and instances • Adding classes, properties and instances • Modifying above • We need these features so that we can correct the results of ontology learning and ontology population algorithms from within GATE 8/(27)
Ontology API FeatureMap features = Factory.newFeatureMap(); features.put("ontologyURL", ontologyURL); JenaOntologyImpl ontology = (JenaOntologyImpl) Factory.createResource("gate.creole.ontology.jena.JenaOntologyImpl",features); Interface gate.creole.ontology.Ontology • add/get/delete concepts/instances/properties 9/(27)
Ontology API (2) // adding a new class Person – class name and comment OClass person = ontology.createClass("Person","All humans"); // adding a new class Man OClass man = ontology.createClass("Man", "Male Person"); // adding a new class Liquid OClass liquid = ontology.createClass("Liquid","anything that is in liquid form"); // John is a person OInstance john = ontology.addInstance("John", person); // water is liquid OInstance water = ontology.addInstance("Water", liquid); // Man is a subclassof Person person.addSubClass(man); // Man drinks liquid ontology.addObjectProperty("drinks","man drinks liquid", man, liquid); // john drinks liquid john.addPropertyValue("drinks", water); 10/(27)
Onto gazetteer 11/(27)
Onto Gazetteer (2) 12/(27)
JAPE and Ontologies 13/(27)
Results Results of sample rule without ontology as a parameter Results of sample rule with ontology as a parameter 14/(27)
Sample use • Knowledge Management and business intelligent • gate.ac.uk/projects/sekt/ • Media analysis • gate.ac.uk/projects/media-campaign/ • Multi-media semantic annotation • gate.ac.uk/projects/prestospace/ • Software Engineering • gate.ac.uk/projects/tao/ • Also used in an increasing number of commercial products, esp. for business intelligence 15/(27)