 <p>I've come across this myself before. Adobe's documentation on <a href="http://livedocs.adobe.com/flex/3/html/help.html?content=13_Working_with_XML_01.html" rel="nofollow noreferrer">Traversing XML structures</a> isn't exactly clear on the point.</p> <p>Their documentation states that if there is more than one element with a particular name you have to use array index notation to access it:</p> <pre><code>var testXML:XML = &lt;base&gt; &lt;book&gt;foo&lt;/book&gt; &lt;book&gt;bar&lt;/book&gt; &lt;/base&gt; var firstBook:XML = testXML.book[0]; </code></pre> <p>Then it goes on to say that if there is only one element with a particular name then you can omit the array index notation:</p> <pre><code>var testXML:XML = &lt;base&gt; &lt;book&gt;foo&lt;/book&gt; &lt;/base&gt; var firstBook:XML = testXML.book; </code></pre> <p>This means that when you try and force coercion to an Array type it doesn't work since it sees the single element as an XMLNode and not an XMLList.</p> <p>If you are lucky you can just check the number of children on your <code>&lt;my_claims&gt;</code> node and decide if you want to warp the single element in an <code>ArrayCollection</code> or if you can use the automatic coercion to work for multiple elements. </p>