A stupid speed test is supplied in
bench.js. We measure how many
25-byte elements a SAX parser can process:
- libxmljs (libxml2 binding): 77,000 el/s
- node-expat (libexpat binding, this): 113,000 el/s
These numbers were recorded on a Core 2 2400 MHz and may turn out to be bullshit, given my few node.js experience.
node-waf configure node-waf build
For using the library, make sure
build/default/expat.node is in
Important events emitted by a parser:
- startElement with
- endElement with
- text with
There are more. Use
test.js for reference.
We don't emit an error event because libexpat doesn't use a callback
either. Instead, check that
true. A descriptive
string can be obtained via
getError() to provide user feedback.
A word about special parsing of xmlns: this is not neccessary in a bare SAX parser like this, given that the DOM replacement you are using (if any) is not relevant to the parser.