[ruby][xml]REXMLのクラス
xml = REXML::Document.new(body) # bodyはプレーンのXML文書(String) puts xml.class #=> REXML::Document puts xml.root.class #=> REXML::Element puts xml.elements.class #=> REXML::Elements puts xml.root.elements['/a/b/c'].class #=> REXML::Element
紛らわしい。
そして、each的なメソッドは以下のものが使える。(二つとも同じ意味)
xml.elements.each('/a/b/c'){|child| foo} xml.root.each_element('/a/b/c'){|child| bar}
しかし、以下はなぜかブロック引数として改行とスペースだけの変なREXML::Textが交互に入る。(つまり使えない)
xml.elements['/a/b/c'].root.each_element{|child| baz} # ダメな例