Ca marche mais je ne vois pas l'intérêt (je m'explique).
Là tu fais une comparaison qui tient compte de l'ordre des attributs dans la balise alors que ce qui serait intéressant ce serait justement de pouvoir comparer deux XML sans en tenir compte. Il suffit de virer le test sur la position dans le template des attributs ceci dit.
Les sauts de lignes sont aussi pris en compte dans la comparaison (mais là c'est plus dur à corriger, j'avoue).
En gros ton comparateur a exactement le même résultat qu'un comparateur textuel (diff, ...) alors qu'il mériterait de s'en différencier pour n'afficher que les différences sémantiques.
D'ailleurs un affichage des différences serait un gros plus (pas facile à mettre en oeuvre par contre ).
Malgré ces petits détails, le code est intéressant.
Merci à toi
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.