Scope

Reaction RuleML covers constructs for (complex) events, actions
and states/fluents/transition (changeable properties and transitions)
definition and processing/reasoning according to the Reaction
RuleML Classification of the Event / Action / State Definition
and Processing Space
Modularization
Reaction RuleML follows the design priciple of RuleML
and defines new constructs within seperated modules which are
added to the RuleML
familiy as additional layers on top of the hornlog
layer of RuleML. The layers are not organized around complexity,
but add different modelling expressiveness to the RuleML
core for the representation of behavioural (re)action and
KR event/action logic. The language fulfils typical criteria for
good language design such as minimality, symmetry
and orthogonality. With minimality we mean that Reaction
RuleML provides only a small set of needed language constructs
in addition to the existing constructs in RuleML, i.e., the same
meaning cannot be expressed by different language constructs.
Symmetry is fulfilled in so far as the same language constructs
always expresses the same semantics regardless of the context
they are used in. Orthogonality permits every meaningful combination
of a language constructs to be applicable. Moreover, Reaction
RuleML satisfies typical knowledge representation adequacy criteria
such as epistemological adequacy w.r.t. the various application
domains of reaction/action/production rules and KR event / action
logics:
"A representation is called epistemologically adequate
for a person or a machine if it can be used practically to express
the facts that one actually has about the aspects of the world.„
McCarthy/Hayes 1969

Examples
Reaction RuleML examples
XSD Schemas
A stable XML Schema specification of Reaction
RuleML 0.1 has been created.
Syntax
Core Reaction Rule 0.1 Syntax:
Reaction ::= [oid,] [event,] [body,] [action] [,postcond] [,alternative]
event ::= Naf | Neg | Atom | Message | Reaction
body ::= Naf | Neg | Atom | And | Or
action ::= Atom | Assert | Retract | Message
postcond ::= Naf | Neg | Atom | And | Or
alternative ::= Atom | Assert | Retract
complete syntax and content models>>
Glossary
Small glossary with basic constructs/tags - a more detailed description
will follow soon:
- Reaction: General reaction rule construct
- @exec: Denotes execution style of the reaction rule:
"active | passive | reasoning"; default = "passive"
- @kind: Required attribute denoting the kind of the
reaction rule, i.e. the rule pattern which defines the constituent
parts of the reaction rule
- @eval: Attribute denoting the interpretation of
the reaction rule: "strong | weak"; default="strong"
- event, body, action, postcond, alternative: Role
tags for the reaction rule parts which might be omitted (see
RuleML role and type tags)
- Message: Defines an inbound or outbound message
- @mode: Attribute denoting the mode (inbound or outbound)
of a message event/action: "inbound/outbound"
- @directive: A directive, e.g. a FIPA ACL performative
such as "ACL:inform" or "ACL:confirm"
- Assert, Retract: OID-based update primitives to
update the intensional and extensional KB
- @safety: Attribute denoting whether the update is
transactional or not, i.e. might be rolled-back resp. comitted:
"transactional | normal"; default = "normal"
- Initiates, Terminates: KR event/action logics construct
initiating or terminating a state (a.k.a. fluent)
- state: Role tag for fluents/states in KR event /
action logics
Validation
You can validate your Reaction RuleML XML documents online with
the Reaction RuleML Validator
Translators
You can translate your Reaction RuleML XML documents with the Reaction RuleML Translators
References
- Reaction RuleML Consensual Presentation (RRCP):
./docs/RRCP.pdf
- MOF RuleML: The Abstract Syntax of RuleML as a MOF Model:
http://www.omg.org/docs/br/03-10-02.pdf
- Paschke, A.: ECA-RuleML/ECA-LP: A Homogeneous Event-Condition-Action
Logic Programming Language, at Int. Conf. of Rule Markup Languages
(RuleML'06),
Athens, Georgia, USA, 2006. (pdf)
- Transaction Logics: http://flora.sourceforge.net/aboutTR.php
- KR event / action logics: Event
Calculus, Situation
Calculus, Temporal
Action Logics
- ECA-RuleML / ECA-LP: An Event Condition Action Logic Programming
Language:
eca
- Chakravarthy, S., Mishra, D. An Event Specification Language
(SNOOP) for Active Databases and its Detection. TR-91-23, U.
Florida, 1991.
- OMG Production Rule Representation (PRR): http://www.w3.org/2004/12/rules-ws/paper/53/
- Prova: http://www.prova.ws/
and RBSLA/ContractLog: http://ibis.in.tum.de/research/projects/rbsla/index.php
- W3C Rule Interchange Format (RIF) Working Group Charter: Load
and Query Rule Engine