優れた単純な XML 構造が与えられた場合、XmlSlurper() を使用すると、そこから値を非常に簡単に読み取ることができます。
def xml = "<html><head><title>groovy</title></head></html>"
def html = new XmlSlurper().parseText(xml)
println html.head.title
この単純なツリー ナビゲーションを汎用 (型ベースなど) XML で可能にする方法はありますか。理想的には、以下のコード スニペットでは、name属性で値を調べたいのですが、代わりに、このすべての検索を行う必要があります。
def genxml = """
<doc>
<lst name = "head">
<str name = "title">groovy</str>
<str name = "keywords">java xml</str>
</lst>
</doc>"""
def doc = new XmlSlurper().parseText(genxml)
println doc.lst.find { it.@name == "head" }.str.find { it.@name == "title" }
これを次のように歩く方法はありますか:
println doc.head.title