JSON-Textansicht
Altova Website: JSON Editor
JSON-Schemas und JSON/JSON5-Instanzdokumente können mit Hilfe der intelligenten Bearbeitungsfunktionen der Textansicht bearbeitet werden. Zu diesen Funktionen gehören Klappleisten, Strukturmarkierungen, Syntaxfärbung, Syntaxprüfung, das Speichern von Base64-kodierten Bildstrings in ihrem Bildformat und Autokomplettierung. XMLSpy ermöglicht auch die bidirektionale Konvertierung zwischen JSON/JSON5 und XML sowie die Generierung eins JSON-Schemas anhand einer JSON/JSON5-Instanz.
Klappleisten
Klappleisten sind bei JSON Keywords und -Definitionen aktiv. Mit Hilfe der Klappleiste können Sie diese Nodes erweitert bzw. reduziert anzeigen. Dies wird in der Klappleiste durch ein +/--Zeichen markiert (siehe Abbildung unten). Die Klappleiste kann über das Dialogfeld "Einstellungen für Textansicht" ein- und ausgeblendet werden. Ein eingeklappter Node wird durch Auslassungszeichen gekennzeichnet (siehe Abbildung unten). Wenn Sie den Mauszeiger über die Auslassungspunkte platzieren, wird der Inhalt des eingeklappten Node in einem Popup-Fenster angezeigt (in der Abbildung unten blau markiert). Falls der Inhalt für das Popup-Fenster zu groß ist, so wird dies durch Auslassungspunkte am unteren Rand des Popup-Fenster angezeigt.
Mit der Schaltfläche Alle ein-/ausklappen in der Symbolleiste "Text" werden alle Nodes in ihrer erweiterten Form angezeigt bzw. auf das Dokumentelement der obersten Ebene reduziert.
Wenn Sie auf das +/--Symbol eines Node klicken, stehen die folgenden Optionen zur Verfügung:
Klick [-] | Klappt den Node ein. |
Klick [+] | Zeigt den Node ausgeklappt an, sodass seine untergeordneten Nodes, je nachdem, in welchem Zustand sie sich vor dem Einklappen befunden haben, im erweiterten bzw. reduzierten Zustand zu sehen sind. |
Umschalt+Klick [-] | Reduziert alle untergeordneten Nodes, belässt jedoch den angeklickten Node in seiner erweiterten Form. |
Strg+Klick [+] | Erweitert den angeklickten Node sowie alle seine untergeordneten Nodes. |
Strukturmarkierungen
Die zwei geschweiften Klammern bzw. die eckigen Klammern, in die ein JSON-Objekt bzw. Array eingeschlossen ist (siehe Abbildung unten) werden fett angezeigt, wenn der Cursor entweder vor oder hinter eine dieser Klammern platziert wird. Dies zeigt an, wo die Definition eines bestimmten Elements beginnt und endet.
Syntaxfärbung
Ein JSON-Dokument (JSON-Instanz/Schema) sowie ein JSON5-Dokument besteht aus Objektstrings, Wertestrings, Operatoren, Zahlen und Schlüsselwörtern. In der Textansicht kann jede Elementkategorie gemäß den im Dialogfeld "Optionen" (Abbildung unten) vorgenommenen Einstellungen in einer anderen Farbe angezeigt (siehe Abbildung oben) werden. Sie können die Farben der verschiedenen JSON-Komponenten im Dialogfeld "Optionen" im Abschnitt "Schriftarten" (Abbildung unten) definieren. Wählen Sie in der Auswahlliste oben links den Eintrag JSON aus und anschließend (im Fenster "Stile") für jedes JSON-Element die gewünschte Farbe.
Anmerkung: | In der JSON5-Syntax - nicht aber der JSON-Syntax - sind Kommentare möglich. Kommentare in JSON5 stehen innerhalb von: // comment // oder /* comment */. |
Syntaxprüfung
Die Syntax eines JSON-Dokuments (JSON-Instanz/Schema) kann durch Auswahl des Befehls XML | Wohlgeformtheit prüfen (F7) überprüft werden. Das Ergebnis dieser Überprüfung wird im Fenster "Meldungen" angezeigt (Abbildung unten).
Die Fehlermeldung in der Abbildung oben verweist auf einen Fehler im Dokument: An der Stelle, an der ein Doppelpunkt erwartet wird, steht eine öffnende geschweifte Klammer.
Autokomplettierung
Die Autokomplettierung ist aktiv, wenn das bearbeitete JSON-Dokument (JSON-Instanz/Schema) mit einem Schema verknüpft ist.
•Wenn es sich beim Dokument um ein JSON-Schema handelt, basiert die Autokomplettierung auf der durch das Schlüsselwort $schema angegebenen Schemaversion. Nähere Informationen dazu finden Sie unter JSON-Schema-Version.
•Wenn es sich beim Dokument um eine JSON/JSON5-Instanz handelt, so muss der Instanz ein JSON- Schema zugewiesen sein, damit die Autokomplettierung aktiv ist.
Bei der Autokomplettierung werden Ihnen an der Cursorposition verfügbare Eingabeoptionen vorgeschlagen. Die Vorschläge erfolgen (i) über Pop-ups im Hauptfenster und (ii) die Eingabehilfen (siehe Abbildung unten). In den Pop-ups und Eingabehilfen wird jeweils eine Liste von Einträgen angezeigt, die an dieser Cursorposition gültig sind. Mit Hilfe der Pfeiltasten können Sie durch die Einträge in der Pop-up-Liste navigieren. Wenn das Schema (im Schlüsselwort description des Schemas) eine Beschreibung zum Eintrag enthält, so wird die Beschreibung neben dem markierten Popup-Eintrag angezeigt. Wählen Sie einen Eintrag aus dem Pop-up-Fenster aus oder doppelklicken Sie in der Eingabehilfe auf einen Eintrag, um diesen einzufügen.
In dem in der Abbildung oben gezeigten Instanzdokument werden das Pop-up-Fenster und die Eingabehilfe "JSON-Eigenschaften" angezeigt, wenn sich der Cursor hinter den Anführungszeichen, die den Anfang eines Eigenschaftsnamens kennzeichnen, befindet. In der Eingabehilfe werden alle Eigenschaften angezeigt, die an dieser Stelle zulässig sind; bereits eingegebene Eigenschaften werden grau und deaktiviert angezeigt. Im Pop-up-Fenster werden nur die Eigenschaften angezeigt, die an dieser Stelle zulässig sind.
Es gibt zwei weitere Eingabehilfen: JSON-Werte und JSON-Entities (Abbildung unten). In diesen Eingabehilfen sehen Sie die zulässigen Werte von Schlüssel:Wert-Paaren bzw. Entities für Escape-Zeichen in JSON-Strings. In der Eingabehilfe "JSON-Werte" in der Abbildung unten sehen Sie die Werte, die bei der Bearbeitung eines JSON-Schemas für das Schlüsselwort type zulässig sind. Der letzte Eintrag in der Eingabehilfe "JSON-Entities" , \u00FF, ist ein Platzhalter, der für ein Unicode-Zeichen steht. Ersetzen Sie den blau markierten Teil durch den Code des gewünschten Unicode-Zeichens.
Des Weiteren stehen die folgenden kontextsensitiven Autokomplettierungseinträge oder Tipps zur Verfügung, falls diese im Schema definiert wurden: Enumerationen, Beschreibungen, obligatorische Einträge (Occurrences) und Standardwerte.
Speichern eines Base64-kodierten String als Bild
Um einen Base64-kodierten String in seinem Bildformat zu speichern, klicken Sie mit der rechten Maustaste auf das Bild oder dessen Zelle und wählen Sie den Befehl Als Bild speichern. Wählen Sie im daraufhin angezeigten Dialogfeld den Pfad, unter dem Sie das Bild speichern möchten und geben Sie einen Namen für die Bilddatei ein. Die Erweiterung der Bilddatei (.png, .gif, .svg, usw.) wird automatisch anhand der Base64-Kodierung ermittelt und im Speichern-Dialogfeld angezeigt. Klicken Sie anschließend auf Speichern.
Diese Aktion kann auch über den Menübefehl Bearbeiten | Als Bild speichern durchgeführt werden.