The r3 prototype is implemented as a Java 5 Servlet, with minimal use of JavaServer Pages in the prototype frontend. The r3 Servlet embeds Apache Axis 1.3, providing SOAP 1.1 support, and is packaged as a WAR file (r3.war) (released under the Apache License - version 2.0), allowing easy installation under any servlet container (e.g. just copy the WAR file to the webapps directory of your Apache Tomcat installation - tested with version 5.5.12).
The core of the r3 ECA rule engine relies heavily upon Jena 2.4 for RDF support (wrapped in Jastor-like Java classes). Nevertheless, this core is implemented using Prova (version 1.9, commit 14, patched). The use of Prova embedded in a Servlet required the development of an extension to the Java/Prova integration mechanisms. The extended/patched version of Prova is also included in the package.
Besides all the needed resources (e.g. the application library (r3.jar) and other required Java libraries like Axis, Jena or Prova), the WAR package also contains a full copy of these pages. If you just want to browse these pages offline, you may download the smaller package (r3.zip), unzip it and browse through the files. Browsing these pages offline has weaker security restrictions, that may even allow the test of any existing r3 application that you are aware of (just by redirecting the URL of the r3 Server in the prototype frontend).
The r3 prototype includes, not only the main ECA rule engine, but also, several evaluator sub-engines supporting some particular rule component languages. The evaluator engines that support Xcerpt and XChange languages are mainly wrappers around the existing TCP servers for both of them, so in order to use these languages you must have the appropriate TCP servers running (the XChange wrapper requires both servers).
The available implementations for Xcerpt and XChange TCP servers are research prototypes (just like r3), so versioning is a bit elusive. Both prototypes are developed using Haskell, and binary versions may not be available for all platforms, or if available they might be a bit outdated. The current version of the r3 wrappers requires the use of the most recent version of the sources (as of September 2006) for both prototypes. If you are using a Windows (32 bits) platform (be sure that you have a /tmp folder and) you may simply grab the compiled binaries (xc.zip) for both servers (compiled using GHC 6.4), although there seems to exist some issue that is preventing the XChange server from writing to disk (a Permission Denied error occurs). Otherwise, you may check the respective sites for a compatible compiled version for your preferred platform (which is not yet available at the time of this writing). If an adequate binary is not yet available, you may have to compile it yourself.
Currently, to compile a compatible binary of any of the prototypes, you will have to grab the latest development snapshots available in the respective Subversion repositories. The current r3 version was tested with revision 10 of XChange (available in the XChange repository, but you may need to contact the XChange team in order to get access). Regarding Xcerpt, the r3 wrapper requires revision 595 (available in the Xcerpt repository, anonymous access is allowed), but beware that you will need to compile an updated version of XcerptDaemon.hs (already approved, but not yet committed, by the Xcerpt team).
Also available, a snapshot of the libraries and projects matching the r3 version installed in our development server (only those different from the current version, available here, are included).
Last modified: |