250 likes | 421 Views
WP2: Tools. Raphael Volz Universität Fridericiana zu Karlsruhe (TH). WonderWeb Tools. Tools now use OWL, the W3C standard for Web ontologies. WonderWeb Tools. KAON SERVER: Infrastructural Kernel Application Server using Semantic technologies for management of hosted components.
E N D
WP2: Tools Raphael Volz Universität Fridericiana zu Karlsruhe (TH)
WonderWeb Tools Tools now use OWL, the W3C standard for Web ontologies
WonderWeb Tools KAON SERVER: Infrastructural KernelApplication Server using Semantic technologies formanagement of hosted components
KAON SERVER Functionality • Functionality of common Application Server • Flexible handling of Semantic Web modules(dynamic registering and unregistering) • FaCT • Racer • Ontobroker • KAON RDF stores • KAON Ontology stores • Sesame • Extensible for future developments • Generalization of RDF APIs (towards RDF Net API)
Ontology Design: DOLCE Descriptions & Situations Core Ontology of Services Intermediate Generic Domain Several subontologies for the ASSW Domain specific subontologies KAON SERVER Semantic technologies Ontology is used for • component discovery • API discovery • classification of tools • implementation tasks ASSW is semantically enhanced application server!
WonderWeb Tools Lift Extract light-weight ontologies from legacy information sourcesDB Schema, XML Schema, UML Models, Java Documentation
OntoLiFT • Describes heuristics for extracting light-weight ontologies from important legacy resources: • Relational Database Schema • Logical Schema found in running DBs • XML Schema Languages • Generic formal approach building on Regular Tree Grammars • UML Software Specifications • Static Aspects of Software modelled in Class Diagrams • JavaDoc Software Documentation • Text Mining techniques to extract ontologies from textualDocumentation
WonderWeb Tools OilEd Visual Editor for creating OWL ontologies
What is OilEd? • A simple ontology editor. • Low cost, easy editor. • A platform to explore how to usea reasoner. • Originally intended as ademonstrator, now widelyused (>2000 downloads). • Initially targeted at OIL,supports DAML+OIL,and now supports OWL.
Reasoning • KB translated to equivalent DL model, and passed to a reasoner. • Spots inconsistent definitions • e.g. contradictions in cardinality constraints or value restrictions. • mad cows! • Organises the classification hierarchy • Discovering new superclasses. • Particularly useful when using defined classes. • Subtle side-effects • Superclasses inferred due to domain/range restrictions. • One shot connection to the reasoner. • Allows temporary inconsistency • Communication with reasoner via KAON SERVER
WonderWeb Tools ReasonersMultiple systems (FACT++,Hoolet, DLP) to reason with ontologies Common Interface (DIG) proposed and agreed upon (Racer, OWLP)
Reasoners • Reasoners developed during the project (WP2) were crucial to the success of the standardisation activity. • Why ? W3C standardisation requires demonstration of implementation experience, in particular: • FaCT++ • Hoolet (1st Order reasoner) • KAON DLP Prototype
DIG Interface • A common interface to DL systems • Supported by FACT, FACT++, Racer, OWLP … • A “new KRSS”. • XML Schema for concept language. • Using HTTP for communication. • Simple, “Level 0” approach • Sufficient to support simple, “one-shot” applications, e.g. OilEd • Largely developed in WonderWeb project
WonderWeb Tools OntoDiffOntology Change DetectionMethodology plus practical tool support
Versioning tool OntoView • Goal: tool for (ordinary) ontology engineers • helps to specify complete information about changes • Functions: • compare versions of ontologies • show propagation of change • allows specification of conceptual relation • distils the transformation operations • patters of operations can be specified
Comparing ontology versions • What should be compared? • not textual representation (like diff) • formatting is not important • could be different representations for same construct • not logical theory • small change might affect whole ontology • instead look at “intended definition” of classes and properties • groups of axioms that form a definition • follows ideas of ontology engineer • gives a “heuristic representation” of the change
WonderWeb Tools Further Tools Driving Theory and Practice of Web Ontology Field
Change detection procedure • Assume RDF-based ontology languages • Ontologies are parsed and stored as RDF triples • group statements resulting from one “definition” (first level XML tree) • identify group by rdf:ID / rdf:about statement <owl:Class rdf:ID="Person"> <rdfs:subClassOf rdf:resource="#Animal"/> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#hasParent"/> <owl:allValuesFrom rdf:resource="#Person"/> </owl:Restriction> </rdfs:subClassOf> </owl:Class> about #Person #Person rdf:type daml:Class #Person rdfs:subClassOf #Animal #Person rdfs:subClassOf anon_1 anon_1 rdf:type daml:Restriction anon_1 owl:onProperty #hasParent anon_1 owl:allValuesFrom #Person
Change detection - 2 • Versions are compared by aligning “groups of statements about same concept / property” • order is used in case of multiple occurrences v1 v2 about #Person about #Person #Person rdf:type owl:Class #Person rdfs:subClassOf #Animal #Person rdfs:subClassOf anon_1 anon_1 rdf:type owl:Restriction anon_1 owl:onProperty #hasParent anon_1 owl:toClass #Person #Person rdf:type owl:Class #Person rdfs:subClassOf #Animal about #parentOf about #parentOf #parentOf rdf:type owl:Property #parentOf rdf:type owl:ObjectProperty #parentOf rdf:type owl:Property #parentOf rdf:type owl:ObjectProperty
Change detection - 3 IF exist:old <A, Y, Z>* exist:new <X, Y, Z>* not-exist:new <X, Y, Z>* THEN change-type A • Rules are used to describe change types: • language specific • requires computation of RDFS closure • i.e. all statements should be made explicit • Example: find a change in a OWL slot restriction: IF exist:old <X, rdfs:subClassOf, Y1> <Y1, rdf:type, owl:#Restriction> <Y1, owl:onProperty, Y2> <Y1, owl:allValuesFrom, Z> exist:new <X, rdfs:subClassOf, Y1> <Y1, rdf:type, owl:#Restriction> <Y1, owl:onProperty, Y2> not-exist:new <Y1, daml:toClass, Z> THEN logicalChange.localPropertyValue X
Change detection - 4 • Original file is used for visualisation of change • user specific formatting is preserved • Strong points: • generic mechanism • can be used with all RDFS based languages • language specific parts are encoded in rules • RDF data model hides a lot of syntactic changes • existing tools are used for parsing, state maintenance and computation of RDFS closure