Yajxb realizes a connection fom Java to XSB. In contrast to InterProlog, using Yajxb causes Java to call XSB directly via Java's native interface mechanism.
If you want to use XSB within Java and for some reason don't want to use InterProlog, Yajxb is something you might want to try. I wrote it because I needed an inference core for our Semi-Structured Data Query and Inference Language Triple and InterProlog did not really work for me.
I don't know. Actually, it should - the C code looks pretty OS independent. Anyone with a C Compiler for Microsoft Windows out there?
Java loads the XSB system as a shared library. During inital loading, when using XSB Java sometimes crashes nondeterministically (4-10% of loading trys). All I can say so far is, that it seems it is not my fault. Once it is loaded, everything works fine. I hope this get fixed in a future version.
You can use it for whatever you want - as long as you give me some credit. A longish version of the previous sentence is also available.
Download and Install XSB 2.3.
Download Yajxb from http://www-db.stanford.edu/~stefan/rdf/yajxb/yajx b-20010310.tar.gz.
Ungzip und untar Yajxb in the directory, where the main XSB directory resides (XSB).
Change the file 'setjava' according to your settings.Do 'source ./setjava'.
Change the Makefile according to your settings (this should mean you just have to change the LOCAL and JAVA_INC settings).
Create a folder 'lib'.
Type 'make all'.
Edit XSBHello.java . Change the path in the XSB initialization parameters according to your settings.
Type 'javac XSBHello.java' and 'java XSBHello'.
You should get:
XSBHello.java should give you an idea of how to use Yajxb.
Look at the source of the class edu.stanford.db.xsb.XSBCore for more information about the interface.
Stefan Decker (firstname.lastname@example.org)
March 10, 2001