Saltar al contenido

Evaluador XPath

Ejecuta una expresión XPath 1.0 sobre XML pegado y ve cada coincidencia, su valor y su ruta.

Entrada

Evaluador XPath

Pega un documento XML, escribe una expresión XPath 1.0 y esta herramienta enumera cada nodo que coincide — sin necesidad de escribir un script o abrir un depurador para verificar si un selector realmente encuentra lo que esperas. Se creó para el momento en el que estás mirando una hoja de estilos XSLT, una regla de raspado web o una ruta XQuery que no devuelve lo esperado, y necesitas probar la expresión aisladamente en el documento real.

La opción de tipo de resultado controla cómo se interpreta el valor de la expresión: "Conjunto de nodos" enumera todos los elementos, atributos, nodos de texto o comentarios coincidentes; "Cadena", "Número" y "Booleano" convierten la expresión completa del mismo modo que las funciones string(), number() y boolean() de XPath, que es cómo verificas una comparación o una llamada count() aisladamente. Para resultados de conjunto de nodos, "Mostrar coincidencias como" cambia entre el contenido de texto de cada coincidencia y su XML serializado completo, y puedes numerar las coincidencias o prefijar cada una con la ruta resuelta (como /catalog/book[2]/title) que la encontró.

La sintaxis soportada cubre el subconjunto que la gente realmente usa: los diez ejes estándar (child, descendant, descendant-or-self para //, parent, ancestor, self, following-sibling, preceding-sibling y attribute para @), comodines, predicados posicionales y booleanos, el operador union y funciones comunes — position(), last(), count(), name(), contains(), starts-with(), substring(), concat(), normalize-space() y operadores aritméticos y de comparación. Las variables, document(), key() y el eje namespace no son soportados. Los documentos con espacios de nombres requieren que vincules el prefijo a su URI en "Vinculaciones de espacios de nombres", un par prefijo=URI por línea — o activa "Ignorar espacios de nombres" para que coincida solo por nombre local, independientemente del prefijo.

Todo se ejecuta localmente en tu navegador: el XML que pegas y la expresión que escribes contra él nunca se cargan en ningún lugar, por lo que es seguro probar contra respuestas reales de API, exportaciones de configuración o fragmentos del registro de producción. El XML inválido y las expresiones inválidas se informan con lo que falló y por qué, no con un resultado vacío.

Preguntas frecuentes

Qué partes de XPath 1.0 se soportan?
Los diez ejes estándar, pruebas de nombre y tipo de nodo (incluidos comodines y text()/comment()/node()), predicados posicionales y booleanos, el operador union (|), operadores aritméticos y de comparación, y funciones comunes como position(), last(), count(), name(), string(), contains(), starts-with(), substring(), concat(), normalize-space() y sum(). Las variables ($x), document(), key() y el eje namespace no son soportados.
Por qué mi expresión no coincide con nada en un documento con espacios de nombres?
Una prueba de nombre sin prefijo solo coincide con elementos sin espacio de nombres — es la misma regla que siguen los procesadores XPath reales. Vincula el prefijo que usa tu expresión al URI del espacio de nombres del documento en "Vinculaciones de espacios de nombres" (un par prefijo=URI por línea), o activa "Ignorar espacios de nombres" para que coincida solo por nombre local.
Cuál es la diferencia entre los cuatro tipos de resultado?
"Conjunto de nodos" enumera los nodos coincidentes mismos. "Cadena", "Número" y "Booleano" convierten la expresión completa del mismo modo que las funciones string(), number() y boolean() de XPath — útil para verificar directamente una expresión count() o una comparación sin envolverla en un predicado.
Qué sucede con XML inválido o una expresión inválida?
La herramienta informa cuál falló y por qué — una etiqueta no cerrada o elemento no coincidente para XML, un token inesperado o un prefijo de espacio de nombres no vinculado para la expresión — en lugar de devolver un resultado vacío o engañoso.
Se carga mi documento XML en algún lugar?
No. El análisis y la evaluación se ejecutan completamente en tu navegador — el documento y la expresión nunca abandonan tu dispositivo.