510 likes | 736 Views
Development of Ontologies. Guus Schreiber SWI, University of Amsterdam Co-chair W3C Web Ontology Working Group. Overview. The notion of ontology Ontology types and examples Ontology languages Ontology engineering: methods and tools. What is an Ontology?.
E N D
Development of Ontologies Guus Schreiber SWI, University of Amsterdam Co-chair W3C Web Ontology Working Group
Overview • The notion of ontology • Ontology types and examples • Ontology languages • Ontology engineering: methods and tools
What is an Ontology? • In philosophy: theory of what exists in the world • In IT: consensual & formal description of shared concepts in a domain • Aid to human communication and shared understanding, by specifying meaning • Machine-processable (e.g., agents use ontologies in communication) • Ontology = key technology in semantic information processing • Applications: knowledge management, e-business, industrial engineering, semantic world-wide web
What is an Ontology? (2) Source: Financial Times, e-procurement, Oct. 2000
The notion of ontology • Ontology = explicit specification of a shared conceptualization that holds in a particular context” (several authors) • Captures a viewpoint an a domain: • Taxonomies of species • Physical, functional, & behavioral system descriptions • Task perspective: instruction, planning • Main difference with data models is not the content, but the purpose (generalizes over applications)
Ontology should allow for “representational promiscuity” ontology parameter constraint -expression mapping rules viewpoint knowledge base B knowledge base A parameter(cab.weight) parameter(safety.weight) cab.weight + safety.weight parameter(car.weight) rewritten as = car.weight: constraint-expression( cab.weight + safety.weight cab.weight < 500: = car.weight) constraint-expression( cab.weight < 500)
The importance of context Principle 1: “The representation of real-world objects always depends on the context in which the object is used. This context can be seen as a “viewpoint” taken on the object. It is usually impossible to enumerate in advance all the possible useful viewpoints on (a class of ) objects.” Principle 2: “Reuse of some piece of information requires an explicit description of the viewpoints that are inherently present in the information. Otherwise, there is no way of knowing whether, and why this piece of information is applicable in a new application setting.”
Multiple views on a domain • typical viewpoints captured in ontologies: • physical, functional, behavioral, process type: flow, energy, .. • viewpoints typically overlap • applications require combinations of viewpoints
Ontology as conceptual structuring: multiple viewpoints & abstraction levels • viewpoint decomposition • shape, geometry • function • behavior • causality • structure: part-of (mereology), aggregation • connectedness (topology) • abstraction (generalization) level organization: • Intel 166 MHz • micro-processor • device component • (sub)system: part-of, connectedness • thing
Leveling of ontologies • Ontologies can have a recursive structure: • One ontology expresses a viewpoint on another ontology. • Entails a reformulation and/or reinterpretation of the underlying domain theories. • Often used to specify increasingly application-specific interpretations and/or reformulations of domain expressions. • Notion of ontology mapping • Still poorly understood
Context specification through ontology types • Domain-specific ontologies • Medicine: UMLS, SNOMED, Galen • Art history: AAT, ULAN • STEP application protocols • Task-specific ontologies • Classification • E-commerce • Generic ontologies • Top-level categories • Units and dimensions
Classification ontology description object universe instance of 1+ 1+ description dimension class of object type object class in dimension 1+ value set 1+ 1+ has descriptor descriptor descriptor value set descriptor 1+ value has feature value class constraint
Top-level categories:many different proposals Chandrasekaran et al. (1999)
Ontology specification • Many different languages • KIF • Ontolingua • Express • LOOM • UML • RDF Schema / DAML+OIL / OWL • Common basis • Class (concept) • Subclass with inheritance • Relation (slot)
Additional expressivity (1 of 2) • Multiple subclasses • Aggregation • Built-in part-whole representation • Relation-attribute distinction • “Attribute” is a relation/slot that points to a data type • Treating relations as classes • Sub relations • Reified relations (e.g., UML “association class”) • Constraint language
Additional expressivity (2 of 2) • Class/subclass semantics • Primitive vs. defined classes • Complete/partial, disjoint/overlapping subclasses • Set of basic data types • Modularity • Import/export of an ontology • Ontology mapping • Renaming ontological elements • Transforming ontological elements • Sloppy class/instance distinction • Class-level attributes/relations • Meta classes
Priority list for expressivity • Depends on goal: • Deductive capability: “limit to subset of first-order logic” • Maximal content: “as much as (pragmatically) possible” • My priority list (from a “maximal-content” representative) • Multiple subclasses • Reified relations • Import/export mechanism • Sloppy class/instance distinction • Aggregation • Constraint language
Expressivity of RDF Schema • Class • Describes collection of resources • Property • Links class to another class or to a “literal” (data value) • Domain and range restrictions • Subclass relation • Property inheritance • Subproperty relation • Classes and properties are themselves also resources • Cf. “classes as instances”
OWL: W3C Web Ontology Language • Basis = RDF Schema • Basic features (OWL Lite/Core): • Cardinality restrictions (limited) • Local range constraints • Equality of resources • Inverse, symmetric and transitive properties • Datatypes (reference to XML Schema) • Advanced features (OWL DL) • Boolean class combinations • Disjointness and completeness • Nameless classes • Cardinality restrictions (full) • Under development, see http://www.w3.org
Modelling issue:classes as instances Aircraft-type no-of-engines: integer >0 propulsion: {propeller, jet} Fokker-70 instance of Aircraft-type no-of-engines = 2 propulsion = jet Aircraft no-of-seats: positive integer owner: Airline Fokker-70 subclass of Aircraft no-of-seats: 60-80 PH-851 instance of Fokker-70 no-of-seats = 65 owner = KLM
Modelling issuedefinitional and default knowledge IF style/period = “Late Georgian” THEN (by definition) culture = “British” AND date.created between 1760-1811 IF type = “chest of drawers” style/period = “Late Georgian” THEN (this typically suggests) material.main = “mahogany”
Modelling issue:dealing with existing hierarchies <color> <chromatic color> pink vivid pink strong pink <intermediate pink> purplish pink brilliant purplish pink yellowish pink <neutral color>
Limitations of Hierarchies • What’s in a link? • Hierarchical links often have different semantics • “Dimensions” of distinction making provide rationale for hierarchical levels • (Multiple) classification along different dimensions within single hierarchy creates confusion and makes applications unnecessarily complex • Hierarchy enforces a single fixed sequence of dimensions • fixed ordering not always possible or desirable
Characteristics of ontologies: viewpoints - simultaneous multiple classifications Note: different dimensions along which distinctions are made (e.g. time, location, cause,…) often occur and are used simultaneously in a task.
Modelling issue:part-whole relation • Examples: • a wing spar is part of a wing assembly • chests of drawers have feet with their own style • Most items in collections have some internal structure
Part-whole relations • Important for describing objects with structure • Semantics are complicated • Different type of part-whole relations can be distinguished • Good overview article: • A. Artale, E. Franconi, N. Guarino and L. Pazzi. Part-Whole Relations in Object-Centered Systems: An Overview. Data and Knowledge Engineering. October 1996
WCH typology of part-whole relations • Three features • Do the parts play a functional role in the whole? • Is the part made of the same thing as the whole? • Can the parts be separated from the whole? • Component / Integral object • Example: elevator, car • Functional, separable, non homegenous • Member / Collection • Idem, but non-functional (tree in forest) • Portion / Mass • Separable, homogenous (slice of bread) • Place / Area • Not separable, homogenous (Lunteren part-of Gelderland) • Stuff / Object • Not separable,not homogenous (steel in bike)
Modelling of part-whole relations • Explicit introduction of wholes • Distinction between parts and other featues (attributes, relations) of the whole • Built-in transitivity of parts • If A part-of B and B part-of C then A part-of C • Generic names for parts • Typically describe functional roles (car has wheels) • Vertical relationships • Existence dependency between whole and part • Feature dependencies: • Inheritance from part to whole: “defective” • Inheritance from whole to part: “owner” • Systematic relation: weight whole = sum weight parts • Horizontal relationships • Constraints between parts
Guidelines for ontological engineering (1) • Do not develop from scratch • Use existing data models and domain standards as starting point • Start with constructing an ontology of common concepts • If many data models, start with two typical ones • Make the purpose and context of the ontology explicit • E.g. data exchange between ship designers and assessors • Operationalize purpose/context with use cases • Use multiple hierarchies to express different viewpoints on classes • Consider treating central relationships as classes
Guidelines for ontological engineering (2) • Do not confuse terms and concepts • Small ontologies are fine, as long as they meet their goal • Don’t be overly ambitious: complete unified models are difficult • Ontologies represent static aspects of a domain • Do not include work flow • Use a standard representation format, preferably with a possibility for graphical representation • Decide about the abtraction level of the ontology early on in the process. • E.g., ontology only as meta model
Ontology tools Some well known tools • Protégé (Stanford) • OntoEdit (now: OI Modeller / KAON) • OilEd (Manchester) Decision points: • Expressivity • Graphical representation • DB backend • Modularization support • Versioning
Small ontology construction example Source: M. Fowler, “Analysis Patterns” Translated into UML Goal: conceptual model for observations in medical practice
The notion of quantity John has a height of 185 (unit = cm)
Unit conversion Inches can be converted into centimeters by multiplying with 2.54 Degrees Celsius can be converted into Fahrenheit with the formula F = 32 + 9C/5
Introducing phenomena types For John (person) a height (phenomena type) with a quantity of 185 (unit = cm) was measured on 11/11/2000 15:43 (time stamp)
Qualitative observations • Qualitative observation:” “category” • Example: John has blood group A • “Blood group” is a phenomenon type • “Blood group A” is a phenomenon • The fact “Blood group A” is present for John is a category observation
Observation method and observer Dr. Smith has observed the height of John by means of a length pole
Resources • Web portals • www.ontoweb.irg • www.semanticweb.org • Articles, books on modelling: • T. R. Gruber, Towards principles for the design of ontologies used for knowledge sharing, In: N. Guarino and R. Poli (eds.) Formal Ontology in Conceptual Analysis and Knowledge Representation. Boston, Kluwer, 1994, • J. Martin & J. Odell, Object-Oriented Methods -- A Foundation. UML edition, Upper Saddle River, NJ, Prentice Hall,, 1997 • M. Fowler, Analysis Patterns: Reusable Object Models Menlo Park, CA, Addison-Wesley, 1997.