Chapter 2 LITERATURE REVIEW
2.3 Knowledge Representation with OntologIES
2.3.2 The Web Ontology Language
The recommended standard ontology language for the Semantic Web is the Web Ontology Language (OWL) which is designed to represent rich and complex knowledge about things, groups of things and relationships between things2. OWL is based on formal semantics and is intended to provide a language that can be used to describe concepts and relationships between them that are inherent in Web documents and applications [43].
OWL is a part of W3C semantic web standard stacks which include RDF, RDFS and SPARQL.
It was introduced to address the drawbacks of RDF and RDFS, extending them through the
2 https://www.w3.org/TR/owl2-overview/
incorporation of additional vocabulary for describing properties and classes. Features of OWL include relationships between classes, enumerated classes, cardinality equality and characteristics of properties [48], [49].
OWL is similar to RDF but is more expressive with greater machine interpretability. OWL is widely used for ontology representation [50]. OWL ontologies are typically stored using the XML format, however alternate syntaxes are available including Turtle and the Manchester syntax.
Class, attribute and relationship are represented as class and properties in OWL. owl:Class is used to represent class; it is a specialisation of rdfs:Class. rdf:Property is used to represent property and is divided into owl:ObjectProperty and owl:DatatypeProperty, while owl:ObjectProperty applies to object properties of a class and owl:DatatypeProperty applies to literal antetypes.
Description logics (DL) provide the underlying formal framework for OWL and allow for inferences to be performed on the knowledge described with OWL. Description logics provide the underlying formal framework for OWL and RDF. A knowledge base in a description logic framework consists of two parts; the Terminological Box (TBox) and the Assertional Box (ABox). Declarations about concepts are contained in the TBox and the facts about objects and statements about these facts are contained in the ABox. In order to produce additional inferences in the ontology, a reasoner is used to apply rules of the language to the statements contained in both TBox and ABox.
OWL has been implemented in some desktop editing tools to make it easier for users to build ontology syntaxes. The tools include Protégé-OWL, from Stanford Medical Informatics, and Swoop from the Mindswap laboratory at the University of Maryland. These editing tools also
implement reasoners to facilitate additional inferences. The implemented reasoners in Protégé3, for example, include Pellet, RacerPro, Fact++, HermiT and KAON2.
There are two versions of the OWL language; OWL 1 and OWL 2. OWL 2 is an improvement of OWL 1. OWL 1 has three major sub-languages with increasing levels of expressivity. The difference between these sub-languages is the trade-off between expressivity and decidability.
OWL 1 Lite is the most expressive and least decidable OWL sublanguage. OWL 1 Full is the, on the other hand, least expressive and most decidable. OWL 1 DL is most expressive but still decidable [51]. Grau et al [51] stated that although OWL 1 has been successful, there were still certain problems identified in its design that called for revision and led to the development of OWL 2.
Grau et al [51] highlighted the problems with OWL 1 which are resolved in OWL 2, these include and are not limited to, expressivity issues, problems with its syntaxes and deficiencies in the definition of OWL species [51]. OWL 1 DL is the most expressive, however, it lacks particular constructs that are necessary for modelling complex domains. Modellers have been solving expressivity problems such as qualified cardinality restrictions, relational and datatype expressivity with workarounds that are often not sound or complete with respect to the intended semantics. The relationship between the two normative syntaxes of OWL 1; the Abstract Syntax and RDF is complex and causes problems when converting one syntax into the other. Certain design choices in OWL 1’s abstract syntax has made it confusing for developers, which resulted in the suboptimal design of OWL APIs. OWL 1 was designed when meta-modelling had not been widely considered, thus, classes, properties and individuals must be disjointed in OWL Lite and OWL 1DL, making it challenging to create a meta-model in OWL 1.
OWL 2 was designed to mitigate the expressivity and modelling challenges of OWL 1 and to provide a robust platform for future development [51]. The resolution of these identified
3 http://protegewiki.stanford.edu/wiki/Using_Reasoners
limitations marks the major difference between OWL 1 and OWL 2. The expressivity limitation was resolved in OWL 2, through the extension of the DL from SHROIN to SHROIQ. Hence, OWL 2 is more expressive and decidable than OWL 1. Also, several extensions were made on OWL 2 that led to an improved syntax, one of which is the introduction of Functional-Style Syntax which is more verbose than Abstract Syntax. Lastly, the meta-model problem was resolved in OWL 2 by specifying the structure of the ontologies using the Meta-Object Facility (MOF) [51] which is a well-known meta-language.
OWL 2 has three sublanguages further to the two major dialects, OWL 2 DL and OWL 2 Full.
The two major dialects are improvements on OWL 1 DL and OWL 1 Full, and their relationship and underlying motivations are still the same as in OWL 1. The sublanguages have favourable computational properties and are easier to implement. While they have restricted expressivity, they are sufficient for a variety of applications. The following are the descriptions of the sublanguages of OWL by Hitzler et al [52].
OWL 2 EL is one of the sublanguages that was designed with large biomedical ontologies in mind. It has polynomial time reasoning complexity and was based on the common attributes of biomedical ontologies which include complex structural descriptions, huge number of classes, the substantial management of terminologies with classifications, and the application of classified terminologies to vast amounts of data.
OWL 2 QL is designed to enable easier access and query to data stored in databases. It is a result of extensive research on database integration. It can be tightly integrated with RDBMSs and benefits from their robust implementations and multi-user features. It serves as a translational layer for RDBMS implementation. Lastly, it can represent key features of Entity-relationship and UML diagrams.
OWL 2 RL is designed to accommodate OWL 2 applications that can trade the full expressivity of the language for efficiency. It can also accommodate RDF(S) applications
that need some added expressivity. It is aimed at applications that require scalable reasoning without sacrificing too much expressive power.
Ontology editing tools have been updated to accommodate the improvements of OWL 2. For instance, the Protégé ontology editor has been extended in its newer versions to support the additional constructs of OWL 2.