Uhmm.... Negli attributi & non dovrebbe esistre come carattere.
E si diciamo che se un nodo contiene testo dovrebbe essere incpasulato nel tag cdata proprio per dire al parser che sta analizzando un nodo testuale e se contiene ulteriori tags questi devono essere letti come testo.(ad esempio un nodo che contiene del codice html deve stare dentro cdata altrimenti schioppa tutto)
Richiedi che siano rispettati gli std altrimenti devi impazzire.
A me è capitato su un software che esportava i dati dentro attributi e esplodeva tutto perche' chi ha ftto l'exporter non ha rispettato gli standards(sono impazzito a correggere di replace tutto il file per farlo partire)... se puoi si richiedi che rispettino gli std...
Nota : pare che se in un attributo compare & tale carattere ricodificato sia consentito.
Fatti mettere i dati dentro i nodi e non negli attributi altrimenti scleri.