SILRI

The version described here is outdated. Please refer to www.ontoprise.com/download for the newest version.

(Simple Logic-based RDF Interpreter) SiLRI is a main-memory logic-based inference engine implemented in Java.  It implements a major part of Frame-Logic and has support for RDF (Resource Description Format, the metadata standard of the W3C). The implemented semantics include well-founded semantics and the rule language allows general logic programs, enabling a specification like modeling. For a description what you can do with it, please have a look at:

Stefan Decker, Dan Brickley, Janne Saarela, Jürgen Angele:
A Query and Inference Service for RDF
In: QL'98 - The Query Languages Workshop.

To install SiLRI please perform the following steps:

  1. Retrieve the latest distribution of SiRPAC (SiRPAC - Simple RDF Parser & Compiler) from the Web site at http://www.w3.org/RDF/Implementations/SiRPAC/. Please follow the installation instructions there. Ensure that you have a working version of SiRPAC before you proceed. The actual version of SiRLRI needs a SiRPAC Version >= 1.11 and does not run anymore with older versions.
  2. Retrieve the latest distribution of SiLRI from the Web site at http://www.aifb.uni-karlsruhe.de/~sde/rdf/SiLRI1_1_1.zip. The actual version is 1.1.1. Sources are included. See history below for more information.
  3. Unzip the package with winzip (on MS-Windows based plattforms) or the unzip command (on Unix based plattforms) similar to
  4. unzip -r SiLRI.zip
    This will create a new subdirectory where all the distribution files are. A note for unix users: you can use the jar utility included in the Java Development Kids instead unzip.
  5. Copy the whole 'edu' subtree somewhere where your CLASSPATH points to now OR add the SiLRI distribution directory to your CLASSPATH
  6. cp -r edu ~/classes OR setenv CLASSPATH $HOME/SiLRI-1.1.1/ie:$CLASSPATH
  7. Run the interpreter with command
  8. java -Dorg.xml.sax.parser=<classname> edu.unika.aifb.rdfie.SiLRI -rdf RDFFILE -simple DATALOGFILE FLOGICFILE
    Where <classname> is your SAX compliant XML parser of choice (that you installed when you installed SiRPAC, see above. If you don't give a value for this system property, ibm xml4j Version 1.1.16 is assumed as the default XML parser, the correct value for <classname> would be com.ibm.xml.parser.SAXDriver). You can use as many source files has you want.
  9. Ensure, that the simple example in tryme.bat or tryme is working (use the correct XML-parser!). It should deliver one single answer (X = literal("Ora Lassila")). Adapt path-settings is necessary.
  10. Please send bugreports or comments/suggestions to Stefan.Decker@aifb.uni-karlsruhe.de
  11. Thanks to Dan Brickley, Janne Saarela, and Eric Miller for comments and work on SiLRI.
  12. Enjoy!
  13. Version history:
    1. SiLRI-1.0: Initial Release
    2. SiLRI-1.01: Bugfix Release. Corrected tripel-argument problem. Changed evaluation method back to dynamic with stratified negation due to a bug in the well-founded evaluation method. Some minor modifications. This outdated version is still available.
    3. SiLRI-1.1: Internal enhancements, Bugfix-Relase, adapted RDFEvaluator to org.desire.rudolf.rdf.RDFModelCore Interface (thanks to Dan Brickley) and to new SiRPAC-Interface (thanks to Janne Saarela).
    4. SiLRI-1.1.1 Bugfix release. Corrected bug caused double evaluation. Well-founded evaluation is activated by default. hasAssertion delivered wrong result (thanks to Dan Brickley).
  14. Wish-list for the next major release: Regular Expression Support, String builtins, Database Interface, streaming RDF parser, builtin XQL-support, general performance enhancements, RDFS and Frame-Logic integration, interactive shell,

  15. Close Java-Integration (Variables can be instantiated by Java-Objects)
  16. Wish-list for future releases: KQML-Agent, Agent-architecture, XSB integration