240 likes | 388 Views
Reasoning: Who Gives a Hoot?. Sean Bechhofer Information Management Group University of Manchester, UK http://img.cs.man.ac.uk http://oiled.man.ac.uk. The Semantic Web. Most existing Web resources only human understandable Markup (HTML) provides rendering information
E N D
Reasoning: Who Gives a Hoot? Sean Bechhofer Information Management Group University of Manchester, UK http://img.cs.man.ac.uk http://oiled.man.ac.uk
The Semantic Web • Most existing Web resources only human understandable • Markup (HTML) provides rendering information • Textual/graphical information for human consumption • Semantic Web aims at machine understandability • Semantic markup will be added to web resources • Markup will use Ontologies for shared understanding • Requirement for an ontology language
Some History • OIL • RDFS based syntax • Based on frame-based language • Strong emphasis on formal rigour • Semantics in terms of Description Logic language • DAML-ONT • Developed by DAML Programme • Extended RDFS with constructors from OO and frame-based languages • Rather weak semantic specification • Problems with machine interpretation • Problems with human interpretation
Some More History • DAML+OIL • Merging of DAML-ONT and OIL • Joint EU/US committee • Basically a DL with an RDFS-based syntax • Submitted to W3C as basis for standardisation
OWL • Based on DAML+OIL • Some slight modifications, e.g. removal of qualified cardinality constraints • Layers of expressiveness: • OWL Lite • Restricted cardinality expressions • OWL Fast/DL (~DAML+OIL) • Enumerations • Boolean Expressions • Arbitrary Expressions in Axioms • OWL Large • Loads of other stuff…
DAML+OIL/OWL • Languages for defining (class-based) ontologies • Classes • Collections of domain objects • Constructors for describing and defining classes • Boolean expressions • Explicit quantification of restrictions • Properties • (Binary) relationships between domain objects • Separation of object properties and datatype properties • Individuals • Specific named objects in the domain
Migratory Paths • You don’t have to use all the expressiveness • Simple taxonomies can be defined • Further refined and elaborated at a later date • Use reasoning to assist in this elaboration • maintaining the hierarchy and internal consistency of the ontology • Supports incremental development
Semantics • What does an expression in an ontology mean? • The semantics of DAML+OIL tell us precisely how to interpret a complex (class) expression • Model theoretic semantics. An interpretation consists of • A domain of discourse (collection of objects). • Functions mapping • classes to sets of objects • properties to sets of pairs of objects • Rules describe how to interpret the constructors and tell us when an interpretation is a model • Well defined semantics are vital if we are to support machine interpretability
Reasoning • Due to the presence of the semantics, we can reason about OWL & DAML+OIL models • Subsumption reasoning: tells us when all instances of one class are necessarily instances of another class • Satisfiability reasoning: tells us when it is logically impossible to have instances of a class • Set of operators/axioms restricted so that reasoning is decidable • Restricted expressiveness facilitates provision of reasoning services • Known algorithms • Implemented systems • Evidence of empirical tractability
Why Reasoning Services? • Reasoning is important for: • Ontology design • Check class consistency and (unexpected) implied relationships • Particularly important with large ontologies/multiple authors • Ontology integration • Assert inter-ontology relationships • Reasoner computes integrated class hierarchy/consistency • Ontology deployment • Determine if set of facts are consistent w. r. t. ontology • Determine if individuals are instances of ontology classes The Semantic Web needs a logic on top Henry Thompson
OilEd • Designed initially to demonstrate the expressive power of OIL & DAML+OIL. • A light-weight ontology editor. • Not a knowledge base construction tool. • A platform to explore how to usea reasoner.
OilEd Philosophy • Tabbed panes for classes, slots, individuals and axioms. • Basic component is the frame description • Specifies superclasses and slot constraints. • Controls for addition, removal and editing of superclasses and constraints • Provides a “user-friendly” face on top of DAML+OIL. Replacing the lost frame nature. • Different editors for different expression types • Simple hierarchical views. • No frills.
Interesting Features • Arbitrary class expressions can be used as slot fillers. • Extending the frame-based paradigm. • Boolean connectives. • Primitive & defined classes. • A number of slot constraint types. • Explicit quantification. • Slot hierarchies. • Axioms • Disjointness, covering and equality. • Possibility of using a reasoner.
Reasoning • Spots inconsistent definitions • e.g. contradictions in cardinality constraints or value restrictions • Organises the classification hierarchy • Discovering new superclasses • Particularly useful when using defined classes • Subtle side-effects • Superclasses inferred due to domain/range restrictions • Information scattered throughout the model can affect classification
Reasoning • Reasoning via a standard DL API • Based on satisfiability and subsumption reasoning • Using the new DIG protocol • Allows the use of other reasoners, e.g. RACER or Cerebra • One shot connection to the reasoner • Translate ontology to equivalent DL axioms • Send to reasoner and then make requests • Allows temporary inconsistency • What do you do with the results? • Reorganize hierarchy or just add things in? • What if you’re connected all the time?
Hard Things • Hierarchical displays • Difficult with multiple inheritance and big hierarchies • DAML+OIL/OWL shift from frames • Original OIL language was much more frame-like than DAML+OIL or OWL • Can be hard to preserve the original intention of the modeller • Expression (and axiom) editing is clunky • Expression migration can be difficult • But it’s fundamentally quite a hard task • Lack of a “human readable” syntax
More Hard Things! • Concrete Types aren’t very well supported • XML Schema types • Little reasoning support (not OilEd’s fault!) • Not much support for instances • Reasoning over enumerated classes is a (reasonable) hack • But remember: OilEd was not intended as a full-scale knowledge base construction tool • Explanation • Why did that happen?
Good Things • Lots of interest • >1600 registered downloads of the latest version. • A demonstration of the reasoner & the application of reasoning • Useful in understanding how one might use a reasoner within such an application • A focus for discussion
Users • Projects • GONG, myGrid, AstroGrid • Industry • Boeing, HP • Teaching • University of Manchester, Free University of Amsterdam, Prague University of Economics, UPM (Madrid), TZI (Bremen),… • Others • EML, Hamburg, Maryland, Erlangen-Nürnberg, China, Turkey, Kathmandu(!),…
Further Work • Rebuild it properly • Better modular structure • Facilitating community involvement and third-party extensions • Integration with existing tools. • KAON • Protégé? • Improve Concrete Datatype Support. • Likely based on XML Schema (following OWL) • Better Ontology Engineering • Version & Change Management • Instance Store/KB • Methodology support.
Summary • Building and maintaining ontologies is hard • Need support from intelligent tools • Frame based ontology editors are one such tool • Familiar to and liked by many users • Intuitive (for some) interface • Facilitate gradual refinement of ontology design • Frame based editors can be extended with • power and semantic clarity of expressive DL • reasoning support • But…it won’t do everything!
http://oiled.man.ac.uk • Acknowledgements: • The original development of OilEd was supported by the Free University of Amsterdam, Interprice GmbH (now Semantic Edge) and the University of Manchester • OilEd owes obvious debts to existing ontology editors such as Protégé.