Create a series of SAX-like XML events (e.g. start_tag, end_tag) from the markup code. XmlEvent objects are used in a way similar to XmlMarkup objects, except that a series of events are generated and passed to a handler rather than generating character-based markup.
xe = Builder::XmlEvents.new(hander) xe.title("HI") # Sends start_tag/end_tag/text messages to the handler.
Indentation may also be selected by providing value for the indentation size and initial indentation level.
XML Event Handler
The handler object must expect the following events.
- start_tag(tag, attrs)
- Announces that a new tag has been found. tag is the name of the tag and attrs is a hash of attributes for the tag.
- Announces that an end tag for tag has been found.
- Announces that a string of characters (text) has been found. A series of characters may be broken up into more than one text call, so the client cannot assume that a single callback contains all the text data.