Analise dados JSON com filtros, fórmulas e gráficos

Os desenvolvedores de software e outros profissionais de dados frequentemente precisam analisar novas instâncias de dados antes de projetar processos para uma produção eficiente. À medida que o formato JSON se torna mais popular para a troca de dados, a vantagem de tamanhos de dados menores pode resultar na perda de clareza da estrutura subjacente dos dados.

O XMLSpy oferece suporte para a visualização, modelagem e.. edição de ficheiros JSON e inclui ferramentas avançadas para analisar dados JSON, incluindo a aplicação de filtros, fórmulas e gráficos.

Vamos dar uma olhada.

A ajuda online do XMLSpy e o projeto de exemplos que é instalado com o XMLSpy são um ótimo ponto de partida.

A ajuda online inclui instruções e ilustrações sobre como aplicar filtros e fórmulas. Na imagem abaixo, um filtro foi aplicado a um documento JSON que contém dados sobre discos, com o objetivo de listar apenas as músicas compostas por Brian May:

Nesta ilustração, um ficheiro JSON contém uma descrição de um pedido de compras, e uma fórmula é aplicada para calcular o preço total:

O ficheiro de exemplo Chart.jsonc descreve as temperaturas mínimas e máximas por mês. Estes dados são utilizados para criar um gráfico que também mostra uma média calculada para cada mês:

Todas as imagens acima foram geradas a partir de ficheiros .jsonc. Uma vez que os documentos JSON, para além do JSON5, não permitem comentários, o formato JSON com Comentários (JSONC) foi introduzido para permitir a inclusão de comentários em documentos JSON.

Os filtros, fórmulas e funcionalidades de gráficos para a visualização de dados JSON são implementados como funções XQuery, armazenadas em comentários e interpretadas pelo XMLSpy para analisar os dados JSON. Isto pode ser verificado ao visualizar o ficheiro Chart.jsonc em modo de texto:

Estes exemplos podem sugerir estratégias para a resolução eficiente de desafios de desenvolvimento no mundo real, especialmente em projetos onde é necessário processar ficheiros JSON de grande dimensão provenientes de fontes externas.

Analise os dados JSON obtidos a partir de serviços web

Suponhamos que nos foi atribuída a tarefa de processar dados de previsões meteorológicas de 5 dias para um número aleatório de cidades em qualquer parte do mundo. Este tipo de dados pode ser útil para prever horários de transporte marítimo entre destinos importantes, ou até mesmo para velejadores que passam as férias em regiões tropicais. Existem muitas APIs disponíveis para obter informações sobre o clima, e todas fornecem dados em formatos ligeiramente diferentes. Neste artigo, vamos analisar os dados da API openweathermap.org.

Podemos enviar uma requisição REST diretamente para a API a partir do menu principal "Ficheiro/Abrir" no XMLSpy. Basta clicar no botão "Mudar para URL" na parte inferior da caixa de diálogo "Abrir" e inserir a chamada da API como a URL do ficheiro:

O resultado da chamada da API será aberto na janela de edição principal. Não existe um cabeçalho para os dados JSON que identifique o formato ou a versão, por isso não será reconhecido automaticamente, mas pode usar a opção "Ficheiro/Guardar como" e aplicar a extensão de ficheiro .jsonc:

Clicar no botão "Grade" muda para a visualização em grade, e os dados JSON tornam-se imediatamente mais compreensíveis:

A primeira coisa que podemos fazer é verificar se a temperatura prevista para esta localização é inferior a zero graus Celsius. Isso pode ser feito facilmente aplicando um filtro à lista. Podemos clicar no ícone de filtro, localizado à direita de "[ ] list" no topo da lista, e inserir uma expressão XQuery, utilizando o exemplo de filtro na ajuda do XMLSpy como guia para a sintaxe. O filtro será aplicado imediatamente, exibindo apenas as previsões de temperaturas abaixo de zero graus Celsius:

Como só nos interessam os valores de temperatura neste momento, também recolhemos os dados de cada elemento do conjunto, clicando nas barras de rolagem cinzentas localizadas à esquerda de cada número de elemento, como mostrado acima. Agora é evidente que este local terá algumas noites frias!

Agora, podemos querer encontrar a temperatura mais baixa prevista neste relatório. Podemos aplicar uma fórmula para isso. Na imagem abaixo, inserimos um novo nó no array da lista, alterámos o seu tipo para "fórmula" e atribuímos um nome à fórmula. Em vez de inserir a fórmula diretamente na vista de grade, podemos usar a janela de auxílio XQuery para construir, testar e depurar uma expressão XQuery:

Podemos copiar a expressão completa do editor XQuery e colá-la na visualização de grade JSON:

Utilizando uma estratégia semelhante e partindo do exemplo Chart.jsonc, podemos adicionar um gráfico para visualizar os dados:

Os elementos ChartConfig definem os parâmetros utilizados pela função de gráfico, mas a própria função de gráfico também pode ser criada na janela XQuery

Após uma avaliação bem-sucedida, os dados da imagem binária são exibidos na janela de resultados. Também pode clicar com o botão direito no gráfico para o exportar como um ficheiro de imagem. As dimensões da imagem são definidas pelos parâmetros de largura e altura em "ChartConfig".

As funções adicionadas aos dados em formato .jsonc são armazenadas em comentários, como se pode ver aqui quando voltamos para a visualização de texto.

Se quisermos aplicar as mesmas funções a outros dados JSON obtidos da API, temos duas opções. Podemos usar a janela de auxílio XQuery para armazenar temporariamente uma expressão e aplicá-la a outro documento .jsonc, ou podemos copiar e colar todo o conjunto de expressões.

Primeiro, vamos adicionar mais cálculos para aprofundar a análise:

Copiar os comentários do documento original e colá-los num novo conjunto de dados proveniente da API permite obter uma análise imediata:

Pode partilhar facilmente as suas descobertas com outros membros da equipa. Se clicar no ícone do disco junto à definição da função, os resultados serão incorporados como dados JSON no ficheiro:

Ou pode guardar o gráfico como um ficheiro de imagem para o utilizar num relatório:

Cada tarefa de integração de dados e geração de relatórios precisa começar com uma compreensão clara dos dados de origem. Utilizar o XMLSpy para analisar dados JSON pode acelerar o sucesso do seu projeto. Para uma perspetiva diferente, este vídeo de demonstração apresenta filtros, funções, gráficos e muitas outras funcionalidades poderosas da visualização JSON Grid.

Descarregue uma versão de avaliação gratuita, que inclui a ajuda online, o tutorial e muitos exemplos práticos, já hoje!