Protégé-OWL and the Semantic Web 8 th Int. Protégé Conference, Madrid, July 2005 Holger Knublauch
agent The Semantic Web Vision Standards Technology
Example Scenario
Traditional Web Architecture Submission Forms Query Interfaces Travel Planning Cruise Operator Portal Database Boat Rental Accommodation Portal End User Database Manual actions Automated actions Hotel
Semantic Web Architecture Service Metadata OWL Query Interface Cruise Operator Web Service Travel Services Crawler OWL Database Agent and Agent Boat Rental OWL End User User Profile OWL Manual actions Automated actions Hotel
Semantic Web Evolution Service Metadata Travelogue Personal Profile OWL ... OWL Friend-of-a-Friend XHTML RDF Cruise Operator OWL Pet Ontology OWL RDF OWL Image Annotation Animal Ontology Boat Rental OWL OWL ... Geography RDF Cooking Recipes OWL Restaurant OWL RDF ... Food Ontology Recommendations Hotel
Software Architecture (1) Semantic Web Layer HeliBungee.owl ... ActivityX.owl Core Ontologies Web Service End-User Travel.owl Customer.owl Interface Interface (WSDL) (JSP) Ontology representation Internal Layer as Java objects Web Service, Control Logic (Java Code) Reasoners (OWL DL, SWRL, ...)
Protege-OWL
Protege-OWL Classification
Protege-OWL Individuals
Working with Multiple Files
Protege-OWL for RDF(S)
Protege-OWL for SWRL
http://www.co-ode.org Protege-OWL Plugins
Protege-OWL Architecture OWL GUI Plugins (SWRL Editors, ezOWL, OWL Extension APIs OWLViz, Wizards, etc.) (SWRL, OWL-S, etc.) OWL Plugin Protégé OWL GUI (Expression Editor, Protégé OWL API Conditions Widget, etc.) (Logical class definitions, restrictions, etc.) Jena API (Parsing, Reasoning) Protégé Core System Protégé GUI Protégé API (Tabs, Widgets, Menus) (Classes, properties, individuals, etc.) OWL File DB Storage Storage
Protege-OWL API (Model) RDFObject Frame (Protege) RDFSLiteral RDFResource RDFSClass RDFIndividual RDFProperty RDFSNamedClass OWLProperty OWLAnonymousClass ... OWLNamedClass OWLObjectProperty OWLDatatypeProperty
Protege-OWL API Example JenaOWLModel owlModel = ProtegeOWL.createJenaOWLModel(); RDFSNamedClass personClass = owlModel. createRDFSNamedClass ("Person"); RDFProperty ageProperty = owlModel. createRDFProperty ("age"); ageProperty. setRange (owlModel.getXSDint()); ageProperty. setDomain (personClass); RDFIndividual individual = personClass.createRDFIndividual("Holger"); individual. setPropertyValue (ageProperty, new Integer(34));
Java Code Generation RDFIndividual individual = personClass. createRDFIndividual ("Holger"); individual. setPropertyValue (ageProperty, new Integer(34)); Person individual = factory. createPerson ("Holger"); individual. setAge (34);
Software Architecture (2) Semantic Web Layer HeliBungee.owl ... ActivityX.owl Core Ontologies Web Service End-User Travel.owl Customer.owl Interface Interface (WSDL) (JSP) Activity.java Customer.java Internal Layer ... ... Web Service, Control Logic Dynamic Object Model (Java Code) Reasoners (OWL DL, SWRL, ...)
ProjectPlugins Tab Widgets PropertyWidgets OntologyTests ResourceActions ResourceActions ResultPanels
Configuring Protege
Protege-Driven Development Control Model Incremental Code Generation View Domain Modeling Programming
Further Reading (1) http://www.co-ode.org
Further Reading (2)
Recommend
More recommend