Skip to content

Latest commit

 

History

History
62 lines (41 loc) · 1.86 KB

Readme.md

File metadata and controls

62 lines (41 loc) · 1.86 KB

NPM version Build Status Dependency Status Dev Dependency Status

sax-stream

Transform stream for parsing large XML files. It is using SAX module internally. Emits objects: one object per each selected node.

Installation

  $ npm install sax-stream

Usage

Use as any transform stream: pipe request or file stream to it, pipe it downstream to another transform/writeable stream or handle data event.

var saxStream = require('sax-stream');


request('http://blog.npmjs.org/rss')
  .pipe(saxStream({
  	strict: true,
    tag: 'item'
  })
  .on('data', function(item) {
    console.log(item);
  });

API

Create passing options object:

  • tag - name of the tag to select objects from XML file, an Array of tag names can be used - when multiple tags are specified stream pushes { tag, record } tuples
  • highWaterMark - size of internal transform stream buffer - defaults to 350 objects
  • strict - default to false, if true makes sax parser to accept valid XML only
  • trim, normalize, lowercase, xmlns, position, strictEntities, noscript - passed to sax parser

License

MIT