A Homogeneous Reaction Rule Language for Complex Event Processing

Event-driven automation of reactive functionalities for complex event processing is an urgent need in today's distributed service-oriented architectures and Web-based event-driven environments. An important problem to be addressed is how to correctly and efficiently capture and process the event-based behavioral, reactive logic embodied in reaction rules, and combining this with other conditional decision logic embodied, e.g., in derivation rules. This paper elaborates a homogeneous integration approach that combines derivation rules, reaction rules and other rule types such as integrity constraints into the general framework of logic programming, the industrial-strength version of declarative programming. We describe syntax and semantics of the language, implement a distributed web-based middleware using enterprise service technologies and illustrate its adequacy in terms of expressiveness, efficiency and scalability through examples extracted from industrial use cases. The developed reaction rule language provides expressive features such as modular ID-based updates with support for external imports and self-updates of the intensional and extensional knowledge bases, transactions including integrity testing and roll-backs of update transition paths. It also supports distributed complex event processing, event messaging and event querying via efficient and scalable enterprise middleware technologies and event/action reasoning based on an event/action algebra implemented by an interval-based event calculus variant as a logic inference formalism.

[1]  Marek J. Sergot,et al.  A logic-based calculus of events , 1989, New Generation Computing.

[2]  Harold Boley The RuleML Family of Web Rule Languages , 2006, PPSWR.

[3]  Adrian Paschke The Reaction RuleML Classification of the Event / Action / State Processing and Reasoning Space , 2006, ArXiv.

[4]  A. Paschke,et al.  NPL: Negotiation Pattern Language A Design Pattern Language for Decentralized Coordination and Negotiation Protocols , 2006 .

[5]  Adrian Paschke RBSLA: Rule-based Service Level Agreements , 2007 .

[6]  Adrian Paschke A Typed Hybrid Description Logic Programming Language with Polymorphic Order-Sorted DL-Typed Unification for Semantic Web Type Systems , 2006, OWLED.

[7]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[8]  Michael Schroeder,et al.  PROVA: Rule-Based Java-Scripting for a Bioinformatics Semantic Web , 2004, DILS.

[9]  David E. Culler,et al.  SEDA: An Architecture for Scalable, Well-Conditioned Internet Services , 2001 .

[10]  Adrian Paschke,et al.  RBSLA: Rule based service level agreements: RBSLA; knowledge representation for automated e-contract, SLA and policy management , 2007 .

[11]  Michael Kifer,et al.  Transaction Logic Programming (or, A Logic of Procedural and Declarative Knowledge) , 1995 .

[12]  Sharma Chakravarthy,et al.  Composite Events for Active Databases: Semantics, Contexts and Detection , 1994, VLDB.

[13]  Adrian Paschke ECA-RuleML: An Approach combining ECA Rules with temporal interval-based KR Event/Action Logics and Transactional Update Logics , 2006, ArXiv.

[14]  J. W. Lloyd,et al.  Foundations of logic programming; (2nd extended ed.) , 1987 .