Table of Contents
Part I Basics
1. Knowledge Representation
1.1 Basic Concepts
1.2 Cognitive Science
1.3 Types of Human Knowledge
1.4 Knowledge Representation Techniques
1.4.1 Object–Attribute–Value Triplets
1.4.2 Uncertain Facts
1.4.3 Fuzzy Facts
1.4.4 Rules
1.4.5 Semantic networks
1.4.6 Frames
1.5 Knowledge Representation Languages
1.5.1 Logic-Based Representation Languages
1.5.2 Frame-Based Representation Languages
1.5.3 Rule-Based Representation Languages
1.5.4 Visual Languages for Knowledge Representation
1.5.5 Natural Languages and Knowledge Representation
1.6 Knowledge Engineering
1.7 Open Knowledge Base Connectivity (OKBC)
1.8 The Knowledge Level
2. Ontologies
2.1 Basic Concepts
2.1.1 Definitions
2.1.2 What Do Ontologies Look Like?
2.1.3 Why Ontologies?
2.1.4 Key Application Areas
2.1.5 Examples
2.2 Ontological Engineering
2.2.1 Ontology Development Tools
2.2.2 Ontology Development Methodologies
2.3 Applications
2.3.1 Magpie
2.3.2 Briefing Associate
2.3.3 Quickstep and Foxtrot
2.4 Advanced Topics
2.4.1 Metadata, Metamodeling, and Ontologies
2.4.2 Standard Upper Ontology
2.4.3 Ontological Level
3. The Semantic Web
3.1 Rationale
3.2 Semantic Web Languages
3.2.1 XML and XML Schema
3.2.2 RDF and RDF Schema
3.2.3 DAML+OIL
3.2.4 OWL
3.2.5 SPARQL
3.3 The Role of Ontologies
3.4 Semantic Markup
3.5 Semantic Web Services
3.6 Open Issues
3.7 Quotations
4. The Model Driven Architecture (MDA)
4.1 Models and Metamodels
4.2 Platform-Independent Models
4.3 Four-Layer Architecture
4.4 The Meta-Object Facility
4.5 Specific MDA Metamodels
4.5.1 Unified Modeling Language
4.5.2 Common Warehouse Metamodel (CWM)
4.5.3 Ontology Definition Metamodel
4.6 UML Profiles
4.6.1 Examples of UML Profiles
4.7 An XML for Sharing MDA Artifacts
4.8 The Need for Modeling Spaces
5. Modeling Spaces
5.1 Modeling the Real World
5.2 The Real World, Models, and Metamodels
5.3 The Essentials of Modeling Spaces
5.4 Modeling Spaces Illuminated
5.5 A Touch of RDF(S) and MOF Modeling Spaces
5.6 A Touch of the Semantic Web and MDA Technical Spaces
5.7 Instead
of Conclusions
Part II The Model Driven Architecture and Ontologies
6. Software Engineering Approaches to Ontology Development
6.1 A Brief History of Ontology Modeling
6.1.1 Networked Knowledge Representation and Exchange Using UML and RDF
6.1.2 Extending the Unified Modeling Language for Ontology Development
6.1.3 The Unified Ontology Language
6.1.4 UML for the Semantic Web:
Transformation-Based Approach
6.1.5 The AIFB OWL DL Metamodel
6.1.6 The GOOD OLD AI ODM Proposal
6.2 Ontology Development Tools Based on Software Engineering Techniques
6.2.1 Protégé
6.2.2 DUET (DAML UML Enhanced Tool)
6.2.3 An Ontology Tool for
IBM Rational Rose UML Models
6.2.4 Visual Ontology Modeler (VOM)
6.3 Summary of Relations Between UML and Ontologies
6.3.1 Summary of Approaches and Tools for Software Engineering-Based Ontology Development
6.3.2 Summary of Differences Between UML and Ontology Languages
6.3.3 Future Development
7. The MDA-Based Ontology Infrastructure
7.1 Motivation
7.2 Overview
7.3 Bridging RDF(S) and MOF
7.4 Design Rationale for the Ontology UML Profile
8. The Ontology Definition Metamodel (ODM)
8.1 ODM Metamodels
8.2 A Few Issues Regarding the Revised Joint Submission
8.3 The Resource Description Framework Schema (RDFS) metamodel
8.4 The Web Ontology Language (OWL) Metamodel
9. The Ontology UML Profile
9.1 Classes and Individuals in Ontologies
9.2 Properties of Ontologies
9.3 Statements
9.4 Different Versions of the Ontology UML Profile
10. Mappings of MDA-Based Languages and Ontologies
10.1 Relations Between Modeling Spaces
10.2 Transformations Between Modeling Spaces
10.3 Example of an Implementation: an XSLT-Based Approach
10.3.1 Implementation Details
10.3.2 Transformation Example
10.3.3 Practical Experience
10.3.4 Discussion
Part III Applications
11. Using UML Tools for Ontology Modeling
11.1 MagicDraw
11.1.1 Starting with MagicDraw
11.1.2 Things You Should Know when Working with UML Profiles
11.1.3 Creating a New Ontology
11.1.4 Working with Ontology Classes
11.1.5 Working with Ontology Properties
11.1.6 Working with Individuals
11.1.7 Working with Statements
11.2 Poseidon for UML
11.2.1 Modeling Ontology Classes in Poseidon
11.2.2 Modeling Ontology Individuals and Statements in Poseidon
11.3 Sharing UML Models Between UML tools and Protégé Using the UML Back End
12. An MDA Based Ontology Platform: AIR
12.1 Motivation
12.2 The Basic Idea
12.3 Metamodel – the Conceptual Building Block of AIR
12.4 The AIR Metadata Repository
12.5 The AIR Workbench
12.6 The Role of XML Technologies
12.7 Possibilities
13. Examples of Ontology
13.1 Petri Net Ontology
13.1.1 Organization of the Petri Net Ontology
13.1.2 The Core Petri Net Ontology in the Ontology UML Profile
13.1.3 Example of an Extension: Upgraded Petri Nets
13.2 Educational Ontologies
13.2.1 Conceptual Solution
13.2.2 Mapping the Conceptual Model to Ontologies
References
Index