« Another great XML Summer School in Oxford | Main | Getting started with Subversion »

Some great W3C explanations of basic ontology concepts

Highlights from the OWL Use Cases and Requirements

While reading the W3C Recommendation OWL Use Cases and Requirements, I was surprised at how many nice, succinct explanations of basic OWL and ontology-related concepts it had, so I thought I'd reproduce some highlights here. For example, take its definition of an ontology:

An ontology formally defines a common set of terms that are used to describe and represent a domain...An ontology defines the terms used to describe and represent an area of knowledge.

What the hell is a conceptualization?

The most popular definition of ontology is "a formalization of a conceptualization", as if the readers are going to sit back and say "OK! Formalization! Conceptualization! Got it! All set here!", except that they're really thinking "What the hell is a conceptualization?" I much prefer the OWL Use Cases explanation, which while not being as "formal", at least explains what's going on.

Here are some more nice quotes from the Use Cases document, arranged as a fake FAQ:

Why would anyone use an ontology?

Ontologies are used by people, databases, and applications that need to share domain information (a domain is just a specific subject area or area of knowledge, like medicine, tool manufacturing, real estate, automobile repair, financial management, etc.). Ontologies include computer-usable definitions of basic concepts in the domain and the relationships among them...Ontologies can prove very useful for a community as a way of structuring and defining the meaning of the metadata terms that are currently being collected and standardized.

I keep seeing the word "ontology" used to describe different things. What's up with that?

(note that here and throughout this document, [the] definition [of ontology] is not used in the technical sense understood by logicians)... The word ontology has been used to describe artifacts with different degrees of structure. These range from simple taxonomies (such as the Yahoo hierarchy), to metadata schemes (such as the Dublin Core), to logical theories.

What is the Semantic Web, and where do ontologies fit in?

The Semantic Web is a vision for the future of the Web in which information is given explicit meaning, making it easier for machines to automatically process and integrate information available on the Web. The Semantic Web will build on XML's ability to define customized tagging schemes and RDF's flexible approach to representing data. The next element required for the Semantic Web is a web ontology language which can formally describe the semantics of classes and properties used in web documents. In order for machines to perform useful reasoning tasks on these documents, the language must go beyond the basic semantics of RDF Schema.

How can OWL do this?

The Web Ontology Working Group charter tasks the group to produce this more expressive semantics and to specify mechanisms by which the language can provide "more complex relationships between entities including: means to limit the properties of classes with respect to number and type, means to infer that items with various properties are members of a particular class, a well-defined model of property inheritance, and similar semantic extensions to the base languages."

The Semantic Web needs ontologies with a significant degree of structure. These need to specify descriptions for the following kinds of concepts:

  • Classes (general things) in the many domains of interest

  • The relationships that can exist among things

  • The properties (or attributes) those things may have

I don't know much about RDF Schema. What does it let you do, and what does OWL add?

With RDF Schema, one can define classes that may have multiple subclasses and super classes, and can define properties, which may have sub properties, domains, and ranges. In this sense, RDF Schema is a simple ontology language. However, in order to achieve interoperation between numerous, autonomously developed and managed schemas, richer semantics are needed. For example, RDF Schema cannot specify that the Person and Car classes are disjoint, or that a string quartet has exactly four musicians as members.

The whole Uses Cases document is worth checking out.


(Note: I usually close comments for an entry a few weeks after posting it to avoid comment spam.)

I'm don't know much (yet) about OWL or RDF, but I would imagine--in addition to the semantic web needing defined Classes, Relationships (Connections), and Properties (Attributes)--that it will also benefit from having Methods (or functions). Essentially, when the structural description of knowledge domains approach a more dynamic programic / computation element--we will be establishing a "Web 3.0" framework for brining rich semantics into the simulation worlds (virtual world arenas). Imagine an ontological knowledge domain (or taxonomy) for arborology (the study of trees). In a virtual environment, actual landscapes can be generated and informed (as an intersection of multiple ontologies). We may even find that other normally unrelated information ontologies with similar structures (or methodical structures) can borrow or interface with a "tree" ontology as a good fit for information visualization. In this way, virtual simulation becomes a most nuanced and dynamic way of communication.

have classes,

It's really more about open data than a large, distributed OO system, which people have tried to do for years without success. By making lots of documented data available, people can then define whatever methods they want around that data to build their applications, and other people can define other methods instead of having everyone work around the same methods defined with the data.