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:
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.
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.
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.
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.):
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.
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.
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).
- 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).
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.
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).
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.