Elsevier

Expert Systems with Applications

Volume 40, Issue 16, 15 November 2013, Pages 6469-6477
Expert Systems with Applications

JOINT: Java ontology integrated toolkit

https://doi.org/10.1016/j.eswa.2013.05.040Get rights and content

Highlights

  • A toolkit to support the development cycle of ontology-based applications was created.

  • We carried out an experiment with 8 novice developers to compare the toolkit with another tool.

  • Results suggest that our toolkit helps developers to create applications faster and with less errors.

  • The tool was also successfully used to develop a complete intelligent education system.

Abstract

In the past few years, the use of ontologies for creating more intelligent and effective application has increased considerably. This growth is due to the fact that ontologies attempt to provide semantics to the data consumed by machines so that they can reason about this data. However, developing complex ontology-based applications is still difficult and time-consuming because the existing tools do not provide a simple and unified environment for developers. Most of these tools only provide data manipulation using RDF triples, complicating the development of applications that need to work with the object orientation paradigm. Furthermore, tools that provide instances manipulation via object orientation do not support features such as manipulating ontologies, reasoning over rules or querying data with SPARQL. In this context, this work proposes a framework and a tool for supporting the efficient development of ontology-based applications through the integration of existing technologies. Furthermore, we also define a methodology to use this tool efficiently. In order to evaluate the benefits of our work, a controlled experiment with eight developers (unfamiliar with ontologies) was performed to compare the proposed tool, JOINT, with another one, Jastor/Jena, frequently used by the community. The results suggest that our tool helps novice developers to create ontology-based applications faster and with few errors in the code. In addition, a real educational application with 10 ontologies, more than 200 ontology concepts (classes) and more than a million triples is already using the proposed tool successfully.

Introduction

Recently, ontologies have obtained quite a lot of attention in the computer science community. The term “ontology,” which has origins in philosophy, becomes a useful word in computer science for a new approach to knowledge representation about real-world entities. Ontologies offer a shared understanding of a particular domain and a formalization that allows its data to be interpretable by machines (Hepp, Leenheer, Moor, & Sure, 2007; Isotani, Mizoguchi, Inaba, & Ikeda, 2010). As a result, ontologies are not only applied as bases for the Semantic Web, but also in other areas of computing research and industry. For example, e-commerce applications use ontologies for parametric searches and heterogeneous systems integration (Das, Wu, & McGuinness, 2002). Another industry segment is the media system that has used this approach to do real-time data inference, delivering up-to-date content for its users (Kiryakov et al., 2010). In addition, several other fields use ontologies, such as medicine (Bard & Rhee, 2004), mobile devices (Cheyer & Gruber, 2010) and adaptive education (Bittencourt, Costa, Silva, & Soares, 2009; Bittencourt et al., 2006; Bittencourt & Costa, 2011; Isotani et al., 2013).

This dissemination is a consequence of the growing number of tools and software libraries that allow the development of ontology-based applications. Currently, more than 170 tools are listed at the semanticweb.org, a list that has been growing considerably in the past few years. Despite the high number of tools, not all of them aim to support the development of applications for the Semantic Web. Furthermore, the tools that offer this type of support do not provide it through a simple and unified environment; that is, they fail to offer common functionalities when developing applications based on ontologies, such as managing and querying ontologies, reasoning over rules, manipulating instances via an object oriented paradigm (in contrast to the manipulation of instances via triple RDF (Resource Description Framework), among others (Holanda, Bittencourt, Isotani, Elias, and Bandeira, 2012).

In this context, this work proposes a toolkit called JOINT that provides simplified development of ontologies through the object oriented model. Moreover, the toolkit provides an integration of existing technologies and techniques to create a unified environment for developers of applications based on ontologies. JOINT provides services such as operations on ontologies, manipulating instances, SPARQL1 (Simple Protocol and RDF Query Language) queries, data inference over SWRL2 (Semantic Web Rule Language) rules, and so on. The proposed tool was evaluated through a controlled experiment, in which developers compared it with another tool, referred to as Jastor/Jena, freely available for the community. In addition, a real world educational application with 10 ontologies, more than 200 ontology concepts (classes) and 1 million triples is already using the proposed platform successfully.

This paper is organized as follows. Section 2 outlines the characteristics of each type of ontology programming. Section 3 describes the proposed tool/toolkit. Section 4 presents the performed experiment, evaluating the proposed work. Section 5 describes the real world educational application built with the proposed system and methodology. Section 6 presents some conclusions and future works.

Section snippets

Ontology programming

Manipulation of instances is an important step in the process of ontology-based application development. Currently, two main approaches have been used by ontology management systems: RDF triples and object oriented development. In the following subsections, the main distinctions and benefits of the aforementioned approaches are detailed.

Joint

Currently, there are several tools that manipulate ontology through the paradigm of object orientation (e.g. Jastor Szekely & Betz, 2009 and Elmo (Mika, 2007) instead of RDF triples. However, these tools provide only the manipulation of instances, which is only one step of the ontology-based development process. Therefore, when working with these tools, developers need to search for other tools to build semantic applications with the usual features (e.g. querying ontologies, handling instances,

Experiment

This section presents an experiment that analyzed the proposed tool and provided both quantitative and qualitative evaluations. The experiment also did a comparison between our tool (JOINT) and another tool available in the literature (Jestor/Jena). This comparison aimed to verify if the obtained results satisfy the initial proposal; in order words, if the proposed tool increased the efficiency of program’s development. The experiment was based on the work of Wohlin and colleagues (Wohlin et

Real world application

This section shows a real application using the proposed tool. The “UFAL Línguas” is an educational system for teaching languages. The system’s main goal is to personalize student learning, focusing on adapting the content according to the student’s knowledge. The educational system provides intelligent customization of learning experience, supports the activities developed by teachers and provides real-time involvement of all participants (teacher, student, coordinator, director and parents)

Conclusions and future works

This paper proposed a toolkit, called JOINT, to unify several features, such as API, Desktop GUI and plugins, necessary for the development of applications based on ontologies. JOINT was presented through descriptions of its architecture and services. To check its usefulness, an experiment was conducted to evaluate it, focusing on the efficiency of programmer development in comparison to another pair of tools. The experiment compared JOINT with Jastor and Jena tools. We used both quantitative

Acknowledgement

CNPq, W3C Brasil and Nic.Br provided support for this research. We also thank MeuTutor Soluções Educacionais for technical support of our work.

References (29)

  • A. Das et al.

    The emerging semantic web: Selected papers from the first semantic web working symposium

  • M. Fernadez et al.

    Methontology: From ontological art towards ontological engineering

  • Ferreira, R., Holanda, O., Melo, J., Bittencourt, I. I., Freitas, F., & Costa, E. (2011). An agent-based semantic web...
  • Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (2004). Design patterns: Elements of reusable object-oriented...
  • Cited by (0)

    View full text