Bøgebjerg XML Store
This page gives links to information about the XML Store implementation by Kasper Bøgebjerg Pedersen (based on work done by Kasper and Jesper Teilgaard Pedersen).
Please send any comments, requests, or bug reports to Henning Niss.
Software
If you need XML Store for application programming, you may wish to only download the binary jar containing all the relevant pre-compiled class files.
If you are interested in the source code---for example, if you wish to experiment with changes to the implementation---then download the source distribution containing everything needed to build the binary distribution yourself.
Refer to the JavaDoc for initial advice about the use of the classes. It is included in the binary distribution.
| Binary jar: | bogebjerg-xmlstore-1.1.jar |
| Binary distribution: | bogebjerg-xmlstore-1.1.tar.gz |
| Binary distribution: | bogebjerg-xmlstore-1.1.zip |
| Source distribution: | bogebjerg-xmlstore-1.1-src.tar.gz |
| Source distribution: | bogebjerg-xmlstore-1.1-src.zip |
Dependencies
This release of XML Store requires the following jars:
| JLex-1.2.6.jar | www.cs.princeton.edu/~appel/modern/java/JLex/ |
| java_cup-0.10.jar | www.cs.princeton.edu/~appel/modern/java/CUP/ |
| xml-writer-0.2.jar | www.megginson.com/Software/ |
To build the source distribution we recommend the Apache Ant tool.
Getting started: an example
TBA: give a short example here
import org.planx.xmlstore.*;
import org.planx.xmlstore.stores.*;
import org.planx.xmlstore.input.*;
import java.io.*;
public class XMLStoreExample {
public static void main(String[] args)
throws XMLStoreException, XMLStoreXMLException, UnknownValueReferenceException, IOException
{
if(args.length < 1){
System.err.println("Usage: java XMLStoreExample <xml file>");
return;
}
// Create XML Store
XMLStore xmlstore = new WriteBufferXMLStore("myxmlstore.disk");
// Use SAX parser to construct a representation of the file
Node n = SAXBuilder.build(args[0]);
// ... and save it to disk
ValueReference vref = xmlstore.save(n);
// Load the first child
Node c = xmlstore.load(vref).getChildNodes().getNode(0);
// ... and print it's tag
System.out.println(c.getNodeValue());
xmlstore.close();
}
}
Changes
| 2004/02/17 | Major new release | Added Thomas Ambus' XPath and Peer-to-Peer Routing implementations. Major clean-ups. Many bug-fixes. HN |
| 2003/04/18 | Added DocNode | Added Thomas Ambus' navigation infrastructure (called DocNode). HN |
| 2003/04/14 | Bug fix | Fixed the bug that would make the XML Store throw an exception on startup if the store was already in use. HN |
| 2003/04/14 | New package names | Renamed all packages to org.planx.* instead
of edu.it.*.
HN
|
Resources
- Design and evaluation of the implementation; Kasper's thesis.
Thomas Ambus)