Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, 2006. Paula Matuszek 1 CS 9010: Semantic Web Ontologies.

Slides:



Advertisements
Similar presentations
Ontology Engineering for the Semantic Web and Beyond Natalya F. Noy Stanford University A large part of this tutorial is based on.
Advertisements

An Introduction to RDF(S) and a Quick Tour of OWL
So What Does it All Mean? Geospatial Semantics and Ontologies Dr Kristin Stock.
Of 27 lecture 7: owl - introduction. of 27 ece 627, winter ‘132 OWL a glimpse OWL – Web Ontology Language describes classes, properties and relations.
Chapter 8: Web Ontology Language (OWL) Service-Oriented Computing: Semantics, Processes, Agents – Munindar P. Singh and Michael N. Huhns, Wiley, 2005.
Tutorial on Ontology Management
Ontology development in Protégé. Lecture 2 Introduction to Protégé 2 Pablo Romero, Department of Informatics Overview Components of an ontology The ontology.
Ontologies - Design principles Cartic Ramakrishnan LSDIS Lab University of Georgia.
Ontology… A domain ontology seeks to reduce or eliminate conceptual and terminological confusion among the members of a user community who need to share.
Natasha Noy Stanford University Ontology Development 101 A large part of this tutorial is based on “Ontology Development 101: A Guide to Creating Your.
Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 8520 Fall, Paula Matuszek 1 CSC 8520: Artificial Intelligence.
PROMPT: Algorithm and Tool for Automated Ontology Merging and Alignment Natalya Fridman Noy and Mark A. Musen.
Cornell CS Semantic Web Ontologies & Data Models CS 502 – Carl Lagoze – Cornell University Acknowledgements: Eric Miller Dieter Fensel.
Biological Ontologies Neocles Leontis April 20, 2005.
PROMPT: Algorithm and Tool for Automated Ontology Merging and Alignment Natalya F. Noy and Mark A. Musen.
© Copyright Eliyahu Brutman Programming Techniques Course.
October 15, 2007Inf 722 Information Organisation (Fall 2007) (Gangolly)1 Ontologies Lecture Notes Prepared by Jagdish S. Gangolly Interdisciplinary Ph.D.
Sunday, June 28, 2015 Abdelali ZAHI : FALL 2003 : XML Schemas XML Schemas Presented By : Abdelali ZAHI Instructor : Dr H.Haddouti.
CS 4100 Artificial Intelligence Prof. C. Hafner Class Notes Feb 23, 2012.
1 Dr Alexiei Dingli Introduction to Web Science Modelling the SW.
1 Ontology & Ontology Development 인공지능 연구실 허 희 근.
Ontology Development Kenneth Baclawski Northeastern University Harvard Medical School.
Chapter 6 Understanding Each Other CSE 431 – Intelligent Agents.
Of 39 lecture 2: ontology - basics. of 39 ontology a branch of metaphysics relating to the nature and relations of being a particular theory about the.
INF 384 C, Spring 2009 Ontologies Knowledge representation to support computer reasoning.
Knowledge representation and the Internet – Ontology Ddesign What is an ontology? Why develop an ontology? Step-By-Step: Developing an ontology Going deeper:
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
RDF and OWL Developing Semantic Web Services by H. Peter Alesso and Craig F. Smith CMPT 455/826 - Week 6, Day Sept-Dec 2009 – w6d21.
Building an Ontology of Semantic Web Techniques Utilizing RDF Schema and OWL 2.0 in Protégé 4.0 Presented by: Naveed Javed Nimat Umar Syed.
Ontology Engineering & Maintenance Semantic Web - Spring 2008 Computer Engineering Department Sharif University of Technology.
OWL 2 in use. OWL 2 OWL 2 is a knowledge representation language, designed to formulate, exchange and reason with knowledge about a domain of interest.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
New Perspectives on XML, 2nd Edition
Semantic Web Ontology Design Pattern Li Ding Department of Computer Science Rensselaer Polytechnic Institute October 3, 2007 Class notes for CSCI-6962.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
Ontology & OWL Semantic Web - Fall 2005 Computer Engineering Department Sharif University of Technology.
Umi Laili Yuhana December, Context Aware Group - Intelligent Agent Laboratory Computer Science and Information Engineering National Taiwan University.
Advanced topics in software engineering (Semantic web)
Ontologies Come of Age Deborah L. McGuinness Stanford University “The Semantic Web: Why, What, and How, MIT Press, 2001” Presented by Jungyeon, Yang.
Semantic web course – Computer Engineering Department – Sharif Univ. of Technology – Fall Knowledge Representation Semantic Web - Fall 2005 Computer.
EEL 5937 Ontologies EEL 5937 Multi Agent Systems Lecture 5, Jan 23 th, 2003 Lotzi Bölöni.
XML 2nd EDITION Tutorial 4 Working With Schemas. XP Schemas A schema is an XML document that defines the content and structure of one or more XML documents.
1 Tutorial 14 Validating Documents with Schemas Exploring the XML Schema Vocabulary.
1 Artificial Intelligence Applications Institute Centre for Intelligent Systems and their Applications Stuart Aitken Artificial Intelligence Applications.
1 CSC 9010 Spring, Paula Matuszek Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CS 9010: Knowledge-Based Systems.
Artificial Intelligence 2004 Ontology
Semantic Web Ontologies CS 431 – Carl Lagoze – Cornell University Acknowledgements: Alun Preece.
OilEd An Introduction to OilEd Sean Bechhofer. Topics we will discuss Basic OilEd use –Defining Classes, Properties and Individuals in an Ontology –This.
Organization of the Lab Three meetings:  today: general introduction, first steps in Protégé OWL  November 19: second part of tutorial  December 3:
Metadata Common Vocabulary a journey from a glossary to an ontology of statistical metadata, and back Sérgio Bacelar
Ontologies - Design Ray Dos Santos June 19, 2009.
Ontology Basics 葉 慶 隆 大同大學 資訊工程系 URL:
Ontology development and evaluation Dr. Alexandra I. Cristea.
Ontology Engineering for the Semantic Web and Beyond Natalya F. Noy Stanford University Slides from: Introduction to Ontology and.
Practical RDF Chapter 12. Ontologies: RDF Business Models Shelley Powers, O’Reilly SNU IDB Lab. Taikyoung Kim.
ONTOLOGY ENGINEERING Lab #2 – September 8,
17 April 2005Sharif University of Tech Page 1 Ontologies Come of Age Amir Hossein Assiaee
Knowledge Representation. So far... The previous chapters described the technology for knowledge-based agents: – the syntax, semantics, and proof theory.
Of 24 lecture 11: ontology – mediation, merging & aligning.
1 Advanced Database Systems: DBS CB, 2 nd Edition Advanced Topics of Interest: Semantics Web and Data Integration.
Chapter Describing Individuals OWL Individuals ▫Ontological Primitive Layer  Mostly described with RDF ▫Instances of user-defined ontological.
OWL (Ontology Web Language and Applications) Maw-Sheng Horng Department of Mathematics and Information Education National Taipei University of Education.
Ontology Engineering for the Semantic Web and Beyond
Developing Medical Informatics Ontologies with Protégé
DOMAIN ONTOLOGY DESIGN
ece 627 intelligent web: ontology and beyond
Lecture #11: Ontology Engineering Dr. Bhavani Thuraisingham
Ontologies.
ece 720 intelligent web: ontology and beyond
Introduction to Web Science
Presentation transcript:

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 1 CS 9010: Semantic Web Ontologies and OWL Paula Matuszek Spring, 2006

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 2 French wines and wine regions California wines and wine regions Which wine should I serve with seafood today? A shared ONTOLOGYof wine and food

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 3 What are we doing today? OWL – but OWL is just a representation. The hard part is what it is we are representing! –What is an ontology? –Why develop an ontology? –Step-By-Step: Developing an ontology –Going deeper: Common problems and solutions –Current research issues in ontology engineering Computers are good at syntax. People aren’t. So we will explore an ontology development tool, Protégé.

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 4 What Is An Ontology An ontology is an explicit description of a domain: –concepts –properties and attributes of concepts –constraints on properties and attributes –Individuals (often, but not always) An ontology defines –a common vocabulary –a shared understanding

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 5 Ontology Examples Taxonomies on the Web –Google DirectoryGoogle Directory Catalogs for on-line shopping –Amazon.com product catalogAmazon.com product catalog Domain-specific standard terminology –Unified Medical Language System (UMLS) and MeSHMeSH Broad general ontologies –CycCyc

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 6 Why Develop an Ontology? To share common understanding of the structure of information –among people –among software agents To enable reuse of domain knowledge –to avoid “re-inventing the wheel” –to introduce standards to allow interoperability

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 7 More Reasons To make domain assumptions explicit –easier to change domain assumptions (consider a genetics knowledge base) –easier to understand and update legacy data To separate domain knowledge from the operational knowledge –re-use domain and operational knowledge separately (e.g., configuration based on constraints)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 8 Which wine should I serve with seafood today? What wines should I buy next Monday for my reception in Villanova, PA? Is there a market for the products of another small winery in this area? What online source is the best for wines for my party in Texas next fall? Consider Questions Like:

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 9 What Do We Need to Know?

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 10 An Ontology Is Often Just the Beginning Ontologies Software agents Problem- solving methods Domain- independent applications Databases Declare structure Knowledge bases Provide domain description

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 11 Wines and Wineries

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 12 Ontology-Development Process General approach: determine scope consider reuse enumerate terms define classes define properties define constraints create instances Usually a highly iterative process.

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 13 Ontology Engineering versus Object-Oriented Modeling An ontology reflects the structure of the world is often about structure of concepts actual physical representation is not an issue An OO class structure reflects the structure of the data and code is usually about behavior (methods) describes the physical representation of data (long int, char, etc.)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 14 Preliminaries - Tools All screenshots in this tutorial are from Protégé-2000, which: –is a graphical ontology-development tool –supports a rich knowledge model –is open-source and freely available ( Some other available tools: –Ontolingua and Chimaera –OntoEdit –OilEd

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 15 Determine Domain and Scope What is the domain that the ontology will cover? For what we are going to use the ontology? For what types of questions the information in the ontology should provide answers (competency questions)? determine scope consider reuse enumerate terms define classes define properties define constraints create instances

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 16 Competency Questions Which wine characteristics should I consider when choosing a wine? Is Bordeaux a red or white wine? Does Cabernet Sauvignon go well with seafood? What is the best choice of wine for grilled meat? Which characteristics of a wine affect its appropriateness for a dish? Does a flavor or body of a specific wine change with vintage year? What were good vintages for Napa Zinfandel?

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 17 Consider Reuse Why reuse other ontologies? –to save the effort –to interact with the tools that use other ontologies –to use ontologies that have been validated through use in applications determine scope consider reuse enumerate terms define classes define properties define constraints create instances

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 18 What to Reuse? Ontology libraries –DAML ontology library ( –Ontolingua ontology library ( –Protégé ontology library (protege.stanford.edu/plugins.html) Upper ontologies –IEEE Standard Upper Ontology ( suo.ieee.org) –Cyc (

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 19 What to Reuse? (II) General ontologies –DMOZ ( –WordNet ( Domain-specific ontologies –UMLS Semantic Net –GO (Gene Ontology) (

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 20 Enumerate Important Terms What are the terms we need to talk about? What are the properties of these terms? What do we want to say about the terms? consider reuse determine scope enumerate terms define classes define properties define constraints create instances

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 21 Enumerating Terms - The Wine Ontology wine, grape, winery, location, wine color, wine body, wine flavor, sugar content white wine, red wine, Bordeaux wine food, seafood, fish, meat, vegetables, cheese

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 22 Define Classes and the Class Hierarchy A class is a concept in the domain –a class of wines –a class of wineries –a class of red wines A class is a collection of elements with similar properties Instances of classes –a glass of California wine you’ll have for lunch consider reuse determine scope define classes define properties define constraints create instances enumerate terms

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 23 Class Inheritance Classes usually constitute a taxonomic hierarchy (a subclass-superclass hierarchy) A class hierarchy is usually an IS-A hierarchy: an instance of a subclass is an instance of a superclass If you think of a class as a set of elements, a subclass is a subset

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 24 Class Inheritance - Example Apple is a subclass of Fruit Every apple is a fruit Red wines is a subclass of Wine Every red wine is a wine Chianti wine is a subclass of Red wine Every Chianti wine is a red wine

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 25 Levels in the Hierarchy Middle level Top level Bottom level

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 26 Modes of Development top-down – define the most general concepts first and then specialize them bottom-up – define the most specific concepts and then organize them in more general classes combination – define the more salient concepts first and then generalize and specialize them

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 27 Documentation Classes (and slots) usually have documentation –Describing the class in natural language –Listing domain assumptions relevant to the class definition –Listing synonyms Documenting classes and slots is as important as documenting computer code!

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 28 Define Properties of Classes – Slots Slots in a class definition describe attributes of instances of the class and relations to other instances Each wine will have color, sugar content, producer, etc. consider reuse determine scope define constraints create instances enumerate terms define classes define properties

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 29 Properties (Slots) Types of properties –“intrinsic” properties: flavor and color of wine –“extrinsic” properties: name and price of wine –parts: ingredients in a dish –relations to other objects: producer of wine (winery) Simple and complex properties –simple properties (attributes): contain primitive values (strings, numbers) –complex properties: contain (or point to) other objects (e.g., a winery instance)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 30 Slots for the Class Wine (in Protégé-2000)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 31 Slot and Class Inheritance A subclass inherits all the slots from the superclass If a wine has a name and flavor, a red wine also has a name and flavor If a class has multiple superclasses, it inherits slots from all of them Port is both a dessert wine and a red wine. It inherits “sugar content: high” from the former and “color:red” from the latter

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 32 Property Constraints Property constraints (facets) describe or limit the set of possible values for a slot The name of a wine is a string The wine producer is an instance of Winery A winery has exactly one location consider reuse determine scope create instances enumerate terms define classes define constraints define properties

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 33 Facets for Slots at the Wine Class

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 34 Common Facets Slot cardinality – the number of values a slot has Slot value type – the type of values a slot has Minimum and maximum value – a range of values for a numeric slot Default value – the value a slot has unless explicitly specified otherwise

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 35 Common Facets: Slot Cardinality Cardinality –Cardinality N means that the slot must have N values Minimum cardinality –Minimum cardinality 1 means that the slot must have a value (required) –Minimum cardinality 0 means that the slot value is optional Maximum cardinality –Maximum cardinality 1 means that the slot can have at most one value (single-valued slot) –Maximum cardinality greater than 1 means that the slot can have more than one value (multiple-valued slot)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 36 Common Facets: Value Type String: a string of characters (“Château Lafite”) Number: an integer or a float (15, 4.5) Boolean: a true/false flag Enumerated type: a list of allowed values (high, medium, low) Complex type: an instance of another class –Specify the class to which the instances belong The Wine class is the value type for the slot “produces” at the Winery class

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 37 Domain and Range of Slot Domain of a slot – the class (or classes) that have the slot –More precisely: class (or classes) instances of which can have the slot Range of a slot – the class (or classes) to which slot values belong

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 38 Facets and Class Inheritance A subclass inherits all the slots from the superclass A subclass can override the facets to “narrow” the list of allowed values –Make the cardinality range smaller –Replace a class in the range with a subclass Wine French wine Winery French winery is-a producer

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 39 Create Instances Create an instance of a class –The class becomes a direct type of the instance –Any superclass of the direct type is a type of the instance Assign slot values for the instance frame –Slot values should conform to the facet constraints –Knowledge-acquisition tools often check that consider reuse determine scope create instances enumerate terms define classes define properties define constraints

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 40 Creating an Instance: Example

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 41 Defining Classes and a Class Hierarchy The things to remember: –There is no single correct class hierarchy –But there are some guidelines The question to ask: “Is each instance of the subclass an instance of its superclass?”

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 42 Disjoint Classes Classes are disjoint if they cannot have common instances Disjoint classes cannot have any common subclasses either Red wine, White wine, Rosé wine are disjoint Dessert wine and Red wine are not disjoint Wine Red wine Rosé wine White wine Dessert wine Port

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 43 Classes and Their Names Classes represent concepts in the domain, not their names The class name can change, but it will still refer to the same concept Synonym names for the same concept are not different classes –Many systems allow listing synonyms as part of the class definition

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 44 Back to the Slots: Domain and Range When defining a domain or range for a slot, find the most general class or classes Consider the flavor slot –Domain: Red wine, White wine, Rosé wine –Domain: Wine Consider the produces slot for a Winery: –Range: Red wine, White wine, Rosé wine –Range: Wine

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 45 Back to the Slots: Domain and Range When defining a domain or range for a slot, find the most general class or classes Consider the flavor slot –Domain: Red wine, White wine, Rosé wine –Domain: Wine Consider the produces slot for a Winery: –Range: Red wine, White wine, Rosé wine –Range: Wine slotclassallowed values DOMAINRANGE

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 46 Inverse Slots Maker and Producer are inverse slots

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 47 Inverse Slots (II) Inverse slots contain redundant information, but –Allow acquisition of the information in either direction –Enable additional verification –Allow presentation of information in both directions The actual implementation differs from system to system –Are both values stored? –When are the inverse values filled in? –What happens if we change the link to an inverse slot?

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 48 Default Values Default value – a value the slot gets when an instance is created A default value can be changed The default value is a common value for the slot, but is not a required value For example, the default value for wine body can be FULL Note: not currently supported by OWL

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 49 Limiting the Scope An ontology should not contain all the possible information about the domain –No need to specialize or generalize more than the application requires –No need to include all possible properties of a class Only the most salient properties Only the properties that the applications require

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 50 Limiting the Scope (II) Ontology of wine, food, and their pairings probably will not include –Bottle size –Label color –My favorite food and wine An ontology of biological experiments will contain –Biological organism –Experimenter Is the class Experimenter a subclass of Biological organism?

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 51 Ontology Languages RDF and RDFS DAML+OIL OWL Cyc-L Others OWL has a special status within the semantic web community.

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 52 RDF and RDF Schema Classes RDF Schema Specification 1.0 (

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 53 RDF(S) Terminology and Semantics Classes and a class hierarchy –All classes are instances of rdfs:Class –A class hierarchy is defined by rdfs:subClassOf Instances of a class –Defined by rdf:type Properties –Properties are global: A property name in one place is the same as the property name in another (assuming the same namespace) –Properties form a hierarchy, too (rdfs:subPropertyOf)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 54 Property Constraints in RDF(S) Cardinality constraints –No explicit cardinality constraints –Any property can have multiple values Range of a property –a property can have only one range Domain of a property –a property can have more than one domain (can be attached to more than one class) No default values

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 55 OWL: Classes And a Class Hierarchy Classes –Each class is an instance of owl:Class Class hierarchy –Defined by rdfs:subClassOf More ways to specify organization of classes –Disjointness (owl:disjointWith) –Equivalence (owl:EquivalentClass) Predefined: owl:Thing, owl:Nothing

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 56 More Ways To Define a Class in OWL Union of classes: owl:unionOf A class Person is a union of classes Male and Female Intersection of classes: owl:intersectionOf A class Red Wine is an intersection of Wine and Red Thing Complement of a class: owl:complementOf Carnivores are all the animals that are not herbivores Enumeration of elements: owl:oneOf A class Wine Color contains the following instances: red, white, rosé Restriction on properties: owl:Restriction A class Red Thing is a collection of things with color: Red

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 57 Properties in OWL Two kinds of property –owl:ObjectProperty. Object properties relate objects to other objects. Example: Goes-well- with. –owl:datatypeProperty. Datatype properties relate objects to datatype values. Example: Has-cost. Properties can be equivalent –owl:equivalentProperty. Example: bottled-by and produced-by

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 58 Some Special Properties in OWL owl:TransitiveProperty –Is more expensive than owl:SymmetricProperty –Comes from vinyard owl:FunctionalProperty –Has UPC code owl:InverseFunctionalProperty –Is UPC code of

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 59 Research Issues in Ontology Creation Content generation Analysis and evaluation Maintenance Ontology languages Tool development

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 60 Content: Top-Level Ontologies What does “top-level” mean? –Objects: tangible, intangible –Processes, events, actors, roles –Agents, organizations –Spaces, boundaries, location –Time IEEE Standard Upper Ontology effort –Goal: Design a single upper-level ontology –Process: Merge upper-level of existing ontologies

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 61 Content: Knowledge Acquisition Knowledge acquisition is a bottleneck Sharing and reuse alleviate the problem But we need automated knowledge acquisition techniques –Linguistic techniques: ontology acquisition from text –Machine-learning: generate ontologies from structured documents (e.g., XML documents) –Exploiting the Web structure: generate ontologies by crawling structured Web sites –Knowledge-acquisition templates: experts specify only part of the knowledge required

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 62 Analysis Analysis: semantic consistency –Violation of property constraints –Cycles in the class hierarchy –Terms which are used but not defined –Interval restrictions that produce empty intervals (min > max) Analysis: style –Classes with a single subclass –Classes and slots with no definitions –Slots with no constraints (value type, cardinality)

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 63 Evaluation One of the hardest problems in ontology design Ontology design is subjective What does it mean for an ontology to be correct (objectively)? The best test is the application for which the ontology was designed

Slides modified from Natasha Noy, protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt CSC 9010 Spring, Paula Matuszek 64 Ontology Languages What is the “right” level of expressiveness? What is the “right” semantics? When does the language make “too many” assumptions?