Я использую Nokogiri :: XML для анализа ответов от Amazon SimpleDB. Ответ выглядит примерно так:
<SelectResponse xmlns="http://sdb.amazonaws.com/doc/2007-11-07/">
<SelectResult>
<Item>
<Attribute><Name>Foo</Name><Value>42</Value></Attribute>
<Attribute><Name>Bar</Name><Value>XYZ</Value></Attribute>
</Item>
</SelectResult>
</SelectResponse>
Если я просто передам ответ Нокогири, все запросы XPath (например, doc/"//Item/Attribute[Name='Foo']/Value"
) возвращают пустой массив. Но если я удаляю атрибут xmlns
из тега SelectResponse
, он отлично работает.
Есть ли еще что-то, что мне нужно сделать, чтобы учесть объявление пространства имен? Этот обходной путь выглядит ужасно, как хак.