C'est un peu spécieux, je ne suis pas sûr d'être dans la bonne section du forum, vu que je ne sais pas d'où vient mon erreur. Voilà :

Dans mon document XML, je créé un noeud texte avec l'instruction domDoc->createTextNode du PHP ; si le contenu de noeud texte contient un apostrophe, celui-ci est automatiquement converti dans mon document XML en '

Quand je le récupère avec un nodeValue sur le noeud, la valeur est automatiquement échappé, mais dans mon document sauvegardé (domDoc->saveXML), la valeur du texte ne l'est pas, ce qui peut être embarrassant lorsque j'applique ensuite des transformations sur le document.

A quel niveau se situe l'erreur : PHP a-t-il raison de convertir le ' en ' ? est à moi au moment de la transformation de traiter ces cas particulier ?
J'avoue que je suis un peu perdu, ne comprenant pas bien la gestion des échappements de caractères en XML.

Merci de m'éclairer de vos lumières
Normallement il n'y a pas besoin d'échapper les apostrophes dans un textNode. Seuls les caractères < (&lt;), > (&gt;) et & (&amp;) doivent l'être.

Les apostrophe (') sont à échapper dans les valeurs d'attributs, uniquement si l'apostrophe est utilisée aussi comme séparateur, genre :
pouet='truc&#39;machin'


Si on utilise les double-apostrophes ("), pas besoin :
pouet="truc'machin"


Enfin les doubles-apostrophes imbriquées sont remplacées par &quot; :
pouet="truc&quot;machin"