the antecedents and a head element for the con-
sequent. The content of a head or a body is
an AtomList, which is composed of a number of
Atoms. There are four primary types of Atoms in
SWRL: ClassAtom, DatavaluedPropertyAtom, Indi-
vidualPropertyAtom, and BuiltinAtom. ClassAtom is
a unary predicate for declaring the class of an ob-
ject, where the object can be either an identifier or
a variable. DatavaluedPropertyAtom and Individual-
PropertyAtom are binary predicates that are used to
associate an object with a value or another object. A
BuiltinAtom is an element embedded with a functional
predicate that supports a predefined operation.
According to the specification shown in Figure 2,
an antecedent can be either a predicate based on a
FactType definition or a functional predicate which
implements an operation. The translation consists of
three parts. The first part translates antecedent predi-
cates based on FactType definitions, or non-functional
predicates, into SWRL ClassAtoms and Property-
Atoms. For example, the first antecedent of the ex-
ample rule in 2.1 “(Person (?name ?age male))” will
be translated into four Atoms as follows.
1
ClassAtom(#C1, #Person)
DatavaluedPropertyAtom(#C1, #name)
DatavaluedPropertyAtom(#C1, #age)
DatavaluedPropertyAtom(#C1, "male")
The second part translates functional predicates in
the antecedent such as arithmetic and comparison op-
erators. It creates a BuiltinAtom with its built-in ele-
ment referring to the URI of the corresponding SWRL
built-in ontology. The arguments to a BuiltinAtom is
a RDF List, and the sequence of the arguments should
be carefully organized if the parameters are defined
differently between the functional predicate and the
SWRL built-in. For example, the second antecedent
of the example rule in 2.1 “(< (?age 12))” will be
translated into a BuiltinAtom as follows.
BuiltinAtom(builtin=swrlb:lessThan,
arguments=(#age, 12))
The last part translates the consequent into a
SWRL ClassAtom and several PropertyAtoms. It is
necessary to identify whether this rule is designed to
update existing individuals or is designed to create
new individuals. If the rule is designed to create new
individuals, we need to declare a new SWRL variable
in the antecedents and use it in the consequent.
The translation from SWRL to legacy rules has
a similar structure. Due to the restriction of us-
ing OWL-Lite, each object declared with ClassAtom
should have non-duplicated PropertyAtoms in order
to satisfy the cardinality requirement of OWL-Lite.
1
The “#” sign is for indicating that it is an URI in the
ontology file. The namespace part is ignored here.
3 EXPERIMENT AND RESULTS
In order to verify this approach, we applied the trans-
lators of both directions to two existing decision sup-
port systems (Airy et al., 2006), with 7 different
legacy knowledge sets in the first system and 9 for the
other one. The tasks of each system include reasoning
information based on its own rule set, generating the
values of predefined decision factors that describe the
situation, and providing recommendations.
We translated the legacy knowledge sets into
OWL and SWRL and then translated them back to the
legacy format. We also checked the consistency be-
tween the situation descriptions generated by the orig-
inal systems and those generated by systems based
on the forward-back translated knowledge given the
same information. All of the test sets show consistent
results, thus confirming that these translators preserve
the functionalities of the legacy systems.
4 CONCLUSIONS
In this paper, a framework for extending legacy
knowledge base systems with semantic Web compat-
ibilities is presented. Although the implementation is
assumed to be system-specific, the methodology can
be applicable to other knowledge base systems.
Future work will include moving forward to sup-
port OWL-DL. Since OWL-DL allows cardinality to
be larger than 1, the current data structure and the
translation algorithms would need to be redesigned.
REFERENCES
Airy, G., Chen, P.-C., Fan, X., Yen, J., Hall, D., Brogan, M.,
and Huynh, T. (2006). Collaborative RPD agents as-
sisting decision making in active decision spaces. In
Proc. of 2006 IEEE/WIC/ACM International Confer-
ence on Intelligent Agent Technology, pages 769–772.
Meditskos, G. and Bassiliades, N. (2008). A rule-based
object-oriented OWL reasoner. IEEE Transactions on
Knowledge and Data Engineering, 20(3):397–410.
O’Connor, M. J., Knublauch, H., Tu, S. W., Grosof, B. N.,
Dean, M., Grosso, W. E., and Musen, M. A. (2005).
Supporting rule system interoperability on the seman-
tic Web with SWRL. In International Semantic Web
Conference, pages 974–986.
Yen, J., Fan, X., Sun, S., Hanratty, T., and Dumer, J. (2006).
Agents with shared mental models for enhancing team
decision-makings. Journal of Decision Support Sys-
tems, 41(3):634–653.
ICEIS 2010 - 12th International Conference on Enterprise Information Systems
134