Учитывая хорошую простую структуру 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