An introduction to ontologies and how to use them
What is an ontology?
An ontology in layman’s terms is the classification of entities, by defining a set of concepts that they can be categorised by. Similarly, within data science, ontologies are used to link data, to connect entities and understand their relationships. Ontologies allow us to specify things like classes, relations and restrictions in order to classify data, and this allows us to use this classification as a reusable concept. By building relations and classes that we can use to classify data, we can also revisit these classifications at a later date and add new knowledge in order to further enrich our ontology. They are key in the use of knowledge graphs because they help to define the relationships and properties of nodes.
What is an example of an ontology?
Ontologies typically have classes and properties. Classes describe concepts or objects that we wish to represent. They have their own hierarchy as they can have any number of subclasses, whereby the subclass would inherit the properties that a class has. For example a vehicle would be a class and a car would be a subclass of a vehicle. Other subclasses of a vehicle could be a truck, a motorcycle, a bus and an aeroplane.
Properties are the attributes that a class has, it can define the values a class has or the relationships that are related to the class. For example, a car would have the property “four-wheeled” whilst a bicycle would have the property “two-wheeled. However, the class vehicle could have the property “Purpose is to transport someone or something” and all the subclasses of this class would inherit this property.
Why do you need an ontology?
Not only does an ontology allow for extending data, but ontologies also allow data of different formats to be connected. Information can be captured in a number of different formats, or simply captured differently by different users. For example, when collating data on music artists, one provider may define a music artist simply as “Artist” whilst another may define the artist as “Singer”. Using a defined set of constraints, we can classify this data within known classes to make it easier to work with, and standardise data from different databases. Ontologies also make it easier to understand data, by being able to break data down into the constraints that it has been defined by.
What is the process of designing an ontology?
Creating an ontology not only supports the linking of data, but the process of creating one can also help a business better understand their customers. In the case of a business, an ontology should be designed thinking about the end user of the product and how they will interact with the data. For example, in the case of a contract management platform like Legislate, we could design an ontology whereby “Contract” is a class and types of contracts are subclasses. For example, we could further break down “Contract” into “Business Contract” and “Tenancy Contract” and another level of hierarchy would be “Non-Disclosure Agreement” and “Employee Agreement” being subclasses of “Business Contract”; whereas, “Assured Shorthold Tenancy Agreement” and “Student Tenancy Agreement” would be subclasses of “Tenancy Agreement”.
Each individual contract would be an instance of a contract subclass, and would have contract terms that would be instances of that contract. Those contract terms could then be classified according to an ontology, so that we know whether the terms could be negotiable or not. For example, “Confidentiality Term” and “Coverage” would both be properties of a Non-Disclosure Agreement. But introducing properties such as “negotiable” and “non-negotiable” classifies these terms and allows these contracts to be easily executed as we can quickly and easily distinguish whether a term can be negotiated or not.
Ontologies are incredibly useful for the semantic web, and they require a lot of thought in order to be designed appropriately. They should be designed with the end user in mind so that they help represent data in a reusable manner that is useful. Ontologies are helping TextMine build semantic contracts by helping to create a model that enables automated processing of documents. For TextMine, this means supporting us to make machine understandable semantic contracts, so we can automate as much of the document creation and data extraction process as possible; making it quicker and easier for TextMine users to create, manage and search contracts.
About TextMine
TextMine is an easy-to-use data extraction tool for procurement, operations, and finance teams. TextMine encompasses 3 components: Legislate, Vault and Scribe. We’re on a mission to empower organisations to effortlessly extract data, manage version controls, and ensure consistency access across all departments. With our AI-driven platform, teams can effortlessly locate documents, collaborate seamlessly across departments, making the most of their business data.
Newsletter
Blog
Read more articles from the TextMine blog