Semantic Web and Linked Data


Ontology Definition in RDF and OWL

For an ontology to be usable in linked data it needs to have a machine-readable definition using the W3C semantic web standards. Ontology definitions generally use the Web Ontology Language, which uses the acronym OWL. Some features of the base language, RDF, may also be used. OWL is known to be a very complex language, but there are some basics of Owl that are commonly used because they are common metadata concepts.

Classes and Properties

A common way to organize knowledge is to organize the things of your metadata into classes. For example, a pet database may organize its universe into birds, dogs, and cats. Within each of these categories there would be specific properties. Birds may have properties like size and feather color; dogs and cats could both have size and break and fur color. Classes help your organize your metadata universe, and properties are the specific things that you will say about the specific items you describe with your metadata.

You can have sub-classes and sub-properties. In a business database you may have two kinds of addresses for customers: business address and home address. Each of these could be a class, with properties. Because they are both types of address, you could also have a more general class called "address" and each of these would be a sub-property of address. An example using properties would be to declare a general property called "title" and sub-properties for special title types like "translated title" or "alternate title." The more specific title types will be used in detailed metadata, but the general type can be used when more specific information about the type of title is not known.

Whle it seems entirely logical to organize your metadata into a hierarchy of classes and properties, this structural organization can also be a limiting factor in how your metadata is created and used. Only those relationships that serve the functionality of your metadata should be defined.

One important aspect of creating a hierarchy of classes and properties is that this mechanism allows you to create links between your ontology terms and other terms in the linked data space.

linked titles

In this example, some specific title types have been linked to the very general Dublin Core property that simply means "title." This linked data, because it is expressed in a machine-reading form in OWL, can be used by programs that are gathering data in the linked data space. Although these programs may not know about the more specific properties, they can simply treat the data as a Dublin Core "title," which is one of the most commonly used properties in linked data.

Other Features of OWL

Classes and properties, and the hierarchies that may link them, are the most commonly used features of OWL. Beyond that, OWL becomes increasingly complex: it allows you to make statements about relationships between classes, such as to say that no "thing" can belong to two opposing classes (such as "dead" and "alive", "male" and "female", "real" and "imaginary"). It can define that there is a reciprocal relationship between two things, such that if X is bigger than Y, then Y is smaller than X. It can also be used to define the type of data that can be used when one creates the actual metadata: a property of "date of birth" can be required to take a standard date format. And much more.

And important point about OWL is that it provides semantics for relationships between defined things in the linked data space, but it does not enforce those semantics. It informs reasoning, although reasoning programs will not draw proper conclusions if the data is inconsistent with the OWL definitions.