Paul Alexander

Inference Engines

Inference engines, also known as semantic reasoners or reasoning engines, provide the technological glue that allows computer mediation to take place. Inferencing is the process where computers draw connections between pieces of data or metadata that have been previously described by a human. In the semantic web, these data points generally reside in an ontology. Inferencing is used in other areas of computer science as well, though generally in more limited and less distributed data sets.

Software Libraries

There are many commercial and open source software libraries and APIs for working with XML, RDF, and OWL technologies. This allows you to easily incorporate their use in your applications or develop tools that leverage semantic technology in your particular domain. Below, we briefly describe three of the many software libraries available and present resources for discovering others. All information is current as of last publication (see citation).

Storage and Access Fundamentals

The most basic way to store and access ontological information is by using regular XML files written using RDF and OWL syntax. These files can be stored on a computer that you access locally or they can be made accessible to others by hosting them on a public Web server. OWL files are commonly used and can be opened and saved by editing programs such as Protege and TopBraid.

Ontology Standards

Ontologies written using the Web Ontology Language are built on a set of standards that are developed by an international consortium known as the World Wide Web Consortium (W3C). The W3C is made up of member organizations, paid staff, and interested members of the public, and has produced a large number of standards on Internet protocols. Each of the standards is open and publicly available. Below, we briefly discuss the relevant standards that are being developed, cover their current status, and explain their relationship to ontologies.

Enable Interoperability


There are two major search problems addressed by semantic interoperability between data systems:

  1. We cannot find all the data we are seeking.
  2. We get too many results and they are difficult to classify.

How Ontologies Can Help

Automated tools can use ontologies for such services as more accurate web search, intelligent software agents, and knowledge management. By formalizing relations between concepts of one or more collections in a machine-readable language, ontologies can facilitate interoperability.

Document and Develop Community Understanding

Besides documenting a domain of knowledge, ontologies allow communities to express a shared understanding of concepts. Creating ontologies forces communities to systematically address the concepts that they share. For example, if a community uses a concept such as "water pressure," then it may well have a very particular meaning in that community. Defining concepts in ontologies resolves ambiguity and thus forces the community to reach consensus on definitions.

Document Domain Knowledge

From many perspectives, the goal when creating an ontology is to effectively describe a particular domain or "universe." Given the number of assumptions that go into even a single individual's understanding of their discipline or their area of research, capturing all the relevant knowledge can seem overwhelming. However, ontologies force communities to think about these assumptions in very explicit terms, as they capture and describe the data and relationships in the ontologies they will use in their work.

Extending Existing Ontologies For Your Use

There are many ontologies that have already been created and may be of use in your projects. However, the likelihood of a single, pre-existing ontology that meets all of your requirements may be small. This doesn't mean that you need to start from scratch to create an ontology that satisfies your needs. As an alternative, you can build upon existing ontologies by extending them using standard OWL methods, as demonstrated below.

Citing Terms

Ontologies and terms within ontologies use addresses so they can be located. To do this, ontologies and their terms are assigned URIs, making them identifiable and useable by people and software.

Where Do URIs Come From?

Unfortunately, there is no one right answer for how URIs are assigned to resources. There are several factors that influence how providers choose to assign URIs to their ontologies:

Finding Ontologies

Ontologies are generally developed around communities, and thus you may already be familiar with some that are being used in your area of interest. However, besides asking within your community, there are several techniques you can use to find ontologies that may be relevant to your needs.


Subscribe to RSS - Paul Alexander