The default resultFormat of HTTPService is object. This
causes your xml to be converted to a nested object structure. This
is rarely desirable. And it causes the issue you are seeing,
because the convertor can't differentiate between an array with a
single element and an object..
Instead, set resultFormat="e4x". then, in the result handler,
var xmlResult:XML = XML(event.result);
The expression, xmlResult.field, will return an XMLList. You
can iterate over that using a normal for loop with bracketed index
There are also solutions to your issue if you want to stay
with resultFormat="object". They involve, as you expect, examining
the the result object for its contained datatype. You can probably
find an example in the archives.
But switch to XML, and drop Model. Look up e4x xml if you
want more erasons.