XML ist systemunabhängig, aber nicht alle "String"-Ausgaben sind unabhängig, sondern "absichtlich" für das jeweilige Ausgabemedium ausgelegt ... drum ist in xmldoc.xml.irgendwas der String vor D2009 immer
ANSI und danach immer
Unicode, da .XML eine TStringList ist.
Siehe
TLabel.ShowAccelChar: Es gibt einige Komponenten, welche das & etwas anderes behandeln,
beim Anzeigen, darum sollte man da erstmal im Debugger nachsehn, was wirklich im String ist.
Dazu zählen z.B. einige ältere Dialoge, wie z.B. ShowMessage, wo intern auch ein TLabel für die Anzeige genutzt wurde und bei dem man vergaß diese &-Behandlung zu deaktieren.