Analysieren Sie JSON-Daten mit Filtern, Formeln und Diagrammen
Softwareentwickler und andere Fachleute im Bereich Datenverarbeitung müssen oft neue Datensätze prüfen, bevor sie Prozesse für eine effiziente Verarbeitung entwickeln. Da JSON zu einem immer beliebteren Format für den Datenaustausch wird, kann der Vorteil kleinerer Datenmengen dazu führen, dass die Klarheit der zugrunde liegenden Datenstruktur verloren geht.
XMLSpy unterstützt das Anzeigen, die Modellierung und die Bearbeitung von JSON-Dateien und bietet umfangreiche Werkzeuge zur Analyse von JSON-Daten, einschließlich der Anwendung von Filtern, Formeln und Diagrammen.
Schauen wir uns das mal an.

Die Online-Hilfe von XMLSpy sowie das Beispielprojekt, das mit XMLSpy installiert wird, sind ein ausgezeichneter Ausgangspunkt.
Die Online-Hilfe enthält Anleitungen und Illustrationen zur Anwendung von Filtern und Formeln. Im folgenden Bild wurde ein Filter auf ein JSON-Dokument angewendet, das Daten über Schallplatten enthält, um nur die Lieder aufzulisten, die von Brian May geschrieben wurden:

In dieser Darstellung enthält eine JSON-Datei eine Beschreibung einer Lebensmittelbestellung, und eine Formel wird angewendet, um den Gesamtpreis zu berechnen

Die Beispiel-Datei Chart.jsonc beschreibt die minimalen und maximalen Temperaturen für jeden Monat. Diese Daten werden verwendet, um ein Diagramm zu erstellen, das auch einen berechneten Durchschnittswert für jeden Monat anzeigt:

Alle oben gezeigten Bilder wurden aus .jsonc-Dateien generiert. Da JSON-Dokumente, mit Ausnahme von JSON5, keine Kommentare zulassen, wurde das Format "JSON mit Kommentaren" (JSONC) eingeführt, um Kommentare in JSON-Dokumenten zu ermöglichen.
Die Filter, Formeln und Diagrammfunktionen für die JSON-Grid-Ansicht werden als XQuery-Funktionen implementiert, die in Kommentaren gespeichert sind und von XMLSpy interpretiert werden, um JSON-Daten zu analysieren. Dies kann man erkennen, wenn man die Datei "Chart.jsonc" im Textmodus öffnet:

Diese Beispiele können Strategien für die effiziente Lösung realer Entwicklungsprobleme aufzeigen, insbesondere für Projekte, bei denen große JSON-Daten aus externen Quellen verarbeitet werden müssen.
Analysieren von JSON-Daten, die von Webdiensten abgerufen wurden
Nehmen wir an, wir sollen Wettervorhersagedaten für eine zufällige Anzahl von Städten weltweit für einen Zeitraum von fünf Tagen verarbeiten. Solche Daten könnten nützlich sein, um Versandpläne zwischen wichtigen Zielorten vorherzusagen oder auch für Freizeitsegler, die in den Tropen Urlaub machen. Es gibt viele APIs, die Informationen über das Wetter bereitstellen, und sie alle liefern Daten in leicht unterschiedlichen Formaten. In diesem Beitrag werden wir uns die Daten der API von openweathermap.org genauer ansehen.
Wir können eine REST-Anfrage direkt an die API senden, und zwar über die Hauptmenüoption "Datei/Öffnen" in XMLSpy. Klicken Sie einfach auf die Schaltfläche "Zu URL wechseln" am unteren Rand des Dialogfensters "Öffnen" und geben Sie den API-Aufruf als Dateipfad ein:

Das Ergebnis des API-Aufrufs wird im Hauptbearbeitungsfenster geöffnet. Da es keinen Präambelbereich für JSON-Daten gibt, der das Format oder die Version identifiziert, wird es nicht automatisch erkannt. Sie können jedoch "Datei/Speichern unter" verwenden und die Dateiendung ".jsonc" zuweisen:

Durch Klicken auf die Schaltfläche "Raster" wird die Ansicht in eine Rasteransicht umgeschaltet, und die JSON-Daten werden sofort besser verständlich:

Das erste, was wir möglicherweise tun möchten, ist zu überprüfen, ob für diesen Standort eine Temperaturabsenkung unter den Gefrierpunkt vorhergesagt wird. Dies lässt sich einfach durch Anwenden eines Filters auf die Liste erreichen. Wir können auf das Filter-Symbol rechts neben dem Eintrag „[ ]“ oben in der Liste klicken und eine XQuery-Ausdruck eingeben. Dabei können wir uns am Beispiel für Filter in der XMLSpy-Hilfe orientieren, um die Syntax zu verstehen. Der Filter wird sofort angewendet, um nur die Vorhersagen für Temperaturen unter dem Gefrierpunkt anzuzeigen:

Da wir uns im Moment nur für die Temperaturwerte interessieren, haben wir auch die Ansicht jedes Elements im Array reduziert, indem wir auf die grauen Scrollbalken links neben jeder Elementnummer geklickt haben, wie oben gezeigt. Es ist jetzt klar, dass dieser Ort einige kalte Nächte erleben wird!
Nun möchten wir möglicherweise die niedrigste Temperatur ermitteln, die in dieser Vorhersage angegeben ist. Dazu können wir eine Formel verwenden. Im folgenden Bild haben wir einen neuen Knoten in das Array der Liste eingefügt, seinen Typ in "Formel" geändert und der Formel einen Namen gegeben. Anstatt die Formel direkt in die Tabellenansicht einzugeben, können wir das Hilfefenster für XQuery verwenden, um einen XQuery-Ausdruck zu erstellen, zu testen und zu debuggen:

Wir können den fertiggestellten Ausdruck aus dem XQuery-Editor in die JSON-Tabellenansicht einfügen:

Mit einer ähnlichen Strategie und unter Verwendung des Beispiels "Chart.jsonc" können wir ein Diagramm hinzufügen, um die Daten visuell darzustellen:

Die Elemente von ChartConfig definieren Parameter, die von der Diagrammfunktion verwendet werden, aber selbst die Diagrammfunktion kann im XQuery-Fenster erstellt werden

Eine erfolgreiche Auswertung zeigt die binären Bilddaten im Ergebnisfenster an. Sie können das Diagramm auch mit einem Rechtsklick exportieren und als Bilddatei speichern. Die Abmessungen des Bildes werden durch die Parameter "Breite" und "Höhe" in der Einstellung "ChartConfig" festgelegt.
Die Funktionen, die dem .jsonc-Datensatz hinzugefügt wurden, werden in Kommentaren gespeichert, wie man hier sehen kann, wenn wir wieder zur Textansicht wechseln.

Wenn wir die gleichen Funktionen auf andere JSON-Daten anwenden möchten, die wir von der API abgerufen haben, haben wir zwei Möglichkeiten. Entweder können wir das Hilfefenster für XQuery verwenden, um einen Ausdruck vorübergehend zu speichern und ihn auf ein anderes .jsonc-Dokument anzuwenden, oder wir können den gesamten Satz von Ausdrücken kopieren und einfügen.
Zuerst erweitern wir die Analyse um weitere Berechnungen:

Das Kopieren der Kommentare aus dem ursprünglichen Dokument und das Einfügen in einen neuen Datensatz über die API ermöglicht eine sofortige Analyse:

Sie können Ihre Entdeckungen einfach mit anderen Teammitgliedern teilen. Wenn Sie auf das Diskettensymbol neben der Funktionsdefinition klicken, werden die Ergebnisse als JSON-Daten in der Datei gespeichert:

Alternativ können Sie das Diagramm als Bilddatei speichern, um es in einem Bericht zu verwenden

Jede Aufgabe zur Datenintegration und -berichterstellung erfordert ein klares Verständnis der Quelldaten. Die Verwendung von XMLSpy zur Analyse von JSON-Daten kann Ihnen helfen, Ihr eigenes Projekt erfolgreich umzusetzen. Für eine andere Perspektive zeigt dieses Video-Demo Filter, Funktionen, Diagramme und viele weitere leistungsstarke Funktionen der JSON-Grid-Ansicht.
Laden Sie noch heute eine kostenlose Testversion herunter, die die Online-Hilfe, das Tutorial und viele Beispiele aus der Praxis enthält!