Чтобы имитировать выражение // div [@ id = 'foo'], самое близкое, что вы можете сделать с GPath:
def xml = new XmlParser().parseText(text)
xml.'**'.div.findAll { it.@id=="foo" }
'**' во многом совпадает с '// 'в вашем XPath.
xml.'**'.div
выдаст все узлы типа div на любом уровне.
При последующей фильтрации с помощью findAll () с данным замыканием вы получите список узлов, как в случае с XPath