Testeur XPath

Testez des expressions XPath sur du XML ou du HTML, puis inspectez chaque nœud, valeur et chemin correspondant.

Type d’entrée
Entrée XML / HTML
Résultats
Saisissez du XML ou du HTML et une expression XPath pour effectuer le test.

Votre XML, votre HTML et votre XPath sont testés dans votre navigateur. Rien n'est envoyé à BroBroGo.

FAQ

Puis-je tester XPath sur du HTML ainsi que sur du XML?

Oui. Le mode XML applique les règles d'espace de noms (namespaces) XML. Le mode HTML est plus tolérant et permet à des chemins simples comme //a de correspondre aux balises standards.

Comment fonctionnent les espaces de noms (namespaces) XML?

Les préfixes d'espace de noms déclarés dans votre XML peuvent être utilisés dans le XPath, par exemple //x:item. Pour les espaces de noms par défaut, //item respecte également la déclaration du document.

Pourquoi une requête peut-elle expirer?

Les documents très volumineux ou les expressions trop larges peuvent s'avérer coûteux à évaluer. L’outil interrompt l'exécution après 2 secondes pour préserver la réactivité de la page; restreignez le chemin ou utilisez un échantillon plus petit.

Fonctionnement du Testeur XPath

Le Testeur XPath est un outil conçu pour évaluer des expressions XPath par rapport à du contenu XML ou HTML fourni par l'utilisateur. L'outil analyse le document d'entrée et affiche tous les éléments, attributs ou segments textuels qui correspondent à l'expression spécifiée. Pour chaque correspondance, l'interface présente des détails précis: le type de nœud, son nom, son chemin d'accès exact ainsi qu'un aperçu de sa valeur. Un bouton permet ensuite de copier individuellement la valeur de chaque résultat obtenu.

L'évaluation s'effectue selon des paramètres d'entrée définis:

  • Entrée XML / HTML: Le document textuel à analyser, au format XML ou HTML, limité à une longueur maximale de 500 000 caractères.
  • Expression XPath: L'expression de requête à tester, limitée à une longueur maximale de 4 000 caractères.
  • Type d’entrée: Un sélecteur permettant de basculer entre le mode XML et le mode HTML.

En sortie, l'outil affiche le nombre total de correspondances trouvées, les statistiques du document (le nombre de caractères et le nombre de résultats affichés), ainsi qu'une liste détaillée des nœuds correspondants.

Différences entre le mode XML et le mode HTML

Le choix du type d'entrée modifie la manière dont l'analyseur traite le document et évalue l'expression XPath.

En mode XML, l'outil applique rigoureusement les règles de syntaxe et de structure du standard XML, y compris la gestion stricte des espaces de noms (namespaces). Si le document XML utilise des espaces de noms, les préfixes déclarés dans le document peuvent être directement employés dans l'expression XPath, comme //x:item. De plus, pour les espaces de noms par défaut déclarés dans le XML, une expression simple comme //item respecte également la déclaration du document.

En mode HTML, l'analyseur se montre beaucoup plus tolérant face aux écarts de syntaxe typiques des pages web. Cette souplesse permet à des chemins simples, tels que //a, de cibler et de correspondre directement aux balises standards du document sans exiger une structure XML valide et stricte.

Gestion des limites et traitement des erreurs

Pour garantir la réactivité de l'interface, le moteur d'évaluation applique des limites strictes de taille et de temps d'exécution. Si ces limites sont dépassées ou si les données saisies sont incorrectes, l'outil affiche des messages d'erreur spécifiques:

  • Limite de temps: L'évaluation d'une expression XPath est interrompue après un délai de 2 secondes. Si ce seuil est atteint, le message suivant s'affiche: « Ce XPath a pris trop de temps à s'exécuter. Restreignez l’expression ou utilisez un échantillon plus petit. ».
  • Taille du document: Si le document soumis dépasse la limite de caractères autorisée, l'outil affiche: « Ce document est trop volumineux pour être testé ici. Utilisez un échantillon plus petit. ».
  • Longueur de l'expression: Si l'expression XPath dépasse 4 000 caractères, le message indiqué est: « Cette expression XPath est trop longue pour être testée ici. ».
  • Erreur d'analyse du document: Si la structure du document d'entrée empêche sa lecture, l'outil affiche: « Impossible d’analyser ce document. ».
  • Syntaxe XPath invalide: Si l'expression saisie comporte une erreur de syntaxe, le message d'erreur est: « Cette expression XPath n’est pas valide. ».
  • Échec de l'évaluation: Si l'expression est syntaxiquement correcte mais ne peut pas être exécutée sur le document, l'interface indique: « Impossible d’évaluer ce XPath. ».
  • Absence de correspondance: Si aucun nœud ne correspond à la requête, l'outil affiche simplement: « Aucun résultat. ».
  • Volume de résultats: L'outil limite l'affichage détaillé aux 200 premiers nœuds correspondants. Au-delà de cette limite, il affiche la mention « Affichage des {max} premiers. » (où {max} représente 200) afin de préserver les performances d'affichage.

Stratégies pour optimiser les expressions XPath

La survenue d'une expiration de délai (timeout) s'explique souvent par l'utilisation d'expressions trop larges sur des documents complexes. Pour éviter que l'évaluation ne s'interrompe au bout de 2 secondes, il convient d'adopter des structures de requêtes plus efficaces.

L'utilisation systématique du double descendant // force l'analyseur à parcourir l'intégralité de l'arbre du document à partir de chaque niveau, ce qui s'avère très coûteux sur de grands volumes de données. Lorsque la structure du document est connue, il est préférable de spécifier des chemins absolus ou semi-relatifs (par exemple, /root/parent/child au lieu de //child) afin de guider directement l'analyseur vers les branches concernées. Restreindre la recherche à des attributs précis ou utiliser des index numériques permet également de réduire l'espace de recherche et d'éviter les erreurs d'exécution.

Confidentialité des données et traitement local

Le traitement des données s'effectue entièrement au sein du navigateur web de l'utilisateur. Le document XML ou HTML ainsi que l'expression XPath saisis ne sont jamais téléversés, transmis ou stockés sur des serveurs externes. Rien n'est envoyé à BroBroGo. Cette exécution locale garantit que les données restent confinées à la session de navigation de l'utilisateur.

Il convient toutefois de noter que ce testeur fonctionne de manière isolée dans le navigateur. Il ne peut pas interagir avec le réseau, effectuer des requêtes externes, ni représenter la structure en temps réel, le DOM rendu ou les requêtes réseau de pages web actives en ligne.


FAQ

Puis-je tester XPath sur du HTML ainsi que sur du XML?

Oui. Le mode XML applique les règles d'espace de noms (namespaces) XML. Le mode HTML est plus tolérant et permet à des chemins simples comme //a de correspondre aux balises standards.

Comment fonctionnent les espaces de noms (namespaces) XML?

Les préfixes d'espace de noms déclarés dans votre XML peuvent être utilisés dans le XPath, par exemple //x:item. Pour les espaces de noms par défaut, //item respecte également la déclaration du document.

Pourquoi une requête peut-elle expirer?

Les documents très volumineux ou les expressions trop larges peuvent s'avérer coûteux à évaluer. L’outil interrompt l'exécution après 2 secondes pour préserver la réactivité de la page; restreignez le chemin ou utilisez un échantillon plus petit.