From Taxonomy to Ontology

As interest in designing personalized user experiences, recommendation engines, knowledge graphs, and the broader implementation of the semantic web grows, the need for the creation and implementation of ontologies becomes more critical. At Enterprise Knowledge, we define an ontology as a model that organizes structured and unstructured information through entities, their properties, and the way they relate to one another. This model can be seen as a semantic structure that ties together your organization’s information and data to provide enhanced content management through:     

  • Improved findability and discoverability of information;
  • Reuse of unknown and forgotten organizational information; and
  • Improved SEO on external search engines. 

Although often sought after, the creation of ontologies is frequently misrepresented and seen as an overly technical task. This blog seeks to define the steps needed to take an existing organizational taxonomy and transform it into your first ontology.

Ontology Anatomy

Before we begin creating an ontology it is crucial to understand the components of an ontology. The table below outlines the anatomy of an ontology:  

Ontology Component Definition Example
Class Type of entity People, Places, Companies, etc.
Relationship Link between objects in the ontology Ben worksFor Enterprise Knowledge
Attribute Data associated with an object in the ontology Enterprise Knowledge hasPhoneNumber 571-403-1109

The components of an ontology allow us to thoroughly define a domain of knowledge and business context through the entities defined in classes, relationships between classes, and data associated with classes. The image below shows a graphical relationship of a simple ontology that shows how two classes (Person and Company) are related and an attribute (phone number) associated with the company class: 

Visual representation of an ontology, modeling the classes, relationships, and attributes listed in the table above

These three elements allow us to go far beyond the abilities of traditional knowledge organization techniques such as folksonomies, folder structures, and taxonomies to categorize information environments in new and exciting ways. By identifying classes, defining the relationships between these classes, and associating the attributes between classes we can bring meaning to the information and data of an organization. We can use this information to create compelling user interfaces like knowledge panels. 

A knowledge panel that appears if you search "Lemurs" in google.

Ontology Creation

Now that we understand the anatomy of an ontology, we can begin to construct our first ontology. Using this method of ontology creation, we need to begin with an existing taxonomy that describes the domain in question. For more information on the taxonomies and taxonomy creation please see my four part series on taxonomy development.EK's knowledge organization continuum, showing the definitions of folksonomy, controlled lists, taxonomy, thesaurus, ontology, and knowledge graph

Step 1 Define the Use Case

An ontology is a powerful tool that can accomplish many diverse goals. Due to the complex nature of ontologies, it is vital to first define the use case of the ontology. Some common use cases include ontology modeling for content categorization, text mining, user experience, and artificial intelligence. 

Graphic showing common use cases for ontologies

Step 2: Extract Classes

Now that we have an initial use case defined, it is time to analyze the existing taxonomy and determine classes. Ontology classes are high level categories that encompass the concepts in a given domain. Sample classes include: 

  • People;
  • Companies;
  • Content Types; and 
  • Places.

If the taxonomy was particularly well constructed, the highest-level terms within the taxonomic hierarchy will often represent ontology classes. The image below shows an example of an organizational taxonomy where ontology classes correspond to the highest level of the taxonomy (Certifications, Companies, Document Types, Services, Location, People, etc.): 

Example of classes of a taxonomy

However, it is common for classes to be missing from the original taxonomy or hidden within the taxonomic hierarchy. These cases require a deep analysis of the taxonomy. The image below shows a taxonomy where classes (People, Company, and Role) are represented as individual terms throughout the taxonomy. 

Example of classes in a taxonomy

In cases where missing classes are necessary, it is critical to use the original use case as a guiding principle for the addition of new classes.

Step 3: Adapt Existing Taxonomy

Using the classes extracted from Step 2 we can begin to adapt the original taxonomy for ontology transformation. This process involves moving concepts to fit hierarchically beneath each class. When new classes have been created, you must develop a new taxonomy of terms.

Sample ontology transformation

Step 4: Incorporate Semantics

Now that the taxonomy has been updated and ready for ontology transformation, it is time to incorporate semantics. At the most basic level, ontology semantics include two elements: 

  • Relationships – Relationships between objects and individual terms. Relations are links between classes within the taxonomy.  The image below shows two examples of relationships between People, Company, and Role classes (Ben White worksFor Enterprise Knowledge and Ben White hasRole Ontologist). 

Example taxonomy showing relationships

  • Attributes Data associated with each object (i.e., height, weight, size, etc.). Attributes are a powerful way to tie together your organization’s information and data. The image below shows two attributes associated with the Company class Address and Phone Number (Enterprise Knowledge hasAddress 3100 Clarendon Blvd, Arlington, VA 22201 and Enterprise Knowledge hasPhoneNumber 571-403-1109). 

Example taxonomy showing attributes

Relationships and attributes associated with ontology classes can be a difficult concept to grasp. One of the simplest ways to visualize relationships and attributes is through knowledge panels. When building relationships and attributes it can be useful to think through how relationships and attributes would surface on a knowledge panel. If the relationships and attributes are ambiguous or offer little value, they should not be included in the ontology. An example knowledge panel of the author, Ben White, showing a few examples of attributes

Step 5: Create Class Hierarchy

A class hierarchy includes a class and sub classes organized hierarchically. A subclass inherits the attributes and relationships of the parent class. To determine if a subclass is warranted, ensure that the attributes and relationships defined in the ontology can be inherited. Use subclasses with caution. Only create a subclass when attributes and relationships can clearly be inherited. Otherwise create a separate class. The image below shows two sub classes (Private Company and Public Company) that both inherit the relationships of the parent class (Company). 

A graphic showing two sub classes (Private Company and Public Company) that both inherit the relationships of the parent class (Company).

Step 6: Rinse and Repeat

Ontology Engineering is an iterative process. Ontologies should regularly be validated against initial use cases. Expect the ontology to evolve and extend overtime. It is important to routinely perform these steps to ensure the ontology stays up to date and accurately describes the domain of knowledge you are modeling. 

Conclusion

Ontology creation can offer incredible benefits including user experience enhancements, data alignment, and artificial intelligence. When following the steps defined in this blog, it is important to keep in mind the original use case. An ontology without a reason for being will fail to offer any value. It is also important to have fun! Ontology engineering is a creative endeavor greatly influenced by its creator. To learn more about how you can improve the findability of your content, connect with one of our knowledge management experts by contacting Enterprise Knowledge.

EK Team EK Team A services firm that integrates Knowledge Management, Information Management, Information Technology, and Agile Approaches to deliver comprehensive solutions. Our mission is to form true partnerships with our clients, listening and collaborating to create tailored, practical, and results-oriented solutions that enable them to thrive and adapt to changing needs. More from EK Team »