Arabica is an XML and HTML processing toolkit, providing SAX2, DOM, XPath, and XSLT implementations, written in Standard C++
C++ XSLT Batchfile HTML CMake Shell
Failed to load latest commit information.
bin Useful performance testing example May 1, 2009
cmake CMake tweaking Nov 1, 2012
doc Updated copyright dates Nov 2, 2012
examples Removed last of the std::string-isms. Nov 21, 2012
include Merge branch 'master' of Dec 11, 2015
m4 Removed m4 macros provided by autotools Dec 2, 2015
src Fixed c++11-narrowing errors for C++11 compatibility Nov 4, 2013
tests Add xslt_test_silly back into Nov 26, 2012
vs10 Add tests back into solution Sep 14, 2012
vs2012 Set /bigobj flag so it will compile Nov 21, 2012
vs7 Moved CMake files into subdir Nov 1, 2012
vs8 Added back vs7 and vs8 dirs, with explanatory readmes Oct 22, 2010
vs9 Added -D NO_BOOST to release config May 22, 2012
.bzrignore Setup DOM conformance files path so we can find them when running und… Dec 15, 2010
.gitignore Ignore Dec 23, 2015
AUTHORS sept 2006 release Sep 12, 2006
CMake.README Sorted Nov 1, 2012
CMakeLists.txt Conditionalize changes to CMakeLists.txt Jan 7, 2013
COPYING Bumped copyright date Jan 4, 2013
ChangeLog Updated to point at loggerhead browser Jan 13, 2010
INSTALL sept 2006 release Sep 12, 2006 Include DOM conformance tests in dist package Dec 9, 2010
NEWS minor text files update Apr 7, 2008
README Renamed Sep 7, 2012 install headers into arabica subdirectory Nov 21, 2009
config.guess updated libtool Jul 31, 2009
config.sub updated libtool Jul 31, 2009 Bumped date to January 2016 Feb 14, 2016
depcomp sept 2006 release Sep 12, 2006
install-sh updated libtool Jul 31, 2009



*Arabica is an XML and HTML processing toolkit*, providing *SAX2*, *DOM*, *XPath*, and *XSLT* implementations, written in *Standard C++*

* *SAX* is an event-based XML processing API. Arabica is a full SAX2 implementation, including the optional interfaces and helper classes. It provides uniform SAX2 wrappers for the Expat parser, Xerces, Libxml2 and, on Windows, for the Microsoft XML parser.
* The *DOM* is a platform- and language-neutral interface which models an XML document as a tree of nodes, defined by the W3C. Arabica implements the DOM Level 2 Core on top of the SAX layer.
* *XPath* is a language for addressing parts of an XML document. Arabica implements XPath 1.0 over its DOM implementation.
* *XSLT* is a language for transforming XML documents into other XML documents. Arabica builds XSLT over its XPath engine.
* In addition to the XML parser, Arabica includes Taggle, an *HTML parser* derived from TagSoup. 

Arabica is written in Standard C++ and should be portable to most platforms. It is parameterised on string type. Out of the box, it can provide UTF-8 encoded std::strings or UTF-16 encoded std::wstrings, but can easily be customised for arbitrary string types.

Arabica is available under a BSD-style license.

For latest Arabica news, please see
For build notes see