Mega Code Archive

 
Categories / Ruby / XML
 

Extracting Data While Parsing a Document

event_xml = %{ <events>   <clean system="dev" start="01:35" end="01:55" area="build" error="1" />   <backup system="test" start="02:00" end="02:47" size="327450" error="0" /> </events>} require 'rexml/document' require 'rexml/streamlistener' class ErrorListener   include REXML::StreamListener   def tag_start(name, attrs)     if attrs["error"] != nil and attrs["error"] != "0"       puts %{Event "#{name}" failed for system "#{attrs["system"]}" } +     %{with code #{attrs["error"]}}     end   end end REXML::Document.parse_stream(event_xml, ErrorListener.new)