National Pest Management

    big-xml

    1.0.0 • Public • Published

    big-xml -- Lightweight XML parser for really big files

    A record-by-record XML reader, for node.js, based on node-expat.

    Designed for big XML files (1GB+), and low memory usage.

    Install

    npm install big-xml
    

    or from source:

    git clone git://github.com/jahewson/node-big-xml.git
    cd node-big-xml
    npm link
    

    Example

    XML files are streamed, and parsed one record at a time, which keeps memory usage low.

    You must specify which XML elements should be considered as the root of a record, using a regex. In this example the elements Foo and Bar will be emitted as records.

    var bigXml = require('big-xml');
        
    var reader = bigXml.createReader('data.xml.gz', /^(Foo|Bar)$/, { gzip: true });
     
    reader.on('record', function(record) {
      console.log(record);
    });

    The output would take the form:

    { tag: 'Foo',
      attrs: { Name: 'John', Status: 'Student' },
      children: [
        { tag: 'Color', text: 'blue'} 
      ]
    }

    And if you want to handle errors (by default they are thrown):

    reader.on('error', function(err) {
      console.log(err);
    });
    

    Keywords

    none

    Install

    npm i big-xml

    DownloadsWeekly Downloads

    363

    Version

    1.0.0

    License

    none

    Last publish

    Collaborators

    • jahewson