Метод hasOwnProperty просто не работает с узлами XML. Я считаю, что это к спецификации E4X. Тем не менее, вы всегда можете запросить узел с E4X, даже если его там нет, и просто посмотреть, какова длина XMLList, которую вы получите. Вот так:
trace(myXML[p].length());
EDIT:
Как отмечено ниже, я ошибся насчет бита hasOwnProperty. Он работает с XML, и это проблема пространства имен, которая вызывает вашу проблему. Вы можете убедиться, что ваш XML использует правильное пространство имен, используя этот удобный фрагмент:
if (myXML.namespace("") != undefined) {
default xml namespace = myXML.namespace("");
}