2. Ontology Language vs. Ontology Design
• Now you know everything about OWL and
RDF!
• You can create your ontology and check its
consistency, perform classification, query it…
• …this is great, but …
4. What we can do with OWL
• Logical consistency is not the main problem
– e.g. owl:sameAs can be wrongly used and still we
can have consistency
• Why knowing OWL is not enough?
5. Ontology Language vs. ontology design
• Having knowledge of language constructs does not
mean being able to use it in a way that best fit your
purposes i.e., requirements
• OWL gives you logical language constructs, but does not
give you explicit guidelines on how to use them in order
to solve your tasks
• Lessons from other engineering disciplines
– Software design patterns
– Data model patterns
– Architectural patterns
6. Solutions?
• Reusable solutions, called Ontology Design
Patterns, help reducing arbitrariness of design
• Experiments shows that using ODPs
– Reduces mistakes in ontologies
– Improves learning design practices
– Help detecting uncovered requirements
– Improves quality of produced ontologies
7. Ontology Design Patterns
An ontology design
pattern is a reusable
successful solution
to a recurrent
modeling problem
8. Ontology design patterns
• Small ontologies or • Components supported by
ontology templates with specific functionalities
explicit documentation of – selection, matching,
design rationales composition, etc.
• Implemented in
repositories, registries,
catalogues, open
discussion and evaluation
forums, and in new-
generation ontology
design tools
– ontologydesignpattern.org
– ODP and Watson APIs
– NeOn XD Tools Plugin
– etc.
8
10. N-ary relation
• Chad Smith was the drum player of Red Hot
Chili Peppers when they recorded their album
Stadium Arcadium from September 2004 to
December 2005.
• A person plays a certain role in a band during
an album recording, taking place during a
certain time interval
• PlaySituation(Person, MusicianRole, Band, Album,
TimeInterval)
13. Transitive Reduction
• I want to represent that a computer is
composed of several parts
– part of – transitive property
• I also want to represent that each part can
have “direct” components
– e.g. the CPU is a direct component of a
motherboard
• A CPU is a direct component of a
motherboard, hence it is part of a computer,
but it is not its “direct” component
14. Parthood examples
• The CPU is part of the motherboard
• The motherboard is part of the computer
partOf
partOf
15. Parthood examples
• The CPU is direct part of the motherboard
• The motherboard is part of the computer
partOf
directPartOf
16. Parthood examples
• The CPU is part of the motherboard
• The motherboard is part of the computer
partOf
directPartOf
partOf
partOf
17. Parthood examples
• The CPU is direct part of the motherboard
• The motherboard is part of the computer
partOf
directPartOf
partOf
directPartOf
partOf
20. Additional material
and references
• ODP portal training area
– http://ontologydesignpatterns.org/wiki/Training:Main
• Aldo Gangemi: Ontology Design Patterns for Semantic Web
Content. International Semantic Web Conference 2005:
262-276
• Valentina Presutti, Aldo Gangemi: Content Ontology Design
Patterns as Practical Building Blocks for Web Ontologies. ER
2008: 128-141
• Natasha Noy and Alan Rector. Defining N-ary Relations on the
Semantic Web. W3C Working Group Note 12 April 2006.
http://www.w3.org/TR/swbp-n-aryRelations/
• Eva Blomqvist, Valentina Presutti, Enrico Daga, Aldo
Gangemi: Experimenting with eXtreme Design. EKAW 2010:
120-134