<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>HeKatE Rule Runtime and Design Framework ?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Grzegorz J. Nalepa</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Antoni Ligƒza</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Krzysztof Kaczor</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Weronika T. Furma«ska</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Automatics, AGH University of Science and Technology</institution>
          ,
          <addr-line>Al. Mickiewicza 30, 30-059 Krakw</addr-line>
          ,
          <country country="PL">Poland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The HeKatE Project aims at providing a complete hierarchical design and implementation framework for rules. Principal ideas of the project include an integrated hierarchical design process covering stages from conceptual, through logical to physical design. These stages are supported by specic knowledge representation methods: ARD+, XTT2, and HMR. Practical design and implementation support using these methods is provided by the HeKatE design environment called HaDEs. A complete custom rule runtime environment HeaRT is provided to run XTT2 rule bases. The engine oers a number of rule-base quality analysis plugins.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Rule-based systems [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] constitute one of the most powerful and most
popular class of intelligent systems. They oer a relatively easy way of knowledge
encoding and interpretation. Formalization of knowledge within a rule-based
system can be based on mathematical logic or performed on the basis of
engineering intuition. Practical design methodologies for intelligent systems remain
a eld of active development. Developing such a methodology requires an
integration of accurate knowledge representation and processing methods [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], as
well as practical tools supporting them. Some of the important features of such
approaches are: scalable visual design, automatic code generation, support for
existing programming frameworks. At the same time quality issues, as well as a
formalized description of the designed systems should be considered.
      </p>
      <p>
        In this paper a new rule runtime and design framework is presented. The
HeKatE project (see hekate.ia.agh.edu.pl ) aims at providing an integrated
methodology for the design, implementation, and analysis of rule-based
systems [
        <xref ref-type="bibr" rid="ref1 ref3">1,3</xref>
        ]. An important goal of the project is to allow for an easy integration of
knowledge and software engineering methods, thus providing a Hybrid
Knowledge Engineering methodology. The project delivers new knowledge
representation methods and practical tools supporting the design process.
? The paper is supported by the HeKatE Project funded from 20072009 resources for
science as a research project.
      </p>
      <p>
        The main paradigm for rule representation, namely the eXtended Tabular
Trees (XTT) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], ensures high density and transparency of visual knowledge
representation. Contrary to traditional, at rule-based systems, the XTT approach
is focused on groups of similar rules rather than single rules. Such groups form
decision tables which are connected into a network for inference.
      </p>
      <p>A top-down design methodology based on successive renement of the project
is introduced. It starts with development of an Attribute Relationship Diagram
(ARD) which describes relationships among process variables. Based on the ARD
model, a scheme of particular XTT tables and links between them are generated.
The tables are lled with expert-provided denitions of constraints over the
values of attributes; they are in fact the rule preconditions. The code for rules
representation is generated and interpreted with provided inference engine. A set
of tools supporting the design and development stages is described.</p>
      <p>This paper provides an overview of the project, its objectives and tools in
Sec. 2. The rule formulation with XTT is shortly described in Sec. 3. Then
in Sec. 4 HeKatE design toolchain called HaDEs is introduced. The HeaRT
inference engine described in Sec. 5. Then a short comparison to selected existing
solutions is given in Sec. 6. Concluding remarks are given in the nal section.
2</p>
    </sec>
    <sec id="sec-2">
      <title>HeKatE Project Overview</title>
      <p>
        The main principles of the HeKatE project are based on a critical analysis of
the state-of-the art of the rule-based systems design (see [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]). They are:
Formal Language for Knowledge Representation . It should have a precise
denition of syntax, properties and inference rules. This is crucial for
determining its expressive power, and solving formal analysis issues.
      </p>
      <p>Internal Knowledge Base Structure . Rules working within a specic context,
are grouped together and form the extended decision tables. These tables
are linked together forming a structure which encodes the ow of inference.
Systematic Hierarchical Design Procedure . A complete, well-founded design
process that covers the main phases of the system lifecycle, from the initial
conceptual design, through the logical formulation, all the way to the physical
implementation, is proposed. Verication of the system model w.r.t. critical
formal properties, such as determinism and completeness is provided.</p>
      <p>
        In the HeKatE approach the control logic is expressed using forward-chaining
decision rules. They form an intelligent rule-based controller or simply a business
logic core. The controller logic is decomposed into multiple modules represented
by attributive decision tables. The emphasis of the methodology is its possible
application to a wide range of intelligent controllers. In this context two main
areas have been identied in the project: control systems, in the eld of intelligent
control, and business rules [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and in the eld of software engineering.
      </p>
      <p>
        HeKatE introduces a formalized language for rule representation [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Instead
of simple propositional formulas, the language uses expressions in the so-called
attributive logic [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This calculus has stronger expressiveness than the
propositional logic, while providing tractable inference procedures for extended decision
tables [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The current version of the rule language is called XTT 2 [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The
current version of the logic, adopted for the XTT 2 language, is called ALSV(FD)
(Attributive Logic with Set Values over Finite Domains ).
      </p>
      <p>HeKatE also provides a complete hierarchical design process for the creation
of the XTT-based rules.</p>
      <p>The main phase of the XTT rule design is called the logical design. This
phase is supported by a CASE tool called HQed.</p>
      <p>
        The logical rule design process may be supported by a preceding conceptual
design phase. In this phase the rule prototypes are built with the use of
ARD. The principal idea is to build a graph, modelling functional
dependencies between attributes on which the XTT rules are built. The version
used in HeKatE is called ARD+ as discussed in [
        <xref ref-type="bibr" rid="ref10 ref9">9,10</xref>
        ]. The ARD+ design is
supported by two visual tools, VARDA and HJed.
      </p>
      <p>The practical implementation on the XTT rule base is performed in the
physical design phase. In this stage the visual XTT model is transformed into
an algebraic presentation syntax called HMR. A custom inference engine,
HeaRT, runs the XTT model.</p>
      <p>Let us now shortly describe the main aspects of the XTT rule formalization.
3</p>
      <p>
        Main Aspects of the XTT Rule Language Formalization
The so-called ALSV(FD) attributive logic [
        <xref ref-type="bibr" rid="ref3 ref5">3,5</xref>
        ] has been introduced with
practical applications for rule languages in mind. In fact, the primary aim of the
presented language is to extend the notational possibilities and expressive power
of the XTT-based tabular rule-based systems [
        <xref ref-type="bibr" rid="ref5 ref8">8,5</xref>
        ]. Some main concepts of the
logic are: attribute, atomic formulae, state representation and rule formulation.
      </p>
      <p>
        After [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] it is assumed that an attribute Ai is a function (or partial function)
of the form Ai : O → 2Di . Here O is a set of objects and Di is the domain
of attribute Ai. As we consider dynamic systems, the values of attributes can
change over time (or state of the system). We consider both simple attributes
of the form Ai : T → Di (i.e. taking a single value at any instant of time) and
generalized ones of the form Ai : T → 2Di (i.e. taking a set of values at a time);
here T denotes the time domain of discourse.
      </p>
      <p>
        The atomic formulae can have the following four forms: Ai = d, Ai = t,
Ai ∈ t, and Ai ⊆ t, where d ∈ D is an atomic value from the domain D of the
attribute and t ⊆ D, t = {d1, d2, . . . , dk}, is a (nite) set of such values. The
semantics of Ai = d is straightforward the attribute takes a single value. The
semantics of Ai = t is that the attribute takes all the values of t (see [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]).
      </p>
      <p>
        An important extension in ALSV(FD) over previous versions of the logic [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
consists in allowing for explicit specication of one of the relational symbols
=,6=,∈, 6∈, ⊆, ⊇, ∼ and 6∼ with an argument in the table.
      </p>
      <p>From the logical point of view the state is represented by the current values of
all attributes specied within the contents of the knowledge-base, as a formula:
(A1 = S1) ∧ (A2 = S2) ∧ . . . ∧ (An = Sn)
(1)
where Ai are the attributes and Si are their current values; note that Si = di
(di ∈ Di) for simple attributes and Si = Vi, (Vi ⊆ Di) for generalised ones,
where Di is the domain for attribute Ai, i = 1, 2, . . . , n.</p>
      <p>Now, consider a set of n attributes A = {A1, A2, . . . , An}. Any XTT rule is
assumed to be of the form:</p>
      <p>(A1 ∝1 V1) ∧ (A2 ∝2 V2) ∧ . . . (An ∝n Vn) −→ RHS
where ∝i is one of the admissible relational symbols in ALSV(FD), and RHS is
the right-hand side of the rule covering conclusions. In practise the conclusions
are restricted to assigning new attribute values, thus changing the system state.
State changes trigger external callbacks that allow for communication with the
environment. The values that are no longer valid are removed from the state.</p>
      <p>
        Based on the ALSV(FD) logic the XTT rule language is provided [
        <xref ref-type="bibr" rid="ref4 ref5 ref8">4,8,5</xref>
        ]. The
language is focused not only on providing an extended syntax for single rules, but
also allows for an explicit structurization of the rule base. XTT introduces
explicit inference control solutions, allowing for a ne grained and more optimized
rule inference than in the classic Rete-like [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] solutions. The representation has
a compact and transparent visual representation suitable for visual editors.
      </p>
      <p>Knowledge representation with XTT incorporates extended attributive table
format. Similar rules are grouped within separated tables, and the whole
system is split into such tables linked by arrows representing the control strategy.
Consider a set of m rules incorporating the same attributes A1, A2, . . . , An: the
preconditions can be grouped together and form a regular matrix, as in Table 1.</p>
      <p>In Table 1 the symbol ∝ij ∈ {=, 6=, ∈, 6∈} for simple attributes and ∝ij ∈ {=
, 6=, ⊆, ⊇, ∼, 6∼} for the generalized ones. In practical applications, however, the
most frequent relations are =, ∈, and ⊆, i.e. the current values of attributes are
restricted to belong to some specic subsets of the domain.</p>
      <p>Ecient inference is assured thanks to ring only rules necessary for achieving
the goal. It is achieved by selecting the desired output tables and identifying the
The HeKatE design process is supported by a number of tools. They help
with the visual design and the automated implementation of rule-based systems
(see https://ai.ia.agh.edu.pl/wiki/hekate:hades ). The complete
framework including the previously discussed methods and tools is depicted in Fig. 1.</p>
      <p>Logical Model
ARD+</p>
      <p>Automated Implementation
V1</p>
      <p>V2</p>
      <p>V3</p>
      <p>VIEWS
HQEd</p>
      <p>XTT2</p>
      <p>Analysis</p>
      <p>Human readable
Machine readable</p>
      <p>HMR
HML
XML serialization
jvm/C++
HeaRT
HaThoR</p>
      <p>CONTROLLER</p>
      <p>MODEL
SWRL
RIF
Drools
Conceptual</p>
      <p>Logical</p>
      <p>Physical</p>
      <p>Visual Design
HJEd/Varda
s
s
e
c
o
r
P
n
g
i
s
e
D</p>
      <p>Implementation Process</p>
      <p>The ARD+ design process is supported by the HJEd visual editor. It is a
cross-platform tool implemented in Java. Its main features include the ARD+
diagram creation with on-line design history available through the TPH diagram.
An example of a design capturing functional dependencies between system
attributes is shown in Fig. 2. Once created, the ARD+ model can be saved in
a XML-based HML (HeKatE Markup Language) le. The le can be then
imported by the HQEd design tools supporting the logical design.</p>
      <p>VARDA is a prototype semivisual editor for the ARD+ diagrams
implemented in Prolog, with an on-line model visualization with Graphviz. The tool
also supports prototyping of the XTT model, where table headers including a
default inference structure are created, see Fig. 3. The ARD+ design is described
in Prolog, and the resulting model can be stored in HML.</p>
      <p>HealthCare</p>
      <p>Medication</p>
      <p>HQEd provides support for the logical design with XTT, see Fig. 4. It is able
to import a HML le with the ARD+ model and generate the XTT prototype.
It is also possible to import the prototype generated by VARDA. HQEd allows
to edit the XTT structure with on-line support for syntax checking on the table
level. Attribute values entered are checked against domains and some possible
anomalies are eliminated.</p>
      <p>The editor is integrated with a custom inference engine for XTT 2 called
HeaRT. The role of the engine is twofold: run the rule logic designed with the
use of the editor, as well as provide on-line formal analysis of the rulebase. The
communication uses a custom TCP-based protocol.</p>
      <p>HaThoR is the HeKatE rule translation framework. Its goal is to provide
rule import and export modules for other languages including RDF and OWL
for ARD and RIF and SWRL (possibly R2ML) for XTT. It is mainly
implemented in XSLT with some extra plugins integrated with HeaRT implemented
in Prolog. An experimental module allows to translate visual XTT
representation to a dedicated UML representation using an XMI-based serialization.
5</p>
    </sec>
    <sec id="sec-3">
      <title>HeaRT Rule Runtime</title>
      <p>HeKatE RunTime (HeaRT) is a dedicated inference engine for the XTT 2 rule
bases, (see https://ai.ia.agh.edu.pl/wiki/hekate:heart ). It is implemented
in Prolog in order to directly interpret the HMR representation which is
generated by HQEd. HMR (HeKatE Meta Representation) is a textual representation
of the XTT2 logic designed by HQEd. It is a human readable form, as opposed
to the machine readable HML format. HeaRT allows to: store and export models
in HMR les, and verify HMR syntax and logic. An example excerpt of HMR is:
xschm th: [today,hour] ==&gt; [operation].
xrule th/1:</p>
      <p>[today eq workday, hour gt 17] ==&gt; [operation set not_bizhours].
xrule th/4:
[today eq workday, hour in [9 to 17]] ==&gt; [operation set bizhours].</p>
      <p>The rst line denes an XTT table scheme, or header, dening all of the
attributes used in the table. Its semantics is as follows: the XTT table th has
two conditional attributes: today and hour and one decision attribute: operation .
Then two examples of rules are given. The second rule can be read as: Rule with
ID 4 in the XTT table called th : if value of the attribute today equals (=) value
workday and the value of the attribute hour belongs to the range ( ∈) &lt; 9, 17 &gt;
then set the value of the attribute operation to the value bizhours .</p>
      <p>
        The engine implements the inference based on ALSV(FD). It supports four
types of inference process, Data and Goal Driven, Fixed Order, and Token
Driven [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Inference is based on assumption, that the system is deterministic.
Conicts should be handled during design process or detected by verication.
      </p>
      <p>HeaRT also provides a modularized verication framework, also known as
HalVA (HeKatE Verication and Analysis). Verication and analysis module
implements: simple debugging mechanism that allows tracking system’s work,
logical verication of models (several plugins are available, including
completeness, determinism and redundancy checks), and syntactic analysis of HMR les
using a DCG grammar of HMR. The verication plugins can be run from the
interpreter or indirectly from HQEd using the communication protocol.</p>
      <p>The engine has communication and integration facilities. HeaRT supports
Java integration based on callbacks mechanism and Prolog JPL library. It allows
for a direct interaction via Prolog console based on callbacks mechanism. HeaRT
can operate in two modes, stand-alone and as TCP/IP server, oering TCP/IP
integration mechanism with other applications. It is possible to create console
or graphical user interface build on Model-View-Controler design pattern.</p>
      <p>There are two types of callbacks related to attributes in HMR les. 1) input
used to get attribute value from user. This can be done by console or graphical
user interface. 2) output used to present an attribute value to user. Callbacks
can be use to create GUI with JPL and SWING in Java.</p>
      <p>To make HeaRT integration easier, there are three integration libraries, JHeroic,
PHeroic or YHeroic. JHeroic library was written in Java. Based on JHeroic one
can build applets, desktop application or even JSP services. It is also possible to
integrate HeaRT with database using ODBC, or Hibernate. YHeroic is a library
created in Python. It has the same functionality as JHeroic but is easier to use
because of Python language nature. PHeroic is the same library but created in
PHP5. It can be used in a dynamic web page based on PHP.
6</p>
    </sec>
    <sec id="sec-4">
      <title>Related Solutions</title>
      <p>Here, the focus is on two important solutions: CLIPS and its Java-based
incarnation Jess, as well as Drools, which inherits some of the important CLIPS
features, while providing a number of high-level integration features. Other
environments include LPA VisiRule.</p>
      <p>XTT provides an expressive, formally dened language to describe rules.
The language allows for formally described inference, property analysis, and
code generation. Additional callbacks in rule decision provide means to invoke
external functions or methods in any language. This feature is superior to those
found in both CLIPS/Jess and Drools. On the other hand, the main limitation
of the HeKatE approach is the state-base description of the system, where the
state is understood as the set of attribute values.</p>
      <p>The implicit rule base structure is another feature of XTT. Rules are grouped
into decision tables during the design, and the inference control is designed
during the conceptual design, and later on rened during the logical design.
Therefore, the XTT representation is highly optimized towards rulebase
structurization. This feature makes the visual design much more transparent and scalable.</p>
      <p>
        In fact all the Rete-based solutions seek some kind of structurization. In the
case of CLIPS it is possible to modularize the rulebase (see chapter 9 in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]).
It is possible to group rules in modules operating in given contexts, and then
provide a context switching logic. Drools 5 oers Drools Flow that allows to
dene rule set and simple control structure determining their execution. In fact
this is similar to the XTT-based solution. However, it is a weaker mechanism
that does not correspond to table-based solution.
      </p>
      <p>A complete design process seems to be in practice the most important issue.
Both CLIPS and Jess are classic expert system shells, providing rule languages,
and runtimes. They are not directly connected to any design methodology. The
rule language does not have any visual representation, so no complete visual
editors are available. Implementation for these systems can be supported by a
number of external environments (e.g. Eclipse). However, it is worth
emphasizing, that these tools do not visualize the knowledge contained in the rule base.</p>
      <p>Drools 5 is decomposed into four main parts: Guvnor, Expert, Flow, Fusion.
It oers several support tools, including an Eclipse-based environment. A design
support feature, is the ability to read Excel les with simple decision tables.
While this is a valuable feature, it does not provide constant syntax checking.</p>
      <p>
        It is crucial to emphasize, that there is a fundamental dierence between a
graphical user interface like the one provided by generic Eclipse-based solutions,
and visual design support and specication provided by languages such as XTT
for rules, and in software engineering by UML. Other dedicated visual rule design
languages include URML [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] that provides a UML-based representation for
rules. Here focus is on single rules, not on decision tables, like in XTT.
7
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>The primary area of interest of this paper is to introduce the main concepts
of the HeKatE project, its methods and tools. The main motivation behind
the project is to speed up and simplify the rule-based systems design process,
while assuring the formal quality of the model. The HeKatE design process
is practically supported by a number of tools presented in the paper. These
include the HeKatE design environment called HaDEs and the rule runtime
called HeaRT. The up-to-date results of the project, as well all the relevant
papers are available at the project website see http://hekate.ia.agh.edu.pl .</p>
      <p>HeKatE project ends in November 2009. Therefore, future work includes a
tighter tool integration, as well as modeling complex cases in order to identify
possible limitations of the methodology. Providing a comparative studies
modelling the same cases in XTT, CLIPS and Drools is planned.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Giarratano</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riley</surname>
            ,
            <given-names>G.D.: Expert</given-names>
          </string-name>
          <string-name>
            <surname>Systems. Thomson</surname>
          </string-name>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>van Harmelen</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lifschitz</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Porter</surname>
          </string-name>
          , B., eds.:
          <source>Handbook of Knowledge Representation. Elsevier Science</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Logical Foundations for Rule-Based Systems</article-title>
          . Springer-Verlag, Berlin, Heidelberg (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A graphical tabular model for rule-based logic programming and verication</article-title>
          .
          <source>Systems Science</source>
          <volume>31</volume>
          (
          <issue>2</issue>
          ) (
          <year>2005</year>
          )
          <fpage>8995</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Hekate methodology, hybrid engineering of intelligent systems</article-title>
          .
          <source>International Journal of Applied Mathematics and Computer Science</source>
          (
          <year>2009</year>
          )
          <article-title>accepted for publication.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Ross</surname>
          </string-name>
          , R.G.:
          <article-title>Principles of the Business Rule Approach. 1 edn</article-title>
          . Addison-Wesley
          <string-name>
            <surname>Professional</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          :
          <article-title>Knowledge representation with granular attributive logic for XTT-based expert systems</article-title>
          . In Wilson, D.C.,
          <string-name>
            <surname>Sutclie</surname>
            ,
            <given-names>G.C.J.</given-names>
          </string-name>
          , FLAIRS, eds.: FLAIRS-20
          <source>: Proceedings of the 20th International Florida Articial Intelligence Research Society Conference : Key West, Florida, May 7-9</source>
          ,
          <year>2007</year>
          , Menlo Park, California, Florida Articial Intelligence Research Society, AAAI Press (may
          <year>2007</year>
          )
          <volume>530535</volume>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Xtt+ rule design using the alsv(fd)</article-title>
          . In
          <string-name>
            <surname>Giurca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Analyti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wagner</surname>
          </string-name>
          , G., eds.
          <source>: ECAI 2008: 18th European Conference on Articial Intelligence: 2nd East European Workshop on Rule-based applications, RuleApps2008: Patras, 22 July</source>
          <year>2008</year>
          , Patras, University of Patras (
          <year>2008</year>
          )
          <fpage>1115</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Conceptual modelling and automated implementation of rule-based systems</article-title>
          . In:
          <article-title>Software engineering : evolution and emerging technologies</article-title>
          .
          <source>Volume 130 of Frontiers in Articial Intelligence and Applications</source>
          . IOS Press, Amsterdam (
          <year>2005</year>
          )
          <fpage>330340</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wojnicki</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Towards formalization of ARD+ conceptual design and renement method</article-title>
          . In Wilson, D.C.,
          <string-name>
            <surname>Lane</surname>
          </string-name>
          , H.C., eds.: FLAIRS-21
          <source>: Proceedings of the twenty-rst international Florida Articial Intelligence Research Society conference: 1517 may</source>
          <year>2008</year>
          ,
          <string-name>
            <surname>Coconut</surname>
            <given-names>Grove</given-names>
          </string-name>
          , Florida, USA, Menlo Park, California, AAAI Press (
          <year>2008</year>
          )
          <fpage>353358</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Forgy</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Rete: A fast algorithm for the many patterns/many objects match problem</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>19</volume>
          (
          <issue>1</issue>
          ) (
          <year>1982</year>
          )
          <fpage>1737</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Lukichev</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wagner</surname>
          </string-name>
          , G.:
          <article-title>Visual rules modeling</article-title>
          .
          <source>In: Sixth International Andrei Ershov Memorial Conference Perspectives of System Informatics</source>
          , Novosibirsk, Russia,
          <year>June 2006</year>
          . LNCS, Springer (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>