Я пытаюсь получить значение свойства определенного узла, но его поведение ошарашено.
У меня есть этот XML в поставщике данных:
<items>
<item>
<code>ITEM1</code>
<groups>
<group>
<code>GROUP1</code>
<props>
<prop>
<code>PROP1</code>
</prop>
<prop>
<code>PROP2</code>
</prop>
</props>
</group>
</groups>
</item>
<!-- Lots more items, each item has a variable number of groups and props -->
</items>
Теперь этот код:
var itemData:XMLList = dataProvider..elements("item").(code == "ITEM1");
успешно возвращает 1-е <item>
.
Далее я делаю:
var groupData:XMLList = itemData..elements("group").(code == "GROUP1")
Но это не работает. groupData.length() == 0
Если я уроню elements()
, то это сработает:
var groupData:XMLList = itemData..group.(code == "GROUP1")
Но мне нужно использовать elements (), потому что имена элементов потенциально настраиваются.
Итак, вопрос в том, почему первый оператор работает, но использование того же оператора для данных, возвращенных первым оператором, не работает должным образом?
Любая помощь приветствуется. Заранее спасибо.