J'ai un document XML avec de nombreux espaces de noms différents en cours d'utilisation et un schéma à valider. Le schéma exige que tous les éléments soient "qualifiés", et je suppose que cela signifie qu'ils doivent avoir des QNames complets sans espace de noms nul.Sélection de noeuds avec l'espace de noms par défaut
Cependant, certains éléments de ce document XML géant se sont glissés en utilisant uniquement l'espace de noms par défaut, qui dans le cas de ce document est vide. En général, ils échouent à la validation avec le schéma. J'essaye d'écrire un XSLT qui sélectionnera des noeuds qui n'ont aucun espace de nom et leur assignera un spécifique avec le même préfixe que les autres. Par exemple:
<x:doc xmlns:x="http://thisns.com/">
<x:node @x:property="true">
this part passes validation
</x:node>
<node property="false">
this part does not pass validation
</node>
</x:doc>
J'ai essayé d'ajouter xmlns="http://thisns.com/"
au nœud racine du document, mais cela ne concorde pas avec le schéma validateur. Des pensées sur comment je peux faire ce travail?
Merci!