Voici un exemple en pratique :

<?xml version="1.0" encoding="UTF-8"?>
<produits>
	<produit id="56">Carrotes</produit>
	<produit id="73">Chou-fleur</produit>
	<produit id="18">Petits pois</produit>
</produits>

Et le code actionscript :

var doc = new XML();
doc.ignoreWhite = true;
doc.onLoad = traitement;
doc.load("test.xml");

function traitement(){
	for(var i in this.idMap){
		trace(i+" -> "+this.idMap[i]);
	}
}

La fenêtre de sortie affichera la chose suivante :

18 -> <produit id="18">Petits pois</produit>
73 -> <produit id="73">Chou-fleur</produit>
56 -> <produit id="56">Carrotes</produit>

L'objet doc.idMap contient bien dans cet exemple 3 propriétés que l'on peut appeler directement comme ceci :

doc.idMap["18"]

Attention tout de même, il y a un petit bug si vous tentez un typage fort votre objet XML. Ainsi le même code avec la déclaration suivante :

var doc:XML = new XML();

générera une erreur à la compilation :

Il n'existe aucune propriété nommée 'idMap'