0.1.0 • Published 5 years ago

radialxml v0.1.0

Weekly downloads
3
License
MIT
Repository
github
Last release
5 years ago

Differences from the upstream libxmljs

Currently the major difference between this library and the upstream libxmljs is that an XSD schema is parsed only once and cached for future uses. This reduces the problems associated with running a large number of XSD validations.

The eventual goal is to make this library completely context-aware, so it will play nicely with Node's worker threads and other future multi-isolate environments.

Libxmljs

LibXML bindings for node.js

var libxmljs = require("libxmljs");
var xml =  '<?xml version="1.0" encoding="UTF-8"?>' +
           '<root>' +
               '<child foo="bar">' +
                   '<grandchild baz="fizbuzz">grandchild content</grandchild>' +
               '</child>' +
               '<sibling>with content!</sibling>' +
           '</root>';

var xmlDoc = libxmljs.parseXml(xml);

// xpath queries
var gchild = xmlDoc.get('//grandchild');

console.log(gchild.text());  // prints "grandchild content"

var children = xmlDoc.root().childNodes();
var child = children[0];

console.log(child.attr('foo').value()); // prints "bar"

Support

API and Examples

Check out the wiki http://github.com/libxmljs/libxmljs/wiki.

See the examples folder.

Installation via npm

npm install libxmljs

Contribute

Start by checking out the open issues. Specifically the desired feature ones.

Requirements

Make sure you have met the requirements for node-gyp. You DO NOT need to manually install node-gyp; it comes bundled with node.