A Comparative Study on Ontology Development Methodologies towards Building Semantic Conflicts Detection Ontology for Heterogeneous Web Services

Semantic conflicts detection is considered to be one of the essential steps that should be carried out effectively, in order to pave the way towards establishing semantic interoperability between heterogeneous Web services. To achieve that, ontology plays the backbone of the detection process, which required to be implemented in a high quality manner. However, choosing a methodology to build this ontology is very difficult, since a considerable number of methodologies have been emerged to guide the ontology development process. Therefore, this study aims at reviewing and comparing the most accepted and used methodologies, with the aim of choosing an effective methodology from ontology engineering perspective to be recommended and used for building semantic conflicts detection ontology. Furthermore, to provide some useful insights for both theoretical and practical purposes to help ontology developers to choose the right methodology and to advance the state of the art. The comparison was performed against the common ontology development life cycle. The result of this survey and comparison recommend a methodology called METHONTOLOGY to be used for implementing semantic conflicts detection ontology.


INTRODUCTION
In recent years, numerous types of technologies in the era of information technology have emerged.One of the most current and significant of the emerged technologies is Web services (Yu et al., 2008), which are rapidly growing (Han and Guo, 2005;Yee, 2007) and widely adapted (Gustavo et al., 2004).Web services make the realization of Service Oriented Architecture (SOA) applications possible (Azmeh et al., 2010;Siew Poh et al., 2006).Accordingly, a huge number of Web services have been provided from different providers for different application domains.As a matter of fact, the most challenge and obstacle that Web services are facing is the existence of semantic conflicts between their messages, which prevent establishing semantic interoperability between the messages of Web services.Therefore, as a first and critical step to tackle this problem and to achieve semantic interoperability between the messages of Web services those conflicts should be detected.To the best of our knowledge, ontology is the backbone of semantic conflicts detection, as it provides the semantics of Web services' messages.
In fact, one of the preliminary reasons that motivated the development of ontologies was establishing semantic interoperability between various knowledge bases (Hepp, 2008).Thus, ontology has been used to support semantic interoperability between heterogeneous data sources (Zhu and Madnick, 2006) and to facilitate the interoperability between different systems (Xexéo et al., 2005).In practice, semantic interoperability includes two aspects; syntactic interoperability and semantic interoperability (Commission, 2009).The former, is about ensuring the exact formats and schemas of the data that being exchanged.While the latter, is about ensuring the meaning of the data that being exchanged and ensuring that both communicated parties are sharing the same understanding of the data.This is can be accomplished through ontology, as it will enhance the understanding and the interoperability (Ensan and Du, 2013).In Web service context, semantic interoperability is concerned with ensuring that the sender and the receiver Web services are communicating meaningfully, which means booth Web service are sharing the same interpretation and understanding of the messages that being exchanged.
To detect semantic conflicts between heterogeneous Web services, we decided to build ontology called Semantic Conflicts Detection Ontology (SCDO), because ontology provides the necessary information to support semantic interoperability (Cheng et al., 2009) and it has the ability for solving semantic interoperability problem (Hajmoosaei and Abdul-Kareem, 2007).To build this ontology with ensuring its quality, a right methodology should be used.Answering a question such as what is the most suitable methodology that can used for building SCDO? is very difficult.Even though, some work has survived some of the existed methodologies, a precise answer for this question is still unanswerable.Moreover, a close look at the literature shows that there is a lack of a comparative study that compared the current methodologies from ontology engineering perspective.Therefore, this study attempts to tackle those issues and to provide constructive information to advance this field of research.

ONTOLOGY DEFINITION
Since early of the 1990s, ontologies have become an active topic investigated by the research communities in the area of Artificial Intelligence (Fensel et al., 2001;Studer et al., 1998).The term "ontology" was adapted from philosophy (Gruber, 1993) and it has been defined and used in different disciplines.One of the earliest ontology definitions was given by Gruber (1993), who defined the ontology as "an explicit specification of a conceptualization".This definition is one of the most well-known accepted definitions by the ontology community and also the most quoted (Corcho et al., 2003).A few years later, this definition had been modified by Borst (1997), in which the ontology can be thought of as "a formal specification of a shared conceptualization".The formal specification refers to the form of the ontology being formal specification means the ontology specification is machine readable (Corcho et al., 2003;Studer et al., 1998).Shared conceptualization refers to the fact that the knowledge captured by the ontology should be sharable; therefore, it should be accepted by a group and should not be restricted to some individuals (Corcho et al., 2003).
Besides, ontology is thought of as a tool that helps to clarify the semantics of information (Li and Ling, 2004), in which the concepts of information and the relationships between these concepts are formally representing (Alamgir and Mohayidin, 2009).Ontology has the most important impact in the information exchange process (Terzi et al., 2003).This is because; ontology provides the fundamental technology, which is necessary for supporting semantic interoperability (Cheng et al., 2009).In fact, we argue that ontology is considered to be the backbone for semantic conflicts detection, which definitely will improve the achievement of semantic interoperability between Web services messages.This is due to the fact that, ontology has shown its ability in interweaving human and machine understanding (Della Valle et al., 2005;Fensel, 2003).Furthermore, the necessary information about semantic interpretation of terms, representation of terms and message structures can be derived from the ontology.
In this study, we defined the ontology as: ontology is an engineering artifact for describing an explicit and formal representation of a shared conceptualization of a phenomena.
Ontology and semantic conflicts detection: Ontology has been used as a tool for providing the common understanding in a formal manner for a given domain, in order to facilitate the overcoming of semantic heterogeneities (Yahia et al., 2009), through providing the semantics of information (Li and Ling, 2004).Furthermore, as mentioned previously, ontology has the ability of interweaving the human and machine understanding (Della Valle et al., 2005;Fensel, 2003) by representing human interpretations about the domain knowledge (Özacar et al., 2011).This ability paves the way towards the automation (fully/partial) of semantic conflicts detection process and/or resolution.Therefore, ontology has been used as the key player for most of the approaches that aim at detecting and/or solving semantic conflicts such as (Hajmoosaei and Abdul-Kareem, 2007;Liu et al., 2007;Sudha and Jinsoo, 2004).
From another perspective, ontology can be implemented to explicitly represent semantic conflicts (Liu et al., 2007), which provides an ideal mechanism to effectively detect semantic conflicts.Nevertheless, forcing Web services' providers to adapt the same representations and interpretations of the same terms as well as adapt the same message structures is not practicable.Thus, ontology can provide the common understanding of heterogeneous Web services messages.Providing the common understanding will allow the process of messages exchange between the communicated Web services to tack place in a seamless manner.

LITERATURE REVIEW
Basically, the movement from the ontological art to the ontological engineering lead researchers to propose different methodologies, in order to develop ontologies for different purposes in different fields.In the context of ontology development methodologies, a considerable number of surveys has been done in the literature (Pinto and Martins, 2004).One of the earliest surveys was conducted by Jones et al. (1998).This study aimed at identifying the key issues of the surveyed methodologies that should be addressed.The reviewed methodologies in Jones et al. (1998) were categorized into two groups; comprehensive and incomprehensive methodologies.
One year later, (Fernández-López, 1999) surveyed and analyzed the best-known methodologies that have proposed at the time of writing the paper.The analysis of the reviewed works was against IEEE standard 1074-1995 (IEEE Standard for Developing Software Life Cycle Processes) (IEEE, 1996).The aim of conducting the study in Fernández-López (1999) is to help people for choosing the relevant methodology for their works and to reveal the maturity of the state of the art.
From another perspective, a comprehensive survey was conducted by Corcho et al. (2003).They analyzed and compared the reviewed methodologies based on three different criteria project management processes, Ontology development oriented processes and integral process.
Similarly, Pinto and Martins (2004) conducted a comprehensive study with the aim of revealing how ontologies can be built.They presented only the representative methodologies that used for building ontologies from scratch.They compared these methodologies based on the common ontology life cycle activities.In fact, ontology is considered as the backbone of semantic Web (Hu et al., 2005;Mustafa Taye, 2010).Therefore, this was a motivation for the survey studies that done in Cristani and Cuel (2005).The authors attempted to measure the common elements that evolved in each methodology through defining the phases' names, the input for every phase, phase description and the output from every phase.
As can be seen from this brief review, the main goal of the most mentioned studies in this section is to gather most of the reported methodologies in one place to help and guide people to select one of them.However, the work presented in this study is relatively different, since it aims at finding the right methodology that can be used to implement SCDO.Moreover, to provide a useful comparison between the most known methodologies based on the common ontology life cycle to help and guide other developers to choose the right methodology for their ontologies from ontology engineering perspective and to advance the state of the art.

ONTOLOGY DEVELOPMENT PROCESS
Research on ontology development process is active which has resulted in a noticeable number of methodologies.An ontology methodology describes the necessary activities that should be carried out, how to carry out every activity, the order of these activities and the required techniques that should be used to implement and maintain the ontology.In this section, we did not review all the reported methodologies in the literature; we rather reviewed only the most accepted and used methodologies by researchers.Furthermore, relatively most of the existed methodologies were proposed based on the reviewed methodologies in this study.

Ontology development methodologies:
Due to the fact that, ontology forms the knowledge representation of any system for its particular domain (Chandrasekaran et al., 1999), a noticeable number of ontologies have been developed and used for different purposes in different disciplines (Brusa et al., 2008).So far, a considerable number of efforts with the aim of proposing methodologies for ontology development have been done, which is the natural result from the fact that building ontologies is an ongoing research (Chandrasekaran et al., 1999).Despite the enormous number of methodologies that have been proposed and reported in the literature, only the most known have been considered.Uschold and King(1995) proposed a methodology for building ontologies based on four primitive activities; identify the purpose, building the ontology, evaluation and documentation.The building activity includes three sub activities, which are ontology capture, ontology coding and integrating existing ontologies.The authors of this study did not mention about how to carry out the evaluation activities (Lopez et al., 1999).
Similarly, Gruninger and Fox (1995) proposed another methodology called TOVE (TOronto Virtual Enterprise).TOVE proposes six activities starting from motivation scenario, informal competency question, terminology, formal competency question, axiom and end with completeness theorem.In TOVE, building the ontology is based on competency questions (De Nicola et al., 2009).However, some activities such as knowledge acquisition, documentation and maintenance are not explicitly stated in TOVE (Pinto and Martins, 2004).
Another methodology called METHONTOLOGY proposed by Fernández-López et al. (1997), which is considered to be a complete methodology for building ontology (De Nicola et al., 2009).In METHONTOLOGY, building ontology from scratch is composed of seven activities, which are specification, knowledge acquisition, conceptualization, integration, implementation, evaluation and documentation.This methodology provides a clear guidance (Pinto and Martins, 2004), in which the process of carrying out every activity is defined clearly.Furthermore, the ontology life cycle that proposed in METHONTOLOGY provides an accurate description of every activity (Brusa et al., 2008).The definition of the ontology development process is based on IEEE Standard 1074-1995 (López et al., 2000) The methodology for building ontology in public administration from scratch is proposed by Brusa et al. (2008).The development of this methodology is based on Fernández- López et al. (1997) and Gruninger and Fox (1995).This methodology is composed of three main sub processes specification, concretization and implementation.The orders of these sub processes are very important, in which the output of the each sub process will be used as an input for the next one.This methodology considers the graphical representational (in the sub process concretization), which is not explicitly considered in the aforementioned methodologies.
Likewise, De Nicola et al. (2009) proposed another methodology for building ontology drown from Unified Process (UP).This methodology called UPON that stands for UP for Ontology.This methodology consists of five workflows and each workflow is composed of some steps.The workflows are requirements, analysis, design, implementation and test.It is worthy to point out that, UPON provides clear and accurate description for each of the workflow that involved in the process of building ontology based on UP.

Comparison and analysis:
This section aims at comparing the aforementioned analyzed methodologies.The criteria of the comparison are based on the activities that involved in the ontology development life cycle.The common ontology development life cycle from ontology engineering perspective involves around the following activities (Pinto and Martins, 2004): • Specification: Specification is the process of identifying the purpose of the ontology for which will be used and scope of ontology by knowing uses and users of the ontology.Identifying the ontology scope is a very important activity, which leads to the only necessary data to be analyzed (Brusa et al., 2008).• Conceptualization: Conceptualization is the process of structuring the domain knowledge, that has been acquired (from the specification activity) in a conceptual model that provides the necessary description about the problem and its solution (Fernández-López et al., 1997).The components of the conceptual model are the concepts and their relationships (Pinto and Martins, 2004).• Formalization: In this activity, the conceptual model will be transformed into a semi-formal or formal model.• Implementation: The outcome of this activity is the ontology codified.Thus, this activity requires the use of a representation language to formally implement the formal model to produce the intended ontology.
• Maintenance: Maintenance is the process of updating and/or correcting the implemented ontology.
• Knowledge acquisition: Is the process of acquiring the ontology knowledge.This knowledge can be elucidated from different resources such as books, scenarios, competency questions, experts, other ontologies, etc. • Evaluation: The evaluation means to judge the quality of the ontology technically (Pinto and Martins, 2004).• Documentation: It includes writing the necessary documentation to facilitate the use, reuse and maintenance of the ontology, as well as, for enhancing the clarity of the ontology.

DISCUSSION
Establishing semantic interoperability between heterogeneous Web services has been considered as a critical issue, in which semantic conflicts should be detected first.Hence, the main player for detecting semantic conflicts between heterogeneous Web services is the ontology, which provides the necessary semantics of Web service's messages for the detection process.To ensure that the ontology has been implemented in a sound manner, an effective methodology should be used.Choosing an effective methodology that has been used and shown its effectiveness for building ontologies is not an easy task.
According to the comparison between the reviewed methodologies that presented in Table 1, METHONTOLOGY seems to be the most suitable methodology for implementing SCDO.Even though, UPON is almost the recent one and derived based on the Unified Process (UP), METHONTOLOGY has been approved as a typical methodology that has been used for implementing ontologies from different domains.It is worthy to point out that any of the reviewed methodologies can be used to implement SCDO, but without ensuring that the ontology will meet the quality design criteria.For example, TOVE can be used to implement SCDO.From SCDO point of view, this methodology has some limitations, which will diminish the quality of SCDO.Of these limitations, this methodology does not have evaluation activities, where evaluation is very important to ensure the quality of SCDO.Generally, the ontology life cycle activities that discussed previously in this study are the minimum and essential activities to ensure the quality of SCDO.Thus, any methodology that fulfills these activities can be recommended to be used for SCDO implementation.

CONCLUSION
One of the critical issues for implementing any ontology that should be addressed is the problem of choosing the mature and the right methodology.As adapting a mature methodology will certainly enhance the quality of the implemented ontology.Therefore, this study surveyed and compared the most known methodologies based on the common ontology development life cycle.This study aimed also to define the right and mature methodology to be used for building SCDO.Besides that, to provide the ontology developers with useful insights that would facilitate the process of choosing the suitable methodology for their ontologies.In addition, this study analyzed and compared the reviewed methodologies from ontology engineering perspective.Based on the result of this comparative study, METHONTOLOGY was chosen and recommended to be used for implementing SCDO.Thus, as a future study, we intended to develop SCDO based on METHONTOLOGY.

Table 1 :
A comparison of the different reviewed methodologies against the ontology development life cycle