summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md46
1 files changed, 46 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..57a3884
--- /dev/null
+++ b/README.md
@@ -0,0 +1,46 @@
+Code for the slcon3 "XML damage control" presentation
+=====================================================
+
+This repo contains contains a benchmark of several XML libraries that
+I have written for the presentation. Most of the libraries are C ones
+because the goal is to compare some of the simplest but most efficient
+tools that ease the pain of having to work with XML.
+
+The libraries compared in this benchmark are:
+
+* ezxml
+* simple xml (sxmlc)
+* mini xml (mxml)
+* yxml
+* Go's encoding/xml
+* Python's elementtree
+
+
+Compile
+-------
+
+You will have to install the mini-xml (mxml) library somewhere and
+then make sure that the compiler can find it by editing the Makefile
+(provided the library is not installed in one of the usual places). All
+other libraries have been copied into the benchmark programs (in their
+own C file ending on 'lib').
+
+If you have the mxml library installed you can just run the usual
+
+make
+
+to compile everything.
+
+
+Run the benchmark
+-----------------
+
+To run the benchmark you need the test input which is a subset of all
+the Open Access Pubmed Central full text XML files. The subset used can
+be found in the 'xmldata/subset.txt' file. The input consists of 10'000
+small XML files that have to be copied into their subdirectories in the
+'xmldata' directory.
+
+If you have located and copied all the input files into 'xmldata/'
+you can execute the "runbenchmarks.sh" script to run the benchmark.
+