ONTOLOGY ENGINEERING  Group 14: Artificial Intelligence(Dr. Pushpak Bhattacharya) Aliabbas Petiwala Ajay Nandoriya Pramendra Singh Rajput
Deciding and constructing  Pizza Terminology to avoid Inconsistency Which Vegetarian Pizza is Least Spicy? A shared ONTOLOGY of  Pizza Restaurant Menu Customer Mexican Vegetarian Pizza American Vegetarian Pizza Recipe
Outline What is  ontology Engineering? Ontology Engineering versus  Object-Oriented Modeling Why develop an ontology? Developing an ontology Going deeper: Common problems and solutions Ontologies in the Semantic Web languages Current research issues in ontology engineering
What Is “Ontology Engineering”? Ontology Engineering:   Ontology engineering is a set of tasks related to the development of ontologies for a particular domain. Defining terms in the domain and relations among them Defining concepts in the domain  (classes) Arranging the concepts in a hierarchy  (subclass-superclass hierarchy) Defining which attributes and  properties   (slots)  classes can have and constraints on their values Defining  individuals  and filling in property values  Ontology Engineering  analogous to OO  Database Design?
Ontology Engineering versus  Object-Oriented Modeling An ontology reflects the structure of the  world is often about  structure  of concepts Formal ontological classes are  sets  which can be defined in terms of other classes, attributes and associations Property is a general term for attributes and associations. Open World Assumption means that lack of knowledge of a fact does not immediately imply knowledge of the negation of a fact. An OO class structure reflects the structure of  the data and code is usually about  behavior  (methods) Object-oriented classes are  templates  for constructing objects. Attributes and associations have different meanings. Closed World Assumption.
Logic: Open versus Closed Open (monotonic) logic gives different answers to queries than a closed logic. Fact:Suppose that Americana is the only Pizza: Closed world: violates constraint Open world: Americana Pizza exists but its base is not known. Pizza hasBase PizzaBase
Logic: Open versus Closed Open (monotonic) logic gives different answers to queries than a closed logic. Fact:ItalianPizza has bases CrispBase and HardBase: Closed world: violates constraint Open world: CrispBase and HardBase are same!. Pizza hasBase PizzaBase
Axioms for OWL Ontology An OWL ontology is a set of axioms Class Axioms: C  ⊑  D, C  ≡  D Role Axioms: R  ⊑  S, Func(R), Trans(S) Individual Axioms: a:C,  < a,b > :R  hasVertebra Animal Fish CanSwim ⊓ ⊓ Jellyfish Pomfret Moonjelly Ontology example Fish ⊑  Animal  ⊓ CanSwim Jellyfish ⊑  Fish ⊓   hasVertebra Pomfret ⊑  Fish Moonjelly:Jellyfish
Food Domain: Pizza Ontology in Protege.
Ontology Engineering Process An iterative process: determine scope consider reuse enumerate terms define classes consider reuse enumerate terms define classes define properties create instances define classes define properties define constraints create instances define classes consider reuse define properties define constraints create instances
Ontology Engineering Tools Protégé , which: is a graphical ontology-development tool supports a rich knowledge model is open-source and freely available  (http://protege.stanford.edu) Some other available tools: Ontolingua and Chimaera OntoEdit OilEd DOGMA DogmaModeler KAON OntoClean OnToContent HOZO
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 )? Answers to these questions may change during the lifecycle determine scope consider reuse enumerate terms define classes define properties define constraints create instances
Competency Questions For determining scope Which Pizza characteristics should I consider when choosing a Pizza? Is Veg or Non Veg? Does Pizza go well with Ice Cream? Which is the best choice among Veg pizza . What kind of Pizza bases available? Pizzas from which countries are available? Which Pizza is the least spicy?
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 General ontologies DMOZ  (www.dmoz.org) WordNet  ( www.cogsci.princeton.edu/~wn/) Domain-specific ontologies UMLS Semantic Net GO (Gene Ontology)  ( www.geneontology.org) determine scope consider reuse enumerate terms define classes define properties define constraints create instances
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
Enumerating Terms - The Pizza Ontology Pizza, Cheese , Toppings , Mexican , Sauce , Pizza Base, Crispy…
Define Classes and the Class Hierarchy A class is a  concept  in the domain a class of Pizza a class of PizzaBase a class of Country A class is a  collection  of elements with similar properties Instances  of classes VegSpicyPizza. consider reuse determine scope define classes define properties define constraints create instances enumerate terms
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
Class Inheritance - Example Pizza is a subclass of Food VegetarianPizza is a subclass of Pizza SpicyPizza is a subclass of VegetarianPizza.
Define Properties of Classes  –  Slots Slots in a class definition describe attributes of instances of the class and relations to other instances Each pizza will have hasBase, hasTopping hasCountryOfOrigin. consider reuse determine scope define constraints create instances enumerate terms define classes define properties
Properties (Slots) Types of properties Simple and complex properties simple properties (attributes): contain primitive values (strings, numbers) complex properties: contain (or point to) other objects (e.g., a Pizza instance)
Properties for the Class Pizza (in Protégé-2000)
property and Class Inheritance A subclass  inherits all the propertys  from the superclass If a Pizza has a name and flavor, a AmericanPizza also has a name and flavor If a class has  multiple  superclasses, it inherits properties from all of them.
Create Instances \Individuals Create an instance of a class The class becomes a  direct type  of the instance If concepts form a natural hierarchy, then we should represent them as classes Individual instances are the most specific concepts represented in a knowledge base.  if we would like to maintain an inventory of pizzas in the restaurant then use individuals. Assign property values for the instance consider reuse determine scope create instances enumerate terms define classes define properties define constraints
Avoiding Class Cycles Danger of multiple inheritance: cycles in the class hierarchy Classes A, B, and C have equivalent sets of instances By many definitions, A, B, and C are thus equivalent
The Perfect Family Size If a class has only one child, there may be a modeling problem Put It up: AmericanPizza  ----   AmericanCreamPizza  AmericanCreamPizza
Single and Plural Class Names A “Pizza” is not a  kind-of  “Pizzas” Class names should be either all singular all plural
A Completed Hierarchy of Pizza
Outline What is  ontology Engineering? Ontology Engineering versus  Object-Oriented Modeling Why develop an ontology? Step-By-Step: Developing an ontology Ontologies in the Semantic Web languages Current research issues in ontology engineering
Ontologies and the Semantic Web Languages Most Semantic Web languages are designed explicitly for representing ontologies RDFS( Resource Description Framework  Schema ) OWL(web ontology language) XML Schema Turtle Ontologies can also be express by ER diagram ,Class diagram, UML diagram
Semantic Web  Languages The languages differ in their Syntax We are not concerned with it here – An ontology is a  conceptual  representation .(Syntax Independent) Terminology Class-concept Instance-Individual Slot-property Expressivity What we can express in some languages, we cannot express in others
The built-in vocabulary for  RDF schema/ OWL  RDF Schema Specification 1.0 (http://www.w3.org/TR/2000/CR-rdf-schema-20000327/) Specification about the RDFS and OWL is available on the Web ,that provides  the vocabulary for writing exact syntax
RDFS \ OWL Terminology and Semantics Language vocabulary provides the elements for writing  Classes and a class hierarchy All classes are instances of  rdfs:Class  element A class hierarchy is defined by  rdfs:subClassOf  element   Instances of a class Defined by  rdf:description  element Properties Properties are local in RDFS and global in OWL Properties form a hierarchy, too ( rdfs:subPropertyOf ) element
Example of  RDFS syntax <rdfs:Class   rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#AmericanPizza&quot;> < rdfs:label> Americana</ rdfs:label > < rdfs:subClassOf  rdf:resource=&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#NamedPizza&quot;/> </ rdfs:Class > HERE rdfs:about  – name of the subject the subject resource rdfs:label   - a human-readable name for the subject
0WL  It builds upon the RDFS specification. More expressive than RDFS Disjointness ( owl:disjointWith ) Equivalence ( owl: equivalentClass ) Also property are more expessive. Example showing OWL syntax < owl:Class rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#NonVegetarianPizza&quot;> < owl:disjointWith rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#VegetarianPizza&quot;/> < /owl:Class >
Property Elements in RDFS/OWL Cardinality  - can have Any property single, multiple ,min ,max values - We can define restriction on cardinality in OWL Range and Domain of a property More than one domain and range may be declared.   Special properties owl:TransitiveProperty   -  such as \has better grade than, \is taller than owl:SymmetricProperty -  such as \has  same grade as, \is sibling of
Example Property < owl:ObjectProperty rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#hasIngredient&quot;> < rdf:type rdf:resource =&quot;&owl;TransitiveProperty&quot;/> < rdfs:domain rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#Food&quot;/> < rdfs:range rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#Food&quot;/> </ owl:ObjectProperty >
More Ways To Define a Classes Union of classes( owl:unionof  element) A class Person is a union of classes Male and Female Intersection of classes( owl:intersectionof  elements) A class SpicyPizza is an intersection of Pizza and  Spicy Class Same way we can define class by taking compliment of other classes ( owl:complimentof   element ) Example < owl:Class rdf:ID =&quot;peopleAtUni&quot;> < owl:unionOf rdf:parseType =&quot;Collection&quot;> < owl:Class rdf:about =&quot;#staffMember&quot;/> < owl:Class rdf:about =&quot;#student&quot;/> </ owl:unionO f> </ owl:Class >
Research Issues in Ontology Engineering Content Acquisition Analysis and evaluation Maintenance  Ontology Merging
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(for e.g pizza selling agent for e-commerce website)
Evalution Approach Gold Standards: by comparing the ontology with a “gold standard”; Application-based: by using the ontology with an application and evaluating the results; Data-driven: by comparing the ontology with a source of data from the domain to be covered ; Assessment by domain experts
Structural Evaluation Method Class Match Measure Full Match & partial Match Density Measure n.o. of subclass,attribute,siblings etc Betweenness Measure Betweenness value More Central classes? Semantic Similarity Measure  calculates how close the classes that matches the search terms Min no. of links between two concepts
Ontology Maintenance Ontology merging Having two or more overlapping ontology, create a new one  Ontology mapping Create a mapping between ontologies  Versioning and evolution Compatibility between different versions of the same ontology Compatibility between versions of an ontology and instance data
Case Study : UMLS Ontology
UMLS Consists of…
Conclusion there is no single correct ontology for any domain.  Ontology design is a creative process and no two ontologies designed by different people would be the same. The potential applications of the ontology and the designer’s understanding and view of the domain will undoubtedly affect ontology design choices.  we can assess the quality of our ontology only by using it in applications for which we designed it.
Bibliography Baclawski, K., M. Kokar, P. Kogut, L. Hart, J. Smith, W. Holmes, J. Letkowski, and M. Aronson. 2001. “Extending UML to support ontology engineering for the semantic web.”  «UML» 2001—The Unified Modeling Language. Modeling Languages, Concepts, and Tools : 342–360. Booch, G., Rumbaugh, J. and Jacobson, I. (1997). The Unified Modeling Language user guide: Addison-Wesley. Braun, S., A. Schmidt, A. Walter, G. Nagypal, and V. Zacharias. 2007. Ontology maturing: a collaborative web 2.0 approach to ontology engineering. In  Proceedings of the Workshop on Social and Collaborative Construction of Structured Knowledge at the 16th International World Wide Web Conference (WWW 07), Banff, Canada . Cimiano, P., J. Völker, and R. Studer. 2006. “Ontologies on Demand? A Description of the State-of-the-Art, Applications, Challenges and Trends for Ontology Learning from Text.” Dellschaft, K., and S. Staab. 2008. Strategies for the evaluation of ontology learning. In  Proceeding of the 2008 conference on Ontology Learning and Population: Bridging the Gap between Text and Knowledge , 253–272. Guarino, N. 1997. “Understanding, building and using ontologies.”  International Journal of Human Computer Studies  46: 293–310. Guarino, N., and Istituto (Roma) Consiglio nazionale delle ricerc. 1998.  Formal ontology in information systems . Citeseer. Guarino, N., and P. Giaretta. 1995. “Ontologies and knowledge bases: Towards a terminological clarification.”  Towards Very Large Knowledge Bases Knowledge Building and Knowledge Sharing  1 (9): 25–32. Jarrar, M., J. Demey, and R. Meersman. 2003. “On using conceptual data modeling for ontology engineering.”  Journal on Data Semantics : 185–207.
Cont’d Maedche, A., and S. Staab. 2001. “Ontology learning for the semantic web.”  Intelligent Systems, IEEE  16 (2): 72–79. Natalya F. Noy, “Ontology Development 101: A Guide to Creating Your First Ontology.” National Library of Medicine and N. L. of Medicine, “UMLS Reference Manual,U.S. National Library of Medicine, National Institutes of Health, 2009. Protege (2000). The Protege Project. http://protege.stanford.edu Spyns, P., R. Meersman, and M. Jarrar. 2002. “Data modelling versus ontology engineering.”  ACM SIGMOD Record  31 (4): 12–17. Uschold, M. and Gruninger, M. (1996). Ontologies: Principles, Methods and Applications. Knowledge Engineering Review 11(2). Welty, C., and N. Guarino. 2001. “Supporting ontological analysis of taxonomic relationships.”  Data & Knowledge Engineering  39 (1): 51–74.
 

Ontology engineering

  • 1.
    ONTOLOGY ENGINEERING Group 14: Artificial Intelligence(Dr. Pushpak Bhattacharya) Aliabbas Petiwala Ajay Nandoriya Pramendra Singh Rajput
  • 2.
    Deciding and constructing Pizza Terminology to avoid Inconsistency Which Vegetarian Pizza is Least Spicy? A shared ONTOLOGY of Pizza Restaurant Menu Customer Mexican Vegetarian Pizza American Vegetarian Pizza Recipe
  • 3.
    Outline What is ontology Engineering? Ontology Engineering versus Object-Oriented Modeling Why develop an ontology? Developing an ontology Going deeper: Common problems and solutions Ontologies in the Semantic Web languages Current research issues in ontology engineering
  • 4.
    What Is “OntologyEngineering”? Ontology Engineering: Ontology engineering is a set of tasks related to the development of ontologies for a particular domain. Defining terms in the domain and relations among them Defining concepts in the domain (classes) Arranging the concepts in a hierarchy (subclass-superclass hierarchy) Defining which attributes and properties (slots) classes can have and constraints on their values Defining individuals and filling in property values Ontology Engineering analogous to OO Database Design?
  • 5.
    Ontology Engineering versus Object-Oriented Modeling An ontology reflects the structure of the world is often about structure of concepts Formal ontological classes are sets which can be defined in terms of other classes, attributes and associations Property is a general term for attributes and associations. Open World Assumption means that lack of knowledge of a fact does not immediately imply knowledge of the negation of a fact. An OO class structure reflects the structure of the data and code is usually about behavior (methods) Object-oriented classes are templates for constructing objects. Attributes and associations have different meanings. Closed World Assumption.
  • 6.
    Logic: Open versusClosed Open (monotonic) logic gives different answers to queries than a closed logic. Fact:Suppose that Americana is the only Pizza: Closed world: violates constraint Open world: Americana Pizza exists but its base is not known. Pizza hasBase PizzaBase
  • 7.
    Logic: Open versusClosed Open (monotonic) logic gives different answers to queries than a closed logic. Fact:ItalianPizza has bases CrispBase and HardBase: Closed world: violates constraint Open world: CrispBase and HardBase are same!. Pizza hasBase PizzaBase
  • 8.
    Axioms for OWLOntology An OWL ontology is a set of axioms Class Axioms: C ⊑ D, C ≡ D Role Axioms: R ⊑ S, Func(R), Trans(S) Individual Axioms: a:C, < a,b > :R  hasVertebra Animal Fish CanSwim ⊓ ⊓ Jellyfish Pomfret Moonjelly Ontology example Fish ⊑ Animal ⊓ CanSwim Jellyfish ⊑ Fish ⊓  hasVertebra Pomfret ⊑ Fish Moonjelly:Jellyfish
  • 9.
    Food Domain: PizzaOntology in Protege.
  • 10.
    Ontology Engineering ProcessAn iterative process: determine scope consider reuse enumerate terms define classes consider reuse enumerate terms define classes define properties create instances define classes define properties define constraints create instances define classes consider reuse define properties define constraints create instances
  • 11.
    Ontology Engineering ToolsProtégé , which: is a graphical ontology-development tool supports a rich knowledge model is open-source and freely available (http://protege.stanford.edu) Some other available tools: Ontolingua and Chimaera OntoEdit OilEd DOGMA DogmaModeler KAON OntoClean OnToContent HOZO
  • 12.
    Determine Domain andScope 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 )? Answers to these questions may change during the lifecycle determine scope consider reuse enumerate terms define classes define properties define constraints create instances
  • 13.
    Competency Questions Fordetermining scope Which Pizza characteristics should I consider when choosing a Pizza? Is Veg or Non Veg? Does Pizza go well with Ice Cream? Which is the best choice among Veg pizza . What kind of Pizza bases available? Pizzas from which countries are available? Which Pizza is the least spicy?
  • 14.
    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 General ontologies DMOZ (www.dmoz.org) WordNet ( www.cogsci.princeton.edu/~wn/) Domain-specific ontologies UMLS Semantic Net GO (Gene Ontology) ( www.geneontology.org) determine scope consider reuse enumerate terms define classes define properties define constraints create instances
  • 15.
    Enumerate Important TermsWhat 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
  • 16.
    Enumerating Terms -The Pizza Ontology Pizza, Cheese , Toppings , Mexican , Sauce , Pizza Base, Crispy…
  • 17.
    Define Classes andthe Class Hierarchy A class is a concept in the domain a class of Pizza a class of PizzaBase a class of Country A class is a collection of elements with similar properties Instances of classes VegSpicyPizza. consider reuse determine scope define classes define properties define constraints create instances enumerate terms
  • 18.
    Class Inheritance Classesusually 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
  • 19.
    Class Inheritance -Example Pizza is a subclass of Food VegetarianPizza is a subclass of Pizza SpicyPizza is a subclass of VegetarianPizza.
  • 20.
    Define Properties ofClasses – Slots Slots in a class definition describe attributes of instances of the class and relations to other instances Each pizza will have hasBase, hasTopping hasCountryOfOrigin. consider reuse determine scope define constraints create instances enumerate terms define classes define properties
  • 21.
    Properties (Slots) Typesof properties Simple and complex properties simple properties (attributes): contain primitive values (strings, numbers) complex properties: contain (or point to) other objects (e.g., a Pizza instance)
  • 22.
    Properties for theClass Pizza (in Protégé-2000)
  • 23.
    property and ClassInheritance A subclass inherits all the propertys from the superclass If a Pizza has a name and flavor, a AmericanPizza also has a name and flavor If a class has multiple superclasses, it inherits properties from all of them.
  • 24.
    Create Instances \IndividualsCreate an instance of a class The class becomes a direct type of the instance If concepts form a natural hierarchy, then we should represent them as classes Individual instances are the most specific concepts represented in a knowledge base. if we would like to maintain an inventory of pizzas in the restaurant then use individuals. Assign property values for the instance consider reuse determine scope create instances enumerate terms define classes define properties define constraints
  • 25.
    Avoiding Class CyclesDanger of multiple inheritance: cycles in the class hierarchy Classes A, B, and C have equivalent sets of instances By many definitions, A, B, and C are thus equivalent
  • 26.
    The Perfect FamilySize If a class has only one child, there may be a modeling problem Put It up: AmericanPizza ----  AmericanCreamPizza AmericanCreamPizza
  • 27.
    Single and PluralClass Names A “Pizza” is not a kind-of “Pizzas” Class names should be either all singular all plural
  • 28.
  • 29.
    Outline What is ontology Engineering? Ontology Engineering versus Object-Oriented Modeling Why develop an ontology? Step-By-Step: Developing an ontology Ontologies in the Semantic Web languages Current research issues in ontology engineering
  • 30.
    Ontologies and theSemantic Web Languages Most Semantic Web languages are designed explicitly for representing ontologies RDFS( Resource Description Framework Schema ) OWL(web ontology language) XML Schema Turtle Ontologies can also be express by ER diagram ,Class diagram, UML diagram
  • 31.
    Semantic Web Languages The languages differ in their Syntax We are not concerned with it here – An ontology is a conceptual representation .(Syntax Independent) Terminology Class-concept Instance-Individual Slot-property Expressivity What we can express in some languages, we cannot express in others
  • 32.
    The built-in vocabularyfor RDF schema/ OWL RDF Schema Specification 1.0 (http://www.w3.org/TR/2000/CR-rdf-schema-20000327/) Specification about the RDFS and OWL is available on the Web ,that provides the vocabulary for writing exact syntax
  • 33.
    RDFS \ OWLTerminology and Semantics Language vocabulary provides the elements for writing Classes and a class hierarchy All classes are instances of rdfs:Class element A class hierarchy is defined by rdfs:subClassOf element Instances of a class Defined by rdf:description element Properties Properties are local in RDFS and global in OWL Properties form a hierarchy, too ( rdfs:subPropertyOf ) element
  • 34.
    Example of RDFS syntax <rdfs:Class rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#AmericanPizza&quot;> < rdfs:label> Americana</ rdfs:label > < rdfs:subClassOf rdf:resource=&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#NamedPizza&quot;/> </ rdfs:Class > HERE rdfs:about – name of the subject the subject resource rdfs:label - a human-readable name for the subject
  • 35.
    0WL Itbuilds upon the RDFS specification. More expressive than RDFS Disjointness ( owl:disjointWith ) Equivalence ( owl: equivalentClass ) Also property are more expessive. Example showing OWL syntax < owl:Class rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#NonVegetarianPizza&quot;> < owl:disjointWith rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#VegetarianPizza&quot;/> < /owl:Class >
  • 36.
    Property Elements inRDFS/OWL Cardinality - can have Any property single, multiple ,min ,max values - We can define restriction on cardinality in OWL Range and Domain of a property More than one domain and range may be declared. Special properties owl:TransitiveProperty - such as \has better grade than, \is taller than owl:SymmetricProperty - such as \has same grade as, \is sibling of
  • 37.
    Example Property <owl:ObjectProperty rdf:about =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#hasIngredient&quot;> < rdf:type rdf:resource =&quot;&owl;TransitiveProperty&quot;/> < rdfs:domain rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#Food&quot;/> < rdfs:range rdf:resource =&quot;http://www.co-ode.org/ontologies/pizza/pizza.owl#Food&quot;/> </ owl:ObjectProperty >
  • 38.
    More Ways ToDefine a Classes Union of classes( owl:unionof element) A class Person is a union of classes Male and Female Intersection of classes( owl:intersectionof elements) A class SpicyPizza is an intersection of Pizza and Spicy Class Same way we can define class by taking compliment of other classes ( owl:complimentof element ) Example < owl:Class rdf:ID =&quot;peopleAtUni&quot;> < owl:unionOf rdf:parseType =&quot;Collection&quot;> < owl:Class rdf:about =&quot;#staffMember&quot;/> < owl:Class rdf:about =&quot;#student&quot;/> </ owl:unionO f> </ owl:Class >
  • 39.
    Research Issues inOntology Engineering Content Acquisition Analysis and evaluation Maintenance Ontology Merging
  • 40.
    Evaluation Oneof 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(for e.g pizza selling agent for e-commerce website)
  • 41.
    Evalution Approach GoldStandards: by comparing the ontology with a “gold standard”; Application-based: by using the ontology with an application and evaluating the results; Data-driven: by comparing the ontology with a source of data from the domain to be covered ; Assessment by domain experts
  • 42.
    Structural Evaluation MethodClass Match Measure Full Match & partial Match Density Measure n.o. of subclass,attribute,siblings etc Betweenness Measure Betweenness value More Central classes? Semantic Similarity Measure calculates how close the classes that matches the search terms Min no. of links between two concepts
  • 43.
    Ontology Maintenance Ontologymerging Having two or more overlapping ontology, create a new one Ontology mapping Create a mapping between ontologies Versioning and evolution Compatibility between different versions of the same ontology Compatibility between versions of an ontology and instance data
  • 44.
    Case Study :UMLS Ontology
  • 45.
  • 46.
    Conclusion there isno single correct ontology for any domain. Ontology design is a creative process and no two ontologies designed by different people would be the same. The potential applications of the ontology and the designer’s understanding and view of the domain will undoubtedly affect ontology design choices. we can assess the quality of our ontology only by using it in applications for which we designed it.
  • 47.
    Bibliography Baclawski, K.,M. Kokar, P. Kogut, L. Hart, J. Smith, W. Holmes, J. Letkowski, and M. Aronson. 2001. “Extending UML to support ontology engineering for the semantic web.” «UML» 2001—The Unified Modeling Language. Modeling Languages, Concepts, and Tools : 342–360. Booch, G., Rumbaugh, J. and Jacobson, I. (1997). The Unified Modeling Language user guide: Addison-Wesley. Braun, S., A. Schmidt, A. Walter, G. Nagypal, and V. Zacharias. 2007. Ontology maturing: a collaborative web 2.0 approach to ontology engineering. In Proceedings of the Workshop on Social and Collaborative Construction of Structured Knowledge at the 16th International World Wide Web Conference (WWW 07), Banff, Canada . Cimiano, P., J. Völker, and R. Studer. 2006. “Ontologies on Demand? A Description of the State-of-the-Art, Applications, Challenges and Trends for Ontology Learning from Text.” Dellschaft, K., and S. Staab. 2008. Strategies for the evaluation of ontology learning. In Proceeding of the 2008 conference on Ontology Learning and Population: Bridging the Gap between Text and Knowledge , 253–272. Guarino, N. 1997. “Understanding, building and using ontologies.” International Journal of Human Computer Studies 46: 293–310. Guarino, N., and Istituto (Roma) Consiglio nazionale delle ricerc. 1998. Formal ontology in information systems . Citeseer. Guarino, N., and P. Giaretta. 1995. “Ontologies and knowledge bases: Towards a terminological clarification.” Towards Very Large Knowledge Bases Knowledge Building and Knowledge Sharing 1 (9): 25–32. Jarrar, M., J. Demey, and R. Meersman. 2003. “On using conceptual data modeling for ontology engineering.” Journal on Data Semantics : 185–207.
  • 48.
    Cont’d Maedche, A.,and S. Staab. 2001. “Ontology learning for the semantic web.” Intelligent Systems, IEEE 16 (2): 72–79. Natalya F. Noy, “Ontology Development 101: A Guide to Creating Your First Ontology.” National Library of Medicine and N. L. of Medicine, “UMLS Reference Manual,U.S. National Library of Medicine, National Institutes of Health, 2009. Protege (2000). The Protege Project. http://protege.stanford.edu Spyns, P., R. Meersman, and M. Jarrar. 2002. “Data modelling versus ontology engineering.” ACM SIGMOD Record 31 (4): 12–17. Uschold, M. and Gruninger, M. (1996). Ontologies: Principles, Methods and Applications. Knowledge Engineering Review 11(2). Welty, C., and N. Guarino. 2001. “Supporting ontological analysis of taxonomic relationships.” Data & Knowledge Engineering 39 (1): 51–74.
  • 49.

Editor's Notes

  • #6 DL does not make the Unique Name Assumption (UNA) or the Closed World Assumption (CWA). Not having UNA means that two concepts with different names may be allowed by some inference to be shown to be equivalent. Not having CWA, or rather having the Open World Assumption (OWA) means that lack of knowledge of a fact does not immediately imply knowledge of the negation of a fact.
  • #8 Adv loosely coupled we can add information which is apparently inconsistent but the system resolves the inconsistencies
  • #9 An OWL ontology is a set of axioms which include classes axioms C is a subclass of D, or C is equivalent to D, role axioms R is a subrole of S, R is a functional role, S is a transitive role, and individual axioms, a is an individual of C, a participates in a R role with b. Here is an ontology example, fish is a sublcass of Animal and CanSwim, and fish is a subclass of animal and canswim…. Moonjelly is an individual of jellyfish.
  • #25 \\
  • #40 There are various problem which comes in picture while designing an efficient Ontology. We need to collect Data and information for creation of Ontology. W e need automated knowledge acquisition techniques like Linguistic techniques where ontology acquisition is done from text, Machine-learning which generate ontologies from structured documents (e.g., XML documents) Exploiting the Web structure which generate ontologies by crawling structured Web sites Knowledge-acquisition templates, the experts specify only part of the knowledge required There is possibility of duplication. so duplicate Data also should be removed at the time of acquisition as much as possible. After creation of Ontology, the effectiveness of Ontology should be analyzed and measured quantitatively. There is also need of regular update for Ontology to accommodate real world changes. Ontology merging is also an issue because of ambiguity.
  • #41 Measuring the effectiveness quantitatively is one of the hardest problems in ontology design. As we know, ontology is built on collection of data so it is subjective. However, we need to know how much better is our design compare to other ontology. The best way to evaluate ontology is to test with an application of that field.
  • #42 Now, Evaluation can be done by various approach, First one is Gold Standards. In this case, ontology is compared with standard resources like WordNet and accordingly measurement has been done. Second is Application Based, Designed Ontology is checked with application. For e.g. when an customer ask for particular pizza then what are the other pizza comes related to it. Data driven is similar to Gold standards but here the domain is fixed and limited. There is also a method in which ontology is judged by expertise
  • #43 There are some factors by which measurement is done. the factors are, The Class Match Measure (CMM) is meant to evaluate the coverage of an ontology for the given search terms. An ontology that contains all search terms will obviously score higher than partial matches. For example if searching for “Student” and “University”, then an ontology with two classes labeled exactly as the search terms will score higher in this measure than another ontology which contains partially matching classes, e.g. “University Building” and “PhD-Student”. Density Measure , When searching for a “good” representation of a specific concept, one would expect to find certain degree of detail related to that concept. This may include how well the concept is further specified (the number of subclasses), the number of attributes associated with that concept, number of siblings, etc. All this is taken into account in the Density Measure (DEM). DEM approximate the representational-density or information-content of classes and consequently the level of knowledge detail. The Betweenness Measure (BEM) calculates the betweenness value of each queried concept in the given ontology. Ontology where the classes are more central will receive a higher score. The Semantic Similarity Measure (SSM) calculates how close the classes that matches the search terms are in an ontology. SSM is measured from the minimum number of links that connects a pair of concepts. These links can be a relationships or object properties. These are quantitative measure. After getting all these score, Total score is obtain as weighted sum of all measure and based on that score, Ontology is ranked or evaluated.
  • #44 Ontology merging defines the act of bringing together two conceptually divergent ontologies. This is similar to work in database merging (schema matching). This can be done either manually, semi-automated or automated.  Manual ontology merging is extremely labor intensive and current research attempts to find semi or entirely automated techniques to merge ontologies. These techniques are statistically driven often taking into account similarity of concepts through semantic knowledge. Mapping is to relate two different ontology via virtual link. There is also need to update same ontology as per new information. so developed ontology should be compatible to accommodate such changes.