1 / 91

Introduction to Ontology Development and Tools Part I: First Steps in Ontology Development

Introduction to Ontology Development and Tools Part I: First Steps in Ontology Development. ICBO 2011, Buffalo, July 26, 2011 Mathias Brochhausen 1 & Amanda Hicks 2 1 UAMS, Little Rock, AR 2 University at Buffalo, Buffalo, NY. Contents. Introduction Terminological considerations

anitra
Télécharger la présentation

Introduction to Ontology Development and Tools Part I: First Steps in Ontology Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Ontology Development and ToolsPart I: First Steps in Ontology Development • ICBO 2011, Buffalo, July 26, 2011 • Mathias Brochhausen1 & Amanda Hicks2 • 1 UAMS, Little Rock, AR • 2 University at Buffalo, Buffalo, NY

  2. Contents • Introduction • Terminological considerations • Creating the hierarchy of classes • Creating relations • (Instances) • Creating restrictions on classes

  3. I. Introduction • What is Protégé? • We are concerned here with ‟Protégé-OWL editor”. • ‟The Protégé-OWL editor enables users to build ontologies for the Semantic Web, in particular in the W3C‘s Web Ontology Language (OWL)”.

  4. I. Introduction • Keep in mind that Protégé is... • ...not a programming language. • ...only a tool. It will not prevent you from making mistakes. • Notice that we will be referring to Protégé 4.1 in this and the following hands-on exercise. 4

  5. II. Terminological considerations • OWL/Protégé terminology • Preferable terminology

  6. IIa.OWL/Protégé terminology • Classes: ‟OWL classes are interpreted as sets.” • Primitive Classes: ‟Classes that only have necessary conditions”; Example: Animal, Cat… • Defined Classes: ‟A class that has at least one necessary and sufficient condition”; Example: All things that are biped and lack feathers. 6

  7. II.a OWL/Protégé terminology • Properties: ‟binary relation between individuals” • Object Properties; Examples: is_part_of, is_kissing • Datatype Properties; Examples: has_DateValue, has StringValue 7

  8. II.a OWL/Protégé terminology Individuals: ‟represent objects in the domain we are interested in”. Examples: me, the Pentagon in Washington, Jane Doe‘s lung. 8

  9. II.b Preferable terminology • Instance: An individual or particular which instantiates a universal; Examples: me, the Pentagon in Washington, Jane Doe‘s lung • Universal: A universal is something that is shared in common by all those particulars which are its instances, Examples: Animal, Human being, Building, Human lung 9

  10. II.b Preferable terminology • Attributive Collection: An attributive collection is a collection (a set) of particulars which share a common property; Examples: All patients suffering from breast cancer in the Mayo Clinic in 2009, all humans who have been tested positive for HIV, all bacteria in the petri dish over there. 10

  11. II.b Preferable terminology • Relation: Relations exist mutually between universals and universals, between universals and particulars, and between particulars and particulars; Examples: is_subtype_to, is_part_of, is_instance_of, is_kissing 11

  12. II.b Preferable terminology • However,... • Throughout the presentation I will say “classes” to keep the creation of the hierachy free from possible ontological issues about universals vs. attributive collections. 12

  13. III. Creating the hierarchy of classes • Why work with an Upper Ontology? • Importing another ontology (e.g. an Upper Ontology) • Basic Formal Ontology-a primer • What is represented by the hierarchy? • How to create a class hierarchy? • Changing OWL class names • Disjointness • Exhaustiveness • Rigidity

  14. III.a Why work with an Upper Ontology • Upper Ontologies… • ...support consistency. • ...foster harmonization and modularization. • …help you to get into the right frame of mind.

  15. III.a Why work with an Upper Ontology • Some Upper Ontologies • Basic Formal Ontology (BFO) • Descriptive Ontology for Linguistic and Cognitive Engineering (DOLCE) • Suggested Upper Merged Ontology (SUMO)

  16. III.a Why work with an Upper Ontology • How to import Upper Ontologies (or other pre-existent ontologies) into our ontology project?

  17. Importing another ontology (e.g. an Upper Ontology)

  18. BFO - Entities Continuant - a heart, the color of a tomato, the mass of a cloud Occurrent - the life of an organism, a surgical operation, a conversation a heart, a table, a collection of stones

  19. BFO - Continuants Dependent Continuant - the color of a tomato, the mass of a cloud Independent Continuant - a heart, a chair, the Northern Hemisphere of the Earth Spatial Region - Dimensions Zero - Three

  20. BFO - Dependent Continuants Generically Dependent Continuant - a PDF file, a musical score Specifically Dependent Continuant - the color of a tomato, the disposition of fish to decay, the role of being a doctor

  21. BFO - Specifically Dependent Continuants Quality - the color of a tomato, the mass of a cloud Realizable Entity - Disposition - fragility, solubility Function - of the heart, to pump blood; of the a computer, to compute. Role - being a doctor, being pet, being student

  22. BFO - Independent Continuants Material Entity - a heart, a table, a collection of stones Object Boundary - end points of a line, the surface of the skin Site - A particular room, Maria’s nostril

  23. BFO - Material Entities Fiat Object Part - the upper lobe of the left lung, The Northern Hemisphere Object - a heart, a chair, a lung, an apple Object Aggregate - a collection of bacteria, a collection of stones

  24. BFO - Occurents Processual Entity - a conversation, the life of an organism Spatiotemporal Region - any part of space-time Temporal Region - any interval of time

  25. BFO - Processual Entities Fiat Process Part - The worst part of a rainstorm, the middle of a meal Proccess - sleeping, cell division, Process Aggregate - chewing gum and walking at the same time. Process Boundary - death Processual Context - a war is the context of battles

  26. BFO - Spatiotemporal Regions Connected Spatiotemporal Region - spatiotemporal region of the life of an organism Spatiotemporal Instant - the spatiotemporal location of an instant of an organisms life Spatiotemporal Interval - the spatiotemporal region of the first year of an infant’s life Scattered Spatiotemporal Region - the spatiotemporal region occupied by all games of the World Cup. Temporal Regions have a parallel hierarchy.

  27. III.b What is represented by the hierarchy? Chordate Mammal Dog Labrador

  28. III.b What is represented by the hierarchy? • is_a relation • The Protégé OWL Editor is based around a is_a-hierarchy of the entities in a given domain. • Start with thinking about your domain and its is_a-hierachy, draw a sketch. • Make sure to use formal is_a relations (subclass relations) exclusively to build your hierarchy.

  29. III.b What is represented by the hierarchy? • Incorrect usage of is_a, Example 1 Travel Cruise Liner Flight Car Rental

  30. III.a What is represented by the hierarchy? • Incorrect usage of is_a, Example 2 Organism Animal Other Organism Groupings Bacteria

  31. 2. What is represented by the hierarchy? • Subclass Relation (in OWL): • A ⊆ B ⇔ ∀x ∈ A : x ∈ B • Proper Subclass (in Set Theory): • A ⊂ B ⇔ A ⊆ B ∧ A ≠ B

  32. III.c How to create a class hierarchy?

  33. III.c How to create a class hierarchy? • A shortcut to create a hierarchy from a list • You might find yourself in a situation where you have a list of terms referring to classes to be represented in your ontology. • Example:

  34. III.c How do we create a class hierarchy?

  35. III.c How do we create a class hierarchy?

  36. III.c How do we create a class hierarchy?

  37. III.c How do we create a class hierarchy?

  38. III.c How do we create a class hierarchy?

  39. III.d Changing OWL class names • Basically, there are two things that we need to keep separate: • URI/IRI • Class label

  40. III.d Changing OWL class names • URI/IRI (Uniform Resource Identifier/Internationalized Resource Identifier) • The full URI consists of a locator and a name (e.g. the class name). • Every URI is unique (➯ no classes with the same URI allowed within one ontology). • Every class has exactly one URI.

  41. III.d Changing OWL class names

  42. III.d Changing OWL class names

  43. III.d Changing OWL class names • rdfs:label • String value • It is possible (though not advisable) to annotate two classes in one ontology with the same label. • One class can have any number of labels (synonyms, terms in multiple languages).

  44. III.d Changing OWL class names

  45. III.d Changing OWL class names

  46. III.d Changing OWL class names

  47. III.e Disjointness • No member of A is a member of B. • A ∩ B = ∅ • A ∩ B ⇔ (∀x) (x ∈ A & x ∉ B) • For universals or types: No instance of A is an instance of B. • When building a taxonomy in OWL disjointness needs to be explicitly stated (Open World Assumption)!

  48. III.e Disjointness

More Related