Avaliar JSONPath RFC 9535
Gramática RFC 9535, caminhos normalizados e valores, filtros, índices negativos, fatias e uniões, com uma descida recursiva por expressão.
- Funciona no navegador
- Sem envio
- Verifique antes de transferir
Os dados de entrada ficam neste separador, sem envio ou gravação automática. As contagens agregadas de utilização e os diagnósticos gerais de processamento são opcionais e enviados apenas com consentimento, sem conteúdo nem nomes de ficheiros. Limpar ou fechar elimina os dados; guarde primeiro os resultados necessários.
Formatos e limites
Gramática RFC 9535, caminhos normalizados e valores, filtros, índices negativos, fatias e uniões, com uma descida recursiva por expressão. Até 32 segmentos, multiplicador da união de seletores até 16, árvore sintática até 2.048 nós, até 1.000 correspondências. match e search usam I-Regexp num processo local que pode ser terminado; não há avaliação de JavaScript nem código de funções próprias.
Só UTF-8. Entrada até 1 MiB; XML até 100.000 unidades UTF-16; profundidade até 64; JSON até 20.000 nós. JSONL até 16 MiB, 100.000 registos e 1 MiB por valor. Saída até 32 MiB. Consultas: 3 s; outras tarefas: 10 s; processo local cancelável. A memória nativa do XSD fica até 64 MiB; isto não é toda a memória do processo nem do DOM.
Como usar
- Escolher origem e modo
Cole JSON e escreva um JSONPath que comece por $. No exemplo de livros carregado, use $.store.book[?@.price < 10].title; não é preciso nenhuma função de retorno em JavaScript.
- Configurar parâmetros
O livro A custa 8.5 e o B custa 12. O filtro devolve o valor A no caminho normalizado $['store']['book'][0]['title']; se mudar o limite para 5, não há correspondências, mas a consulta não fica inválida.
- Verificar e transferir
Verifique os caminhos em conjunto com os valores e guarde o resultado em JSON. Um caminho identifica uma posição nesta entrada; valores iguais em caminhos diferentes são correspondências distintas. O JSON original não é alterado.
Formatos e limites
Porque é que esta entrada é rejeitada ou o resultado fica vazio?
Verifique as maiúsculas e minúsculas dos nomes das propriedades e as posições nos arrays antes de considerar um resultado vazio como uma falha. As expressões de filtro em JavaScript e as funções personalizadas não são aceites. Os erros de precisão numérica exigem corrigir a representação da entrada, e não enfraquecer a consulta.
Que perfil de análise e que limites se aplicam?
O perfil declarado, baseado no RFC 9535, limita as expressões a 32 segmentos e 1000 correspondências, com uma descida recursiva por expressão. match e search usam processamento I-Regexp limitado no worker; não se trata da avaliação de scripts arbitrários.
As entradas ou os ficheiros referenciados são enviados para um servidor?
A análise é feita localmente, num worker do navegador. Os URL presentes na entrada não vão buscar documentos remotos. Forneça explicitamente, como ficheiros locais, as dependências de esquema suportadas; guarde o seu texto de origem em separado e descarregue os resultados antes de fechar a página.