Retour à l'application

Exemple de gestion des espaces de noms.

Supposez que votre document XML soit le suivant.

<personne>
  <nom>Turing</nom>
  <prénom>Alan</prénom>
</personne>

Si vous ne cochez pas la case de gestion des espaces de nom et entrez l'expression XPath

  /personne/prénom

vous obtenez la réponse

Ensemble de 1 éléments :
  1.   <prénom>Alan</prénom>
    

Si maintenant votre document XML est

<personne xmlns="http://www.mon-espace-de-nom">
  <nom>Turing</nom>
  <prénom>Alan</prénom>
</personne>

Si vous ne cochez pas la case de gestion des espaces de nom et entrez l'expression XPath

  /personne/prénom

vous obtenez la réponse

Ensemble de 0 éléments :

La raison, comme indiquée en cours, est que par défaut, un élément sans préfixe dans une expression XPath est un élément sans espace de nom. Donc personne et nom dans l'expression donnée n'ont pas d'espace de noms ; ils ne correspondent à aucun élément dans le document.

La seule façon de corriger le problème est de leur donner un préfixe qu'on va attacher à l'espace de nom désiré.

Cliquer sur le bouton-radio "Gèrer les espaces de noms".

Une nouvelle zone s'ouvre : entrez un préfixe, par exemple p et l'espace de nom http://www.mon-espace-de-nom. Cliquer sur "Ajouter". L'association s'affiche en dessous. Un lien "supprimer" vous permet d'effacer cette association le cas échéant.

Si maintenant vous entrez l'expression XPath

  /p:personne/p:prénom

vous obtenez la réponse

Ensemble de 1 éléments :
  1. <prénom xmlns="http://www.mon-espace-de-nom">Alan</prénom>

qui est bien la réponse voulue.

Notez : Si vous cliquez de nouveau sur "Gèrer les espaces de noms", la nouvelle section disparait, et cliquer sur le bouton "Afficher" ne produit plus rien : l'expression XPath n'est plus valide ; le préfixe p n'est plus attribué.


Valid XHTML 1.0 Strict. Benoît Valiron @ 2009