Ferramentas
PT

Testador de XPath online

Escreva uma expressão XPath e veja o resultado enquanto digita: os elementos, atributos e textos encontrados, ou o número, a string ou o booleano que a expressão retorna. O testador usa o mecanismo XPath 1.0 embutido no seu navegador.

Exemplos – clique para testar:

    Privado: seus dados são processados no próprio navegador e nunca são enviados a nenhum servidor.

    Como testar uma expressão XPath

    1. Cole seu XML, abra um arquivo ou use o catálogo de produtos de exemplo.
    2. Digite uma expressão XPath ou clique em um dos exemplos. O resultado é atualizado enquanto você digita, e Enter avalia a expressão na hora.
    3. Leia o resultado: o número de nós encontrados com seu tipo e conteúdo, ou o número, a string ou o booleano que a expressão retorna.

    Guia rápido de XPath

    ExpressãoSeleciona
    /catalogO elemento raiz catalog
    //productTodos os elementos product, em qualquer profundidade
    /catalog/product/nameO name de cada produto, passo a passo a partir da raiz
    //product/@idO atributo id de todos os produtos
    //product[@category='books']Produtos cujo atributo category é books
    //product[price > 20]Produtos com preço acima de 20, comparados como números
    //product[contains(name, 'USB')]Produtos cujo nome contém “USB” (diferencia maiúsculas de minúsculas)
    //product[not(tags)]Produtos sem um filho tags
    (//product)[1]O primeiro produto do documento
    //product[1]O primeiro produto dentro de cada elemento pai
    //product[last()]O último produto dentro de cada elemento pai
    //name/text()Os nós de texto dentro de name
    //price/..O elemento pai de cada price
    //*[local-name()='product']Elementos product em qualquer namespace
    count(//product)O número de produtos
    sum(//price)A soma de todos os preços
    string(//product[1]/name)O nome do primeiro produto como string

    Namespaces no XPath

    O XPath 1.0 não tem namespace padrão. Em um documento com xmlns="…", como um sitemap ou uma NF-e, //url não encontra nada, porque os elementos pertencem a esse namespace. Por isso o testador associa o namespace padrão ao prefixo x: (ou d:, se x já estiver em uso), e assim //x:url/x:loc funciona. Prefixos declarados no documento, como cfdi: em um CFDI, podem ser usados como estão. Em ferramentas sem configuração de namespaces, //*[local-name()='url'] funciona em qualquer lugar.

    Perguntas frequentes

    Qual versão do XPath o testador suporta?

    XPath 1.0, a versão embutida em todos os navegadores e na maioria das bibliotecas XML. Funções do XPath 2.0 em diante, como matches(), lower-case() ou string-join(), não estão disponíveis.

    Por que meu XPath não retorna nada?

    As causas mais comuns são um namespace padrão (use o prefixo x: indicado abaixo dos exemplos), diferenças entre maiúsculas e minúsculas – o XPath diferencia as duas – e posições, que começam em 1, não em 0.

    Quantos resultados são exibidos?

    Todas as correspondências são contadas, e as primeiras 500 são listadas com o tipo de nó e o conteúdo.

    Meu XML é enviado para algum servidor?

    Não. O XML é analisado e consultado no seu navegador. Só uma URL que você carrega é buscada pelo nosso servidor.