Analysez les données JSON à l'aide de filtres, de formules et de graphiques
Les développeurs de logiciels et les autres professionnels des données ont souvent besoin d'examiner de nouvelles instances de données avant de concevoir des processus pour une production efficace. Alors que le format JSON devient de plus en plus populaire pour l'échange de données, le compromis pour des volumes de données plus petits peut entraîner une perte de clarté de la structure des données sous-jacente.
XMLSpy permet de visualiser, de modéliser et de modifier des fichiers JSON et intègre des outils performants pour analyser les données JSON, notamment pour appliquer des filtres, des formules et des graphiques.
Regardons ça de plus près.

L'aide en ligne de XMLSpy et le projet d'exemples qui s'installe avec XMLSpy sont d'excellents points de départ.
L'aide en ligne contient des instructions et des illustrations pour l'application de filtres et de formules. Dans l'image ci-dessous, un filtre a été appliqué à un document JSON contenant des données sur des albums, afin d'afficher uniquement les chansons écrites par Brian May :

Dans cette illustration, un fichier JSON contient une description d'une commande de courses, et une formule est appliquée pour calculer le prix total :

Le fichier exemple Chart.jsonc décrit les températures minimales et maximales par mois. Ces données sont utilisées pour créer un graphique qui affiche également une moyenne calculée pour chaque mois :

Toutes les images ci-dessus ont été générées à partir de fichiers .jsonc. Étant donné que les documents JSON, autres que JSON5, n'autorisent pas les commentaires, le format JSON avec commentaires (JSONC) a été introduit pour permettre l'ajout de commentaires dans les documents JSON.
Les filtres, les formules et les fonctionnalités de graphiques pour la vue JSON Grid sont implémentés sous forme de fonctions XQuery stockées dans des commentaires, qui sont interprétés par XMLSpy pour analyser les données JSON. Cela peut être constaté en examinant le fichier Chart.jsonc en mode texte :

Ces exemples peuvent suggérer des stratégies pour résoudre efficacement les défis de développement rencontrés dans la pratique, en particulier pour les projets où il est nécessaire de traiter de gros fichiers de données JSON provenant de sources externes.
Analyser les données JSON récupérées à partir de services web
Supposons que nous ayons pour mission de traiter des données de prévisions météorologiques sur 5 jours pour un nombre aléatoire de villes, situées n'importe où dans le monde. Ces données pourraient être utiles pour prévoir les calendriers d'expédition entre les principales destinations, ou même pour les plaisanciers en vacances dans les régions tropicales. De nombreuses API sont disponibles pour obtenir des informations sur la météo, et elles fournissent toutes des données dans des formats légèrement différents. Dans cet article, nous allons examiner les données provenant de l'API openweathermap.org.
Nous pouvons envoyer une requête REST directement à l'API depuis le menu principal "Fichier/Ouvrir" dans XMLSpy. Pour cela, cliquez simplement sur le bouton "Passer à l'URL" situé en bas de la fenêtre "Ouvrir" et entrez l'appel de l'API comme URL du fichier :

Le résultat de l'appel de l'API s'affichera dans la fenêtre d'édition principale. Il n'y a pas de préambule pour les données JSON permettant d'identifier le format ou la version, donc elles ne seront pas automatiquement reconnues. Cependant, vous pouvez utiliser l'option Fichier/Enregistrer sous et appliquer l'extension de fichier .jsonc :

En cliquant sur le bouton "Grille", l'affichage passe en mode grille, et les données JSON deviennent immédiatement plus faciles à comprendre :

La première chose que nous pourrions faire est de vérifier si la température est susceptible de descendre en dessous de zéro pour cet emplacement. Cela peut être facilement réalisé en appliquant un filtre à la liste. Nous pouvons cliquer sur l'icône de filtre située à droite de la liste [ ] en haut de la liste et saisir une expression XQuery, en nous basant sur l'exemple de filtre fourni dans l'aide de XMLSpy pour la syntaxe. Le filtre est appliqué immédiatement pour afficher uniquement les prévisions de températures inférieures à zéro :

Étant donné que nous ne sommes intéressés que par les valeurs de température pour le moment, nous avons également réduit l'affichage de chaque élément du tableau en cliquant sur les barres de défilement grises situées à gauche de chaque numéro d'élément, comme indiqué ci-dessus. Il est maintenant clair que cet endroit connaîtra des nuits froides !
Maintenant, nous pourrions vouloir trouver la température la plus basse prédite dans cette prévision. Nous pouvons utiliser une formule pour cela. Dans l'image ci-dessous, nous avons inséré un nouveau nœud dans le tableau de données, nous avons modifié son type pour qu'il soit une formule, et nous avons donné un nom à cette formule. Plutôt que de saisir la formule directement dans la vue grille, nous pouvons utiliser la fenêtre d'assistance XQuery pour créer, tester et déboguer une expression XQuery :

Nous pouvons copier l'expression complétée depuis l'éditeur XQuery et la coller dans la vue "Grille JSON" :

En utilisant une stratégie similaire et en nous basant sur l'exemple Chart.jsonc, nous pouvons ajouter un graphique pour visualiser les données :

Les éléments ChartConfig définissent les paramètres utilisés par la fonction de création de graphique, mais la fonction de création de graphique elle-même peut également être construite dans la fenêtre XQuery

Une évaluation réussie affiche les données de l'image binaire dans la fenêtre des résultats. Vous pouvez également faire un clic droit sur le graphique pour l'exporter sous forme de fichier image. Les dimensions de l'image sont définies par les paramètres de largeur et de hauteur de ChartConfig.
Les fonctions ajoutées aux données .jsonc sont stockées dans des commentaires, comme on peut le constater ici lorsque nous repassons à la vue texte.

Si nous souhaitons appliquer les mêmes fonctions à d'autres données JSON récupérées à partir de l'API, nous avons deux options. Nous pouvons soit utiliser la fenêtre d'assistance XQuery pour stocker temporairement une expression et l'appliquer à un autre document .jsonc, soit nous pouvons copier et coller l'ensemble des expressions.
Tout d'abord, ajoutons davantage de calculs afin d'améliorer l'analyse :

Copier les commentaires du document source et les coller dans un nouvel ensemble de données provenant de l'API permet d'obtenir une analyse instantanée :

Vous pouvez facilement partager vos découvertes avec les autres membres de l'équipe. Si vous cliquez sur l'icône de disque à côté de la définition de la fonction, les résultats sont intégrés sous forme de données JSON dans le fichier :

Vous pouvez également enregistrer le graphique sous forme de fichier image pour l'utiliser dans un rapport

Chaque tâche d'intégration de données et de création de rapports doit commencer par une compréhension claire des données sources. L'utilisation de XMLSpy pour analyser les données JSON peut vous aider à réussir votre propre projet. Pour une autre perspective, cette démonstration vidéo présente des filtres, des fonctions, des graphiques et de nombreuses autres fonctionnalités puissantes de la vue JSON Grid.
Téléchargez une version d'essai gratuite qui comprend l'aide en ligne, un tutoriel et de nombreux exemples concrets, dès aujourd'hui !