MERGING BUSINESS VOCABULARIES AND RULES Edvinas Sinkevicius Departament of Information Systems Centre of Information System Design Technologies, Kaunas University of Lina Nemuraite Departament of Information Systems Centre of Information System Design Technologies, Kaunas University of Rimantas Butleris Departament of Information Systems Centre of Information System Design Technologies, Kaunas University of ABSTRACT The goal of the paper is to propose the solution for merging SBVR business vocabularies and rules. Related work analysis has shown that this problem yet is not solved nor in the scientific literature nor in practical applications. We have identified five types of conflicts; one of them, the inconsistency conflict type, is proposed in this research. Merging operation is implemented in the Web prototype for maintaining business vocabularies and rules. KEYWORDS Business Vocabulary, Business Rules, SBVR, OWL, merging. 1. INTRODUCTION In order to develop IS, requirements must be captured. These requirements usually are defined on the base of common business vocabulary using natural language. One of the most important recent innovations in the IS development was the possibility to computerize business vocabularies, which became a reality after the OMG issued the Semantics of Business Vocabulary and Business Rules (SBVR) (OMG, 2013). SBVR is the rich knowledge model, which has a formal basis and allows to express business knowledge using the limited natural language (e.g., SBVR Structured English). This language is capable to specify business concepts and business rules used in the particular business domain, and to define requirements for IS development thus allowing business experts and IS developers understand each other. Our Web prototype for maintaining SBVR business vocabularies was implemented on the basis of SBVR editor VeTIS tool (Nemuraite et al., 2010; Sukys et al., 2012). Needs for merging vocabularies could occur for a variety of reasons: due to several experts working on the same project; the upgrade of the system; the needs to reuse existing vocabularies from other domains (e.g., standard vocabularies for time, geographical locations, measurement units, etc.), and so on. This paper presents the approach for merging business vocabularies and business rules, which deals with conflicts that could occur during merging vocabularies from different sources. We analyse various types of conflicts, which can be identified and automatically or semi-automatically resolved; i.e., the decisions can be made by users with the help of the heuristic options proposed by the system. Inconsistency conflicts can be resolved using transformation from SBVR vocabularies to OWL 2 ontologies (Karpovic et al., 2011; Karpovic et al., 2012) and finding inconsistencies using OWL 2 reasoners (Protégé Hermit or Pellet). The rest of this paper is organized as follows. Section 2 describes the related works. Section 3 describes the proposed approach for merging business vocabularies and business rules. Section 4 draws the conclusions and presents our future works.
2. RELATED WORKS Analysis of related works has shown that merging of various information resources (documents, vocabularies, databases, models, web services, etc.) requires dealing with conflicts that could occur due to different origins even if the problem domain is the same. The method for conflict solving during merging databases is presented by Parent et al. (Parent et al., 1998). For automatically merging databases with heterogeneous indexing systems, a spreading activation model is proposed by Lee (Lee, 1999). Taxonomy of conflict problems and term mapping process in integrating information resources using XML schema was described by Lee et al. (2002); however, the authors have not proposed a method for solving these conflicts. Problems in merging ontologies by means of definitions and terms were presented in (Kotis et al., 2006). Model-driven mechanism and metamodel for specifying conflict patterns has been proposed by Cicchetti et al. (2008); they concluded that human interaction is necessary to produce valid mappings between ontologies. Westfechtel (1991) has presented merge algorithm, which detects context-free conflicts and preserves context-free correctness. Later, the same author gave the formal approach to three-way merging of models in the EMF framework, which produces a valid model, handles move operations, detects and resolves contextfree and context-sensitive conflicts (Westfechtel, 2010). Finally, he defined formal and detailed merging techniques listing the conflicts and describing their solutions (Westfechtel, 2014). Method for three-way merging of XML and investigation of various cases on XML merging were presented in (Lindholm, 2004), where high-level merge rules were derived. An approach for computing differences between UML models encoded as XMI files was presented in (Kelter et al., 2005), but the tests were performed with unrealistic examples, so the approach is not fully comprehensive. Requirements for algorithms and tools for differencing and merging software diagrams were defined by Förtsch et al. (2007); these authors have explored several crucial design decisions, which should be implemented by tool developers. In model versioning, two different kinds of conflicts were defined based on the notion of graph modifications: operation-based and state-based conflicts (Taentzer et al., 2010). An operation-based conflict detection algorithm to detect conflicts in operations and models was presented by Koegel et al. (2010); they have made the conclusion that operation-based conflict detection results in less conflicts and requires fewer merges. The classification and solving of semantic conflicts during the exchange of information through Web services is analysed in (Al- Baltah et al., 2013). However, we have not found any proposal for merging SBVR business vocabularies and rules. 3. APPROACH FOR MERGING SBVR VOCABULARIES In this section, the approach for merging SBVR vocabularies of the same domain, types of possible conflicts and their solving rules are presented. Capabilities of merging SBVR vocabularies are implemented in the Web prototype for managing SBVR business vocabularies and business rules. 3.1 Types of conflicts occurring during merging SBVR vocabularies Identified types of conflicts that occur while merging business vocabularies and rules are listed in Table 1. Table 1. Types of conflicts Conflict Structural (schema) Value Comment (1) Data type conflicts, when the same role has different data types; (2) Aggregation conflicts; (3) Composition conflicts; (4) Generalization conflicts, when different names are used for the same thing in both vocabularies but one name seems more general than other (e.g., agent and person); the same concept has more general concept in one of vocabularies; concept 1 has more general concept 2 in vocabulary 1, and concept 2 has more general concept 1 in the vocabulary 2 ; etc. When a term must have defined number of values: e.g., house has color It is necessary that house has color green
Conflict Semantic Naming Inconsistency Comment It is necessary that house has color blue It is necessary that house has at_most_1 color The solution could be made by expert, e.g.: It is necessary that house has color green or house has color blue It is necessary that house has at_most_1 color The word may have a meaning in the specific context, e.g., verb concept roles, when a person is a driver if a person drives a car. (1) Synonyms e.g., person in one vocabulary can be named as human in another vocabulary. If their properties overlap, they may be treated as synonyms: person Synonym: human (2) Homonyms occur when different things have the same names: order Definition: purchase order - a commercial document used to request someone to supply something order Definition: ordering the act of putting things in a sequential arrangement (1) The examined vocabularies may have business rules, which may contradict each other: e.g., Voc 1: It is necessary that house has at_most_1 color Voc 2: It is necessary that house has at_least_2 color (2) Sometimes we have to consider general rules: e.g., It is necessary that person has at_most_1 date_of_birth. In some cases, the solution should be made by the user, because vocabularies do not give the knowledge to make a correct decision, especially when vocabularies contradict each other. E.g., if we have data type conflict, when the same role order code is represented as text in one vocabulary and as integer in another vocabulary (Figure 1), the automatic solution cannot be made because there is no knowledge whether this value will be used for calculating or not. Vocabulary1 order_code General concept: text Vocabulary2 order_code General concept: integer Figure 1. Example of data type conflict in two different vocabularies These conflicts were investigated and implemented in merging algorithm which automatically detects conflicts and tries to resolve them. If there is not enough knowledge or the data contradict each other in vocabularies, the solution must be made by the user. 3.2 Merging implementation in Web prototype for vocabularies and rules For creating and maintaining business vocabularies and rules, the Web prototype was implemented, which allows solving conflicts occurring during merging business vocabularies. When user has chosen vocabularies for merging, the merging algorithm starts from finding all conflicts that were listed in this paper. Located inconsistencies are solved in the main merged vocabulary. In this algorithm, three methods for merging vocabularies are used: 1) automated merging with presentation of results to expert for validation; 2) finding conflicts and presenting to expert for solving them (possibly, choosing from recommendations given by the system); 3) finding inconsistencies with the help of ontology reasoners after transforming vocabularies into ontologies and merging them. The example of presenting options for solving data type conflict (Figure 1) to the user is shown in Figure 2. Figure 2. Example of options given to the user for solving data type conflict
Due to the limitations of the paper, we present only the fragment of the overall merging algorithm, i.e., for solving naming conflicts (Figure 3). In two cases, it can be executed without user intervention. Figure 3. Algorithm for solving naming conflicts If after the one iteration of the merging algorithm conflicts still are found, the process should be repeated from the beginning using the main merged vocabulary. Example of merging two vocabularies in the prototype is given in Figure 3. Colours show different conflicts: the same concepts with different names are shown in orange, added concepts in green, deleted concepts in red. Figure 4. Two vocabularies after merging: background color show differences 4. CONCLUSION AND FUTURE WORK The paper presented the new approach for merging SBVR vocabularies of the same domain. In order to perform merging, we must deal with five types of conflicts; four of them are described in methods for merging other information resources. The inconsistency conflict type, proposed in this research, can be revealed by transforming SBVR business vocabularies and business rules to OWL 2 ontologies, and using ontology merging and reasoning capabilities. Merging operation is implemented in the Web prototype for maintaining business vocabularies and rules.
The future work is devoted for experimental investigation and improvement of merging method and its implementation in the prototype for maintaining SBVR business vocabularies and rules. REFERENCES Al-Baltah, I. A., et al, 2013. A Classification of Semantic Conflicts in Heterogenous Web Services at Message-level. Turkish Journal of Electrical Engineering and Computer Science. Cicchetti,A.,et al, 2008. Managingmodel conflicts in distributed development. Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2008). LNCS, Vol. 5301, Toulouse, France, Springer, Berlin, pp. 311 325. Förtsch, S. and Westfechtel, B., 2007. Differencing and merging of software diagrams state of the art and challenges. Proceedings of the Second International Conference on Software and Data Technologies (ICSOFT 2007), Barcelona, Spain, INSTICC Press, Valencia, pp. 90 99. Karpovic, J. and Nemuraite, L., 2011. Transforming SBVR Business semantics into Web Ontology Language OWL2: Main Concepts. In proceeding of 17th International Conference on Information and Software Technologies ICIST 2011, Kaunas, pp. 231-238. Karpovic, J. et al, 2012. Requirements for Semantic Business Vocabularies and Rules for Transforming Them into Consistent OWL2 Ontologies. CCIS, Vol. 319, pp. 420-435. Kelter, U., et al, 2005. A generic difference algorithm for UML models. In Software Engineering 2005. LNI, Vol. P-64, Essen, Germany, Gesellschaft für Informatik. pp. 105 116. Koegel, M., et al, 2010. Operation-based conflict detection. Proceedings of the 1st InternationalWorkshop on Model Comparison in Practice (IWMCP 2010), Malaga, Spain. ACM Press, New York, pp. 21 30. Kotis, K., et al, 2006. Towards Automatic Merging of Domain Ontologies. The HCONE-merge approach. Journal of Web Semantics, Vol. 4, No 1. Lee, J., 1999. A Spreading Activation Model for Vocabulary Merging. Graduate School of Library and Information Science University of Illinois at Urbana-Champaign. Lee, K. et al, 2002.Conflict Classification and Resolution in Heterogeneous Information Integration based on XML Schema. Proceeding of IEEE Region 10 Conference on Computers, Communications, Control and Power Engineering, Vol. 1, pp. 93-96. Lindholm, T., 2004. A Three-way Merge for XML Documents. Proceeding of the 2004 ACM symposium on Document engineering, New York, USA. Nemuraitė L., et al., 2010. VETIS tool for editing and transforming SBVR business vocabularies and business rules into UML&OCL models. Proceedings of the 16th international conference on Information and Software Technologies, ICIST 2010, Kaunas, Lithuania, April 21-23, pp. 377 384. OMG, 2013. Semantics of Business Vocabulary and Business Rules (SBVR) specification. Version.1.1, OMG Document Number: formal/2013-09-04. Parent, C. and Spaccapietra, S., 1998. Issues and Approaches of Database Integration. Communications of the ACM, Vol 41, issue 5, pp. 166-178. Sukys A., et al, 2012. Transformation framework for SBVR based semantic queries in business information systems // Bustech 2012: the second International Conference on Business Intelligence and Technology, July 22-27, 2012, Nice, France, IARIA, pp. 1-6. Taentzer,G., et al, M, 2010. Conflict detection for model versioning based on graph modifications. ICGT 2010 Graph Transformations, 5th International Conference. LNCS, Vol. 6372, Enschede, Netherlands, pp. 171 186. W3C, 2012. OWL 2 Web Ontology Language (OWL), W3C Recommendation. Second ed. http://www.w3.org/tr/2012/rec-owl2-overview-20121211/. Westfechtel, B., 1991. Structure-Oriented Merging of Revisions of Software Documents. Proceedings of the 3rd international workshop on Software configuration management, pp. 68-79. Westfechtel, B., 2010. A Formal Approach to Three-Way Merging of EMF Models. Proceeding of the 1st International Workshop on Model Comparison in Practice, pp. 31-41. Westfechtel, B., 2014. Merging of EMF models. Proceedings of Software & Systems Modeling, Vol. 13, No 2, pp. 757-788.