The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for various domains: the nouns representing classes of objects and the verbs representing relations between the objects.

Ontologies resemble class hierarchies in object-oriented programming but there are several critical differences. Class hierarchies are meant to represent structures used in source code that evolve fairly slowly (perhaps with monthly revisions) whereas ontologies are meant to represent information on the Internet and are expected to be evolving almost constantly. Similarly, ontologies are typically far more flexible as they are meant to represent information on the Internet coming from all sorts of heterogeneous data sources. Class hierarchies on the other hand tend to be fairly static and rely on far less diverse and more structured sources of data such as corporate databases.

The OWL languages are characterized by formal semantics. They are built upon the World Wide Web Consortium's (W3C) standard for objects called the Resource Description Framework (RDF). OWL and RDF have attracted significant academic, medical and commercial interest.

In October 2007, a new W3C working group was started to extend OWL with several new features as proposed in the OWL 1.1 member submission. W3C announced the new version of OWL on 27 October 2009. This new version, called OWL 2, soon found its way into semantic editors such as Protégé and semantic reasoners such as Pellet, RacerPro, FaCT++ and HermiT.

The OWL family contains many species, serializations, syntaxes and specifications with similar names. OWL and OWL2 are used to refer to the 2004 and 2009 specifications, respectively. Full species names will be used, including specification version (for example, OWL2 EL). When referring more generally, OWL Family will be used.

History

Early ontology languages

There is a long history of ontological development in philosophy and computer science. Since the 1990s, a number of research efforts have explored how the idea of knowledge representation (KR) from artificial intelligence (AI) could be made useful on the World Wide Web. These included languages based on HTML (called SHOE), based on XML (called XOL, later OIL), and various frame-based KR languages and knowledge acquisition approaches.

Ontology languages for the web

In 2000 in the United States, DARPA started development of DAML led by James Hendler.

In March 2001, the Joint EU/US Committee on Agent Markup Languages decided that DAML should be merged with OIL.

DAML+OIL is a particularly major influence on OWL; OWL's design was specifically based on DAML+OIL.

Semantic web standards

RDF schema

In the late 1990s, the World Wide Web Consortium (W3C) Metadata Activity started work on RDF Schema (RDFS), a language for RDF vocabulary sharing. The RDF became a W3C Recommendation in February 1999, and RDFS a Candidate Recommendation in March 2000.

Though RDFS provides some support for ontology specification, the need for a more expressive ontology language had become clear.

Web-Ontology Working Group

OWL was chosen as an easily pronounced acronym that would yield good logos, suggest wisdom, and honor William A. Martin's One World Language knowledge representation project from the 1970s.

Adoption

A 2006 survey of ontologies available on the web collected 688 OWL ontologies. Of these, 199 were OWL Lite, 149 were OWL DL and 337 OWL Full (by syntax). They found that 19 ontologies had in excess of 2,000 classes, and that 6 had more than 10,000. The same survey collected 587 RDFS vocabularies.

Ontologies

The data described by an ontology in the OWL family is interpreted as a set of "individuals" and a set of "property assertions" which relate these individuals to each other. An ontology consists of a set of axioms which place constraints on sets of individuals (called "classes") and the types of relationships permitted between them. These axioms provide semantics by allowing systems to infer additional information based on the data explicitly provided. A full introduction to the expressive power of the OWL is provided in the W3C's OWL Guide.

OWL ontologies can import other ontologies, adding information from the imported ontology to the current ontology.

  • OWL2 EL is a fragment that has polynomial time reasoning complexity. It is based on the description logic <math>\mathcal{EL}</math>.
  • OWL2 QL is designed to enable easier access and query to data stored in databases. It is based on the DL-Lite family of description logics.
  • OWL2 RL is a rule subset of OWL 2 (the acronym "RL" stands for "Rule Language"). It is based on the so-called description logic programs (DLP). Later, a logic called <math>\mathcal{RL}</math> corresponding to this profile has been introduced.

Syntax

The OWL family of languages supports a variety of syntaxes. It is useful to distinguish high level syntaxes aimed at specification from exchange syntaxes more suitable for general use.

High level

These are close to the ontology structure of languages in the OWL family.

OWL abstract syntax

High level syntax is used to specify the OWL ontology structure and semantics.

The OWL abstract syntax presents an ontology as a sequence of annotations, axioms and facts. Annotations carry machine and human oriented meta-data. Information about the classes, properties and individuals that compose the ontology is contained in axioms and facts only.

Each class, property and individual is either anonymous or identified by an URI reference. Facts state data either about an individual or about a pair of individual identifiers (that the objects identified are distinct or the same). Axioms specify the characteristics of classes and properties. This style is similar to frame languages, and quite dissimilar to well known syntaxes for DLs and Resource Description Framework (RDF).

OWL2 functional syntax

This syntax closely follows the structure of an OWL2 ontology. It is used by OWL2 to specify semantics, mappings to exchange syntaxes and profiles.

Exchange syntaxes

RDF syntaxes

Syntactic mappings into RDF are specified

for languages in the OWL family. Several RDF serialization formats have been devised. Each leads to a syntax for languages in the OWL family through this mapping. RDF/XML is normative.

Manchester Syntax

The Manchester Syntax is a compact, human readable syntax with a style close to frame languages.

Variations are available for OWL and OWL2. Not all OWL and OWL2 ontologies can be expressed in this syntax.

Examples

  • The W3C OWL 2 Web Ontology Language provides syntax examples.

Tea ontology

Consider an ontology for tea based on a Tea class. First, an ontology identifier is needed. Every OWL ontology must be identified by a URI (<nowiki>http://www.example.org/tea.owl</nowiki>, say). This example provides a sense of the syntax. To save space below, preambles and prefix definitions have been skipped.

;OWL2 Functional Syntax: <syntaxhighlight lang="turtle">

Ontology(<http://example.org/tea.owl>

Declaration( Class( :Tea ) )

)

</syntaxhighlight>

;OWL2 XML Syntax: <syntaxhighlight lang="xml">

<Ontology ontologyIRI="http://example.org/tea.owl" ...>

<Prefix name="owl" IRI="http://www.w3.org/2002/07/owl#"/>

<Declaration>

<Class IRI="Tea"/>

</Declaration>

</Ontology>

</syntaxhighlight>

;Manchester Syntax: <syntaxhighlight lang="turtle">

Ontology: <http://example.org/tea.owl>

Class: Tea

</syntaxhighlight>

;RDF/XML syntax:<syntaxhighlight lang="xml">

<rdf:RDF ...>

<owl:Ontology rdf:about="http://www.example.org/tea.owl"/>

<owl:Class rdf:about="#Tea"/>

</rdf:RDF>

</syntaxhighlight>

;RDF/Turtle: <syntaxhighlight lang="turtle">

<http://example.org/tea.owl> rdf:type owl:Ontology .

:Tea rdf:type owl:Class .

</syntaxhighlight>

Semantics

Relation to description logics

OWL classes correspond to description logic (DL) concepts, OWL properties to DL roles, while individuals are called the same way in both the OWL and the DL terminology.

Early attempts to build large ontologies were plagued by a lack of clear definitions. Members of the OWL family have model theoretic formal semantics, and so have strong logical foundations.

Description logics are a family of logics that are decidable fragments of first-order logic with attractive and well-understood computational properties. OWL DL and OWL Lite semantics are based on DLs.

They combine a syntax for describing and exchanging ontologies, and formal semantics that gives them meaning. For example, OWL DL corresponds to the <math>\mathcal{SHOIN}^\mathcal{(D)}</math> description logic, while OWL 2 corresponds to the <math>\mathcal{SROIQ}^\mathcal{(D)}</math> logic. Sound, complete, terminating reasoners (i.e. systems which are guaranteed to derive every consequence of the knowledge in an ontology) exist for these DLs.

Relation to RDFS

OWL Full is intended to be compatible with RDF Schema (RDFS), and to be capable of augmenting the meanings of existing Resource Description Framework (RDF) vocabulary. A model theory describes the formal semantics for

RDF. This interpretation provides the meaning of RDF and RDFS vocabulary. So, the meaning of OWL Full ontologies are defined by extension of the RDFS meaning, and OWL Full is a semantic extension of RDF.

Open world assumption

The languages in the OWL family use the open world assumption. Under the open world assumption, if a statement cannot be proven to be true with current knowledge, we cannot draw the conclusion that the statement is false.

Contrast to other languages

A relational database consists of sets of tuples with the same attributes. SQL is a query and management language for relational databases. Prolog is a logical programming language. Both use the closed world assumption.

Public ontologies

Libraries

Biomedical

  • OBO Foundry
  • NCBO BioPortal
  • NCI Enterprise Vocabulary Services

Standards

  • Suggested Upper Merged Ontology (SUMO)
  • TDWG
  • PROV-O, the ontology version of the W3C's PROV-DM
  • Basic Formal Ontology (BFO)
  • European Materials Modelling Ontology (EMMO)

Browsers

The following tools include public ontology browsers:

  • Protégé OWL
  • Swoogle

Limitations

  • No direct language support for n-ary relationships. For example, modelers may wish to describe the qualities of a relation, to relate more than 2 individuals or to relate an individual to a list. This cannot be done within OWL. They may need to adopt a pattern instead which encodes the meaning outside the formal semantics.

See also

  • DOAC
  • , a different standard for the Unified Modeling Language (UML)
  • , a featured allowed by OWL to represent knowledge
  • , Simple Semantic Web Architecture and Protocol
  • , Shapes and Constraints Language for RDF

References

Further reading