an XML document, and as these are necessarily ab-
sent from, for example, a Prolog program, a declar-
ative translator in the style of GEDCOM is not pos-
sible. SweetJess (Grosof, 2002) offers robust proce-
dural, bi-directional translation from RuleML to XSB
Prolog; however, it is significantly more cumbersome
to deploy than a declarative system.
For our implementation, we have written a parser
in C (for the details, see www.cscs.wmin.ac.uk/ ∼
douglap/translator.c). Our parser is able to trans-
form Prolog and various CDB forms into ERML,
and can generate ERML from XSB Prolog, SQL or
ECLIPSE. We have tested our translator on a infor-
mation source containing 3,000 facts and rules (in
normal clause form). The C translator took an av-
erage (over 10 runs) of 0.043 seconds to convert the
information source into a ERML format. We used
the Saxon XSLT processor (Kay, 2001) to convert
the ERML file back into normal clause form/Prolog,
which took an average of 2.455 seconds.
4
Thus, the
bidirectional translator for ERML-SQL conversion
adds no appreciable computation costs to access re-
quests. The time taken by our meta-program to eval-
uate access requests is of the order of a few millesec-
onds; the size of the access control program has very
little affect on the timings. It follows that access re-
quest checking and authorized knowledge base gener-
ation can be performed in a time of the order of a few
seconds (for large information sources).
6 CONCLUSIONS
The principal contributions of our work have been: to
specify an algebra that may be used by security ad-
ministrators to define information sources that may
be securely exchanged between agents using hetero-
geneous systems; to define a small but powerful ac-
cess control program that determines what a user is
permitted to access given an RBAC
F
policy specifica-
tion; and to introduce a markup language that permits
secure forms of information sources to be exchanged
between heterogeneous information systems.
In future work, we wish to investigate implemen-
tations of our approach with more expressive alge-
bras. Although RBAC
F
policies are adequate for the
work that we have carried out, we intend to experi-
ment with more expressive forms of RBAC policies in
future work. The approach that we describe may be
applied to problems in secure business rule process-
ing, secure e-commerce, and secure e-contracting. A
4
These results were obtained on a Sun Sparc Ultra 10
machine with a 440MHz CPU and 1Gb RAM running So-
laris 10.
matter for further work is to investigate these applica-
tions.
REFERENCES
Abiteboul, S., Hull, R. and Vianu, V. 1995. Foundations of
Databases. Addison-Wesley.
Apt, K. 1997. From Logic Programming to Prolog. Prentice
Hall.
Baral, C. and Gelfond, M. 1994. Logic Programming and
Knowledge Representation. JLP, vol 19/20, pp73-148.
Barker, S. 2000. Data Protection by Logic Programming.
Proc. 1st International Conference on Computational
Logic. Springer-Verlag.
Barker, S. and Stuckey, P. 2003. Flexible Access Control
Policy Specification with Constraint Logic Program-
ming. ACM Trans. on Information and System Secu-
rity, vol 6, number 4, pp501–546.
Barker, S. 2004. Labeled Logic Programs. Springer-Verlag.
Bhatti, R., Joshi, J., Bertino, E. and Ghafoor, A. 2003.
Access Control in Dynamic XML-Based Web-Services
with X-RBAC. In ICWS 2003, pp243-249.
Bonatti, P., Vimercati, S. and Samarati, P. 2002. An algebra
for Composing access control policies. TISSEC 2002,
vol 5, number 1, pp1-35.
Date, C. 2003. An Introduction to Database Systems.
Addison-Wesley.
Dean, M. 2001. RuleML Experiments with GEDCOM.
www.daml.org/2001/02/gedcom-ruleml/
Eberhardt, A. 2001. Prolog2RuleML Parser. www.i-
u.de/schools/eberhart/prolog2ruleml
Eberhardt, A. 2001. OntoSQL. www.aifb.uni-
karlsruhe.de/WBS/aeb/ontosql/
Grosof, B., Gandhe, M. and Finin, T. 2002.
SweetJess: Translating DAMLRuleML
to JESS. SunSITE.Informatik.RWTH-
Aachen.DE/Publications/CEUR-WS/Vol-
60/grosof.pdf
Jajodia, S., Samarati, P., Sapino, M. and Subrahmaninan,
V. 2001. Flexible Support for Multiple Access Control
Policies. ACM TODS, vol 26, number 2, pp214-260.
Kay, M. 2001. The SAXON XSLT and XQuery Processor.
http://saxon.sourceforge.net/
Kuper, G., Libkin, L. and Paredaens, J. 2000. Constraint
Databases. Springer.
Marriott, K. and Stuckey, P. 1998. Programming with Con-
straints: an Introduction. MIT Press.
Sandhu, R., Ferraiolo, D. and Kuhn, R. 2001. The NIST
Model for Role-Based Access Control: Towards a
Unified Standard. Proc. 4th ACM Workshop on Role-
Based Access Control, pp47–61.
Wijesekera, D. and Jajodia, S. 2001. Policy algebras for ac-
cess control: the propositional case. Proc. ACM Con-
ference on Computer and Communications Security
pp38-47.
SECURE KNOWLEDGE EXCHANGE BY POLICY ALGEBRA AND ERML
217