- Inheritance
- < Builder::XmlMarkup < Builder::XmlBase < BlankSlate < Object
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.
Usage:
xe = Builder::XmlEvents.new(handler) 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.
xe = Builder::XmlEvents.new(handler, indent_size, initial_indent_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.
- end_tag(tag)
- Announces that an end tag for tag has been found.
- text(text)
- 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.
Methods
Instance
Visibility | Signature |
---|---|
public | _end_tag (sym) |
public | _start_tag (sym, attrs, end_too=false) |
public | text! (text) |