It’s coming from this line of code:
var dropTargetXML:XML = XMLTemplate.template.component.section.question.(@question_questionID == nNode.parent().@question_questionID)[0];
nNode is an XML node sent as an argument to the function this is called in. The code runs, and does everything expected but the compiler sends out that warning. Do I have some formatting issue?
P.S. I’ve tried telling it that it’s XML like this:
var dropTargetXML:XML = XMLTemplate.template.component.section.question.(@question_questionID == XML(nNode).parent().@question_questionID)[0];
but I still get the warning.
I don’t know how it’s actually implemented, but I would guess something in the XML filtering does something with it under the hood. A quick solution would be to pull the code in question out of the filtering scope, eg.:
If you’re curious you can read more about the Filtering operator on pages 62-63 of the ECMAScript for XML (E4X) Specification