Mon but est d'extraire certains nœuds de plusieurs fichiers XML avec plusieurs espaces de noms en utilisant XPath. Tout fonctionne bien tant que je connais les URI de l'espace de noms. Le nom d'espace de nom lui-même reste constant, mais les schémas (XSD) sont parfois générés par le client, c'est-à-dire inconnus. Puis je suis parti avec essentiellement trois choix:
comment ignorer les espaces de noms avec XPath
utiliser un seul schéma pour l'espace de noms, rien dans l'espoir va mal (? Puis-je être sûr)
obtenir les nœuds enfants du document et Recherchez le premier nœud avec un URI d'espace de noms, en espérant qu'il est là et utilisez simplement l'URI, en espérant que c'est le bon. peut mal tourner pour de multiples raisons
en quelque sorte dire XPath: « regardez, je ne se soucient des espaces de noms, juste trouver tous les nœuds avec ce nom, je peux même vous dire le nom de l'espace de noms, mais pas l'URI » . Telle est la question ici ...
Ce n'est pas une réitération de nombreuses questions « mon expression XPath ne fonctionne pas parce que je ne suis pas au courant de la conscience d'espace de noms » que l'on trouve here ou here. Je sais comment utiliser la conscience de l'espace de noms. Juste pas comment s'en débarrasser.
Si vous ne connaissez pas les schémas, comment savez-vous quels éléments vous voulez? –
Exact duplicate of [Comment ignorer l'espace de noms lors de l'analyse du document XML avec XPath] (http://stackoverflow.com/questions/4402310/how-to-ignore-namespace-when-parsing-xml-document-with-xpath) –
Merci de m'avoir signalé, Alejandro. La recherche de "ignore namespace xpath" aurait dû révéler celui-ci, mais il n'a pas – kostja