Jez Higgins

Freelance software grandad
software created
extended or repaired


Follow me on Twitter
Applications, Libraries, Code
Talks & Presentations

Hire me
Contact

Older posts are available in the archive or through tags.

Feed

Arabica - An XML and HTML processing toolkit

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.

2020

2012

2010

2009

2008

2007

2006

2005

2004

2003

2002

2001

Tags

2000ad 8freight ASL academia academic-freedom accu-conference android arabica archangel article asa-conversion-tables astonished-by-software audax autoconf autotools awk awkward-wine badger batman bbc being-hit-on-the-head-with-a-crowbar big-society birds birmingham birthday blockchain boardgames bob-mould books boost bristol broad-beans brum.js brumphp bus c c++ cake cat chad-varah chill christmas ci clang code coffee-time-comics colin-pillinger comics compost cooking-with-pete courgettes cricket cucumber culture-clash curry cyclestreets cycling daisyworld daniel diwali doctor-who dog douglas-adams dragonslayer election email emma-mulqueeny exeter feynman fleetwood-mac fnord folk-dance for-the-emporer fp fred-hoyle gdfaf gnu-project groovy gymnastics harry hedgehog hidden-britain hitchhikers-guide hockey hull icecream internet-is-good iphone iterators java javascript jenkins jethro-tull john-lloyd john-otway judas-priest kamen-rider knees kwic lakos linux llamasoft london lou-reed mac machine-learning machu-picchu mango maps mars mass-spectrometry merry-christmas meteoritics methane michael-gove microsoft milking-machines mitch-benn modified-toy-orchestra moon moseley-folk-festival mystery-frogspawn mystery-pond neal-stephenson netball new-zealand news-agenda ninja nordev nordevcon norfolk not-comics on-tour openoffice org ornithology oy-vey panspermia paper-round park pendolinos police porting programming-on-tv python quarks rails raimi ranges recipe reddit regex retrofuturism rillet ruby saxon schools screaming-females sed-madness sherlock-holmes shoreditch software-process software-tools-in-c++ space spider-man sport star-wars sulis swimming talk tandem teeth the-culture the-destroyers the-hooters the-tick time tms tommy-godwin trackman traffic trains tsundoku twats-in-cars ubuntu unknown-fungus validation venice wales walking wallet warren-zevon william-gibson william-shatner wrestling wubi wymondham xml xslt


Jez Higgins

Freelance software grandad
software created
extended or repaired

Follow me on Twitter
Applications, Libraries, Code
Talks & Presentations

Hire me
Contact

Older posts are available in the archive or through tags.

Feed