Я пытаюсь проанализировать XML в Ruby, используя Nori, который внутренне использует Nokogiri.В XML есть повторяющиеся теги, а библиотека анализирует повторяющиеся теги как массивы, а неповторяющиеся теги - как обычные элементы (хэш)
<nodes>
<foo>
<name>a</name>
</foo>
<bar>
<name>b</name>
</bar>
<baz>
<name>c</name>
</baz>
<foo>
<name>d</name>
</foo>
<bar>
<name>e</name>
</bar>
</nodes>
анализируется как
{nodes: {
foo: [{name: "a"}, {name: "d"}],
bar: [{name: "b"}, {name: "e"}],
baz: {name: "c"}
}}
Как сохранитьпорядок элементов в результирующем хэше, например, вывод, приведенный ниже?
{nodes: [
{foo: {name: "a"}},
{bar: {name: "b"}},
{baz: {name: "c"}},
{foo: {name: "d"}},
{bar: {name: "e"}},
]}
(Это может быть специфический для библиотеки вопрос. Но мы хотим знать, сталкивался ли кто-либо с подобной проблемой, и как правильно ее анализировать).) * +1010 *