Explorative Debugging for Rapid Rule Base Development

We present Explorative Debugging as a novel debugging paradigm for rule based languages. Explorative Debugging allows truly declarative debugging of rules and is well suited to support rapid, tryand-error development of rules. We also present the Inference Explorer, an open source explorative debugger for horn rules on top of RDF. 1 Debugging Semantic Web Rules Semantic Web rule languages can be an important tool for the rapid development of Semantic Web applications [7]. The large scale use of these languages is, however, currently still hampered by missing tool support for their creation in particular missing debugging support. Debugging support for Semantic Web rule bases must address two challenges: – It is known that web developers have a particularly high percentage of end user programmers [9, 6]; hence development tools for the Semantic Web have to take special care to adjust to end user programmers. For debugging tools this means in particular to support the try and error, rapid, incremental development process often observed with end user programmers [10, 11]. – Rules are declarative programs that describe what is true but not how something is calculated. A debugger must take this into account. This paper starts with a definition of rules and an introduction into the rule syntax used throughout this paper. It then discusses existing debugging approaches and their limitations. After these have been established, it proposes Explorative Debugging as a better debugging paradigm. It describes the building blocks of Explorative Debugging and shows how they are implemented in the Inference Explorer application.

[1]  J. Carroll,et al.  Jena: implementing the semantic web recommendations , 2004, WWW Alt. '04.

[2]  Mary Beth Rosson,et al.  Everyday Programming: Challenges and Opportunities for Informal Web Development , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[3]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[4]  Marc Eisenstadt,et al.  The transparent Prolog machine - visualizing logic programs , 1991 .

[5]  Jos de Bruijn,et al.  A Realistic Architecture for the Semantic Web , 2005, RuleML.

[6]  Margaret M. Burnett,et al.  Rewarding "Good" Behavior: End-User Debugging and Rewards , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[7]  Warren Harrison The Dangers of End-User Programming , 2004 .

[8]  Jan Wielemaker,et al.  An Overview of the SWI-Prolog Programming Environment , 2003, WLPE.

[9]  Margaret Burnett,et al.  Six challenges in supporting end-user debugging , 2005, WEUSE@ICSE.