Skip to content
Simple SAX-based xml to JS object parser
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Node.js xml2object

Simple wrapper on the SAX.js parser to parse xml into javascript objects.

Converts a streaming xml file into JavaScript objects.


npm install xml2object


var xml2object = require('xml2object');

// Create a new xml parser with an array of xml elements to look for
var parser = new xml2object('myAnimals.xml', [ 'animal' ]);

// Bind to the object event to work with the objects found in the XML file
parser.on('object', function(name, obj) {
    console.log('Found an object: %s', name);

// Bind to the file end event to tell when the file is done being streamed
parser.on('end', function(name, obj) {
    console.log('Finished parsing xml!');

// Start parsing the XML


xml2object(xmlFile, elements)

Constructor for creating an instance of the xml parser

var xml2object = require('xml2object');

// Parse the myAnimals.xml file looking for <animal> elements
var parser = new xml2object('myAnimals.xml', [ 'animal' ]);


Triggers the xml file to start streaming to the parser. Call this method after you have bound to the events.

Event: 'object'

function(name, obj) { ... }

Triggered when an object has been parsed from the XML file with the name of the element found and the actual object.

Event: 'end'

function() { ... }

Marks the end of the input file when it has been completely streamed through the parser.

Something went wrong with that request. Please try again.