Class Nokogiri::XML::Reader
In: lib/nokogiri/xml/reader.rb
Parent: Object

Nokogiri::XML::Reader parses an XML document similar to the way a cursor would move. The Reader is given an XML document, and yields nodes to an each block.

Here is an example of usage:

  reader = Nokogiri::XML::Reader(<<-eoxml)
    <x xmlns:tenderlove='http://tenderlovemaking.com/'>
      <tenderlove:foo awesome='true'>snuggles!</tenderlove:foo>
    </x>
  eoxml

  reader.each do |node|

    # node is an instance of Nokogiri::XML::Reader
    puts node.name

  end

Note that Nokogiri::XML::Reader#each can only be called once!! Once the cursor moves through the entire document, you must parse the document again. So make sure that you capture any information you need during the first iteration.

The Reader parser is good for when you need the speed of a SAX parser, but do not want to write a Document handler.

Methods

Included Modules

Enumerable

Attributes

encoding  [R]  The encoding for the document
errors  [RW]  A list of errors encountered while parsing
source  [R]  The XML source

Public Instance methods

Get a list of attributes for the current node

Get a list of attributes for the current node.

Move the cursor through the document yielding each node to the block

[Validate]