<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">HaDEsclipse Integrated Environment for Rules (Tool Presentation)</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Krzysztof</forename><surname>Kaczor</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">AGH University of Science and Technology</orgName>
								<address>
									<addrLine>Al. Mickiewicza 30</addrLine>
									<postCode>30-059</postCode>
									<settlement>Kraków</settlement>
									<country key="PL">Poland</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Grzegorz</forename><forename type="middle">J</forename><surname>Nalepa</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">AGH University of Science and Technology</orgName>
								<address>
									<addrLine>Al. Mickiewicza 30</addrLine>
									<postCode>30-059</postCode>
									<settlement>Kraków</settlement>
									<country key="PL">Poland</country>
								</address>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Krzysztof</forename><surname>Kutt</surname></persName>
							<email>kutt@agh.edu.pl</email>
							<affiliation key="aff0">
								<orgName type="institution">AGH University of Science and Technology</orgName>
								<address>
									<addrLine>Al. Mickiewicza 30</addrLine>
									<postCode>30-059</postCode>
									<settlement>Kraków</settlement>
									<country key="PL">Poland</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">HaDEsclipse Integrated Environment for Rules (Tool Presentation)</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">FCAF3924296D0EF2BD031BCAC8BA45B4</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T04:29+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In the paper a presentation of HaDEsclipse is given. It is an environment for design and implementation of rule-based systems within the Semantic Knowledge Engineering (SKE) approach. It is build with the use of the Eclipse framework, integrating the previously developed components of the HaDEs environment. HaDEsclipse integrates modules for conceptual prototyping of rule bases, and a visual editor for logical design of extended decision tables that group rules working in similar context. It also allows for generating an executable form of the system, that can be later executed by an inference engine. While the SKE is targeted mainly at knowledge engineers, the use of the Eclipse framework makes the development easier for software engineers.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction and Motivation</head><p>Rule-based systems (RBS) play an important role in knowledge engineering and software engineering, e.g. with the business rules approach <ref type="bibr" target="#b0">[1]</ref>. However, practical design of rules is a challenging task. It requires both ecient knowledge representation methods for rule bases, as well as practical design tools that support them. The Semantic Knowledge Engineering (SKE) <ref type="bibr" target="#b1">[2]</ref> addresses these problems, by providing the XTT2 <ref type="bibr">[3]</ref> and ARD+ <ref type="bibr">[4]</ref> representation methods, and a dedicated design framework HaDEs, previously presented at KESE <ref type="bibr">[5]</ref>.</p><p>However, HaDEs turned out to be hard to use for knowledge engineers not familiar with SKE as well as for software engineers. This gave the motivation to develop a new front end to HaDEs, based on the popular Eclipse IDE. In this paper we present this new tool called HaDEsclipse <ref type="bibr">[6]</ref>. First, we shortly discuss the SKE design process and how it is supported by HaDEs. Then we present the architecture and selected aspects of implementation of HaDEsclipse.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">SKE Design Process with HaDEs</head><p>Our research concerns the representation and formal verication of RBS. An important result of our research is the SKE (Semantic Knowledge Engineering) <ref type="bibr" target="#b1">[2]</ref> The paper is supported by the AGH UST Grant 15.11.120.361. methodology, which derives from the HeKatE (Hybrid Knowledge Engineering) research project <ref type="bibr">[7]</ref>. It aims at providing an integrated process for design, implementation, and analysis of the RBS supported by HaDEs (HeKatE Design Environment) framework.</p><p>The main features of this methodology are:</p><p>1. Visual rule representation. The provided XTT2 [3] rule representation method that visualizes the rule base in the form of interconnected decision tables, which makes the design more transparent.</p><p>2. Supported rule modeling. The HaDEs framework provides a set of dedicated tools, which facilitate the design process.</p><p>3. Easy rule maintenance. The HaDEs-based design process consists of three stages. The transitions between stages are formally dened and automatically performed. The modication made in one stage can be automatically propagated into the following stages. 4. One rule type. As opposed to Business Rules, SKE provides only one type of rule production rule. However, the methodology provides dierent inference strategies that correspond to dierent types of Business Rules, e.g. derivation rule type corresponds to backward chaining inference mode. 5. Formal rule description and verication. The provided formal rule language based on the ALSV(FD) (Attributive Logic with Set of Values over Finite Domains) logic [7] allows for formalized representation and verication of rules. Moreover, the semantics of rules is precisely dened.</p><p>The SKE approach can be applied to a wide range of intelligent systems. In this context, two main areas have been identied in the project: control systems, in the eld of intelligent control, and Business Rules <ref type="bibr" target="#b0">[1]</ref> and Business Intelligence systems, in the eld of software engineering. The HaDEs framework aims at supporting the SKE approach. In this approach, the application logic is expressed using forward-chaining decision rules. They form an intelligent rule-based controller or simply a business logic core. The logic controller is decomposed into multiple modules represented by decision tables. HaDEs supports a complete hierarchical design process for the creation of knowledge bases. The whole process consists of three stages: conceptual, logical and physical design and is supported by a number of tools providing the visual design and automated implementation <ref type="foot" target="#foot_0">1</ref> .</p><p>The conceptual design is the rst stage of the process. During this step, the ARD+ (Attribute Relationships Diagrams) method is used. The principal idea for this stage is to build a graph dening functional dependencies between attributes on which the rules are built. This stage is supported by two visual tools: VARDA (Visual ARD+ Rapid Development Alloy), and HQEd.</p><p>The logical design is the second stage of the process. During this stage, rules are designed using the visual XTT2 (Extended Tabular Trees version 2 ) [3] method. This phase can be performed as the rst one in the design or as the second one, when the input is provided from the conceptual design. It is supported by the dedicated editor HQEd (HeKatE Qt Editor). HQEd supports the HML format, which allows for importing models generated by VARDA, as well as for saving and loading the state of the design. Having a complete XTT2-based model the physical implementation can be generated automatically. In this stage, a logical model is transformed into an algebraic presentation syntax called HMR<ref type="foot" target="#foot_1">2</ref> (HeKatE Meta Representation).</p><p>HMR is a textual representation of the XTT2 logic. It is a human readable form, as opposed to the machine readable HML format. The HMR representation can be directly executed by the dedicated inference engine tool, called HeaRT<ref type="foot" target="#foot_2">3</ref> (HeKatE Run Time) <ref type="bibr">[8]</ref>. The HeaRT engine has communication and integration facilities. It supports Java integration based on callback mechanism and Prolog JPL library, called JHeroic.</p><p>HaDEs proved to be an ecient framework for designing rule bases within the SKE approach. However, its main limitation is that it is a set of loosely connected tools. Moreover, these tools have custom GUIs, which is problematic for engineers not familiar with SKE. This gave motivation for the development of a new platform, providing a more user friendly front end to HaDEs.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Architecture of HaDEsclipse</head><p>A decision was made to use the popular Eclipse IDE, which is a widely used tool in the software engineering community. Using it a new integrating front end to HaDEs was developed <ref type="bibr">[6]</ref>. HaDEsclipse was implemented as a plugin for Eclipse. It integrates modules for conceptual prototyping of rule bases, and a visual editor for logical design of extended decision tables grouping rules. It also allows for generating an executable form of the system, that can be later executed by an inference engine. Within this plugin, one can manage the whole SKE design process described in the previous section.</p><p>The main functional requirements of HaDEsclipse are aimed at integrating the existing components of HaDEs using Eclipse:  The tool was implemented in Java as a plugin for Eclipse. All of the functional requirements where met. Five modules of HaDEsclipse successfully support the design with SKE. Thanks to HaDEsclipse the models created in the subsequent design phases are easily interchanged between the HaDEs tools. Moreover, the tool allows to run and verify rule models in HeaRT. For the visual design of the XTT2 tables HQEd is used, but les produced with it are exchanged with other tools transparently for the user.</p><p>An example session with the tool is presented in Figures <ref type="figure" target="#fig_2">2 and 3</ref>. In the rst gure the conceptual design with ARD+ is presented. The conceptual model of the rule base is described using a set of attributes and dependencies between them. The HML le contains prototypes of decision tables holding the conditional and decision attributes. In the second gure the HMR editing process is presented. The plugin supports both syntax highlighting and hinting, as well as a structured XML editor in the case of ARD+. Schemas (headers) of the tables are dened base on the HML description. In given tables rules are dened using the xrule construct. In the paper the HaDEsclipse tool was presented. It is an integrating front-end for the HaDEs framework, which supports the knowledge engineering process in the SKE approach <ref type="bibr" target="#b1">[2]</ref>. The new tool makes HaDEs more accessible and useful for software engineers.</p><p>Our future works include further integration of HaDEsclipse with other tools we developed. This includes design tools for business processes, and integration with business process engines. Finally, recent results include an Eclipse-based tool for generating test cases for unit testing based on a rule-based specication. This framework will be integrated with HaDEsclipse, bringing more practical benets from the area of knowledge engineering to software engineers [9]. </p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>1 .</head><label>1</label><figDesc>ARD+ support: (a) Code editor with syntax highlighting, formatter, content assistant and error checking, (b) Integration with VARDA, (c) Wizard to create new ARD+ les. 2. HML support: (a) Code editor with syntax highlighting and checking, content assistant, (b) Integration with HQEd, (c) Wizard to create new HML les. 3. HMR support: (a) Code editor with syntax highlighting, code formatter, content assistant and error checking, (b) Integration with HeaRT. 4. Preferences card: (a) Code editors settings, (b) HaDEs environment parameters. 5. Intuitive Eclipse wizards, views and perspective. The architecture of HaDEsclipse is presented on Fig. 1. It consists of 5 parts: three of them support HaDEs languages and the other two are responsible for view and wizards. Communication with HaDEs environment (VARDA, HQEd, HeaRT) is handled using JHeroic library.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 2 .</head><label>2</label><figDesc>Fig. 2. HML Editor</figDesc><graphic coords="5,172.81,174.19,269.75,198.16" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Fig. 3</head><label>3</label><figDesc>Fig. 3. HMR Editor 3. Nalepa, G.J., Lig¦za, A., Kaczor, K.: Formalization and modeling of rules using the XTT2 method. International Journal on Articial Intelligence Tools 20(6) (2011) 11071125 4. Lig¦za, A.: Logical Foundations for Rule-Based Systems. Springer-Verlag, Berlin, Heidelberg (2006) 5. Kaczor, K., Nalepa, G.J.: HaDEs presentation of the HeKatE design environment. In Baumeister, J., Nalepa, G.J., eds.: 5th Workshop on Knowledge Engineering and Software Engineering (KESE2009) at the 32nd German conference on Articial Intelligence: September 15, 2009, Paderborn, Germany, Paderborn, Germany (2009) 5762 6. Bator, P.: Projekt i implementacja narz¦dzi do edycji wiedzy reguªowej HeKatE na platformie Eclipse. Master's thesis, AGH University of Science and Technology (2012) supervisor: Grzegorz J. Nalepa. 7. Nalepa, G.J., Lig¦za, A.: HeKatE methodology, hybrid engineering of intelligent systems. International Journal of Applied Mathematics and Computer Science 20(1) (March 2010) 3553 8. Nalepa, G.J.: Architecture of the HeaRT hybrid rule engine. In Rutkowski, L., [et al.], eds.: Articial Intelligence and Soft Computing: 10th International Conference, ICAISC 2010: Zakopane, Poland, June 1317, 2010, Pt. II. Volume 6114 of Lecture Notes in Articial Intelligence., Springer (2010) 598605 9. Grzegorz J. Nalepa, K.K.: Proposal of a rule-based testing framework for the automation of the unit testing process. In: Proceedings of the 17th IEEE International Conference on Emerging Technologies and Factory Automation ETFA 2012, Kraków, Poland, 28 September 2012. (2012)</figDesc><graphic coords="6,172.81,116.83,269.75,253.77" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">See: https://ai.ia.agh.edu.pl/wiki/hekate:hades</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">See https://ai.ia.agh.edu.pl/wiki/hekate:hmr.</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2">See https://ai.ia.agh.edu.pl/wiki/hekate:heart</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">Business Rules Applied: Building Better Systems Using the Business Rules Approach</title>
		<author>
			<persName><forename type="first">B</forename><surname>Von Halle</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2001">2001</date>
			<publisher>Wiley</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">Semantic Knowledge Engineering. A Rule-Based Approach</title>
		<author>
			<persName><forename type="first">G</forename><forename type="middle">J</forename><surname>Nalepa</surname></persName>
		</author>
		<imprint/>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
