JSON-Dokumente in der Grid-Ansicht

www.altova.com Alle erweitern/reduzieren Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  Benutzerhandbuch und Referenz > JSON, JSON-Schema >

JSON-Dokumente in der Grid-Ansicht

In der Grid-Ansicht sehen Sie die Struktur des JSON-Dokuments (JSON-Instanz/Schema) in einem Raster. Hier können Sie Blöcke aus strukturiertem Text neu strukturieren. Dadurch behalten Sie vor allem bei langen und kompliziert strukturierten Dokumenten die Übersicht besser als in der Textansicht und haben zusätzliche Bearbeitungsfunktionen zur Verfügung. JSON-Dokumente sind oft aufgrund von Arrays und Objekten, die wiederum auf mehreren Ebenen innerhalb von Arrays und Objekten verschachtelt sind, komplex. Betrachten Sie zum Vergleich das JSON-Codefragment, so wie es in der Textansicht angezeigt würde, und dessen Darstellung in der Grid-Ansicht (wie in der Abbildung weiter unten gezeigt).

 

Anmerkung:Avro-Unterstützung ist nur in der Enterprise Edition verfügbar.
Click to expand/collapseJSON-Codefragment in der Textansicht

{

  "web-app": {

  "servlet": [

    {

        "servlet-name": "altovaCDS",

        "servlet-class": "org.altova.cds.CDSServlet",

        "init-param": {

        "configGlossary:installationAt": "Philadelphia, PA",

        "configGlossary:adminEmail": "ksm@pobox.com",

        "configGlossary:poweredBy": "Altova",

        "configGlossary:poweredByIcon": "/images/altova.gif",

        "configGlossary:staticPath": "/content/static",

        "templateProcessorClass": "org.altova.WysiwygTemplate",

        "templateLoaderClass": "org.altova.FilesTemplateLoader",

        "templatePath": "templates",

        "templateOverridePath": "",

        "defaultListTemplate": "listTemplate.htm",

        "defaultFileTemplate": "articleTemplate.htm",

        "useJSP": false,

        "jspListTemplate": "listTemplate.jsp",

        "jspFileTemplate": "articleTemplate.jsp",

        "cachePackageTagsTrack": 200,

        "cachePackageTagsStore": 200,

        "cachePackageTagsRefresh": 60,

        "cacheTemplatesTrack": 100,

        "cacheTemplatesStore": 50,

        "cacheTemplatesRefresh": 15,

        "cachePagesTrack": 200,

        "cachePagesStore": 100,

        "cachePagesRefresh": 10,

        "cachePagesDirtyRead": 10,

        "searchEngineListTemplate": "forSearchEnginesList.htm",

        "searchEngineFileTemplate": "forSearchEngines.htm",

        "searchEngineRobotsDb": "WEB-INF/robots.db",

        "useDataStore": true,

        "dataStoreClass": "org.altova.SqlDataStore",

        "redirectionClass": "org.altova.SqlRedirection",

        "dataStoreName": "altova",

        "dataStoreDriver": "com.microsoft.jdbc.sqlserver.SQLServerDriver",

        "dataStoreUrl": "jdbc:microsoft:sqlserver://LOCALHOST:1433;DatabaseName=goon",

        "dataStoreUser": "sa",

        "dataStorePassword": "dataStoreTestQuery",

        "dataStoreTestQuery": "SET NOCOUNT ON;select test='test';",

        "dataStoreLogFile": "/usr/local/tomcat/logs/datastore.log",

        "dataStoreInitConns": 10,

        "dataStoreMaxConns": 100,

        "dataStoreConnUsageLimit": 100,

        "dataStoreLogLevel": "debug",

        "maxUrlLength": 500

      }

    }, {

        "servlet-name": "altovaEmail",

      "servlet-class": "org.altova.cds.EmailServlet",

      "init-param": {

        "mailHost": "mail1",

        "mailHostOverride": "mail2"

        }

    }, {

      "servlet-name": "altovaAdmin",

      "servlet-class": "org.altova.cds.AdminServlet"

    }, {

      "servlet-name": "fileServlet",

      "servlet-class": "org.altova.cds.FileServlet"

    }, {

      "servlet-name": "altovaTools",

      "servlet-class": "org.altova.cms.AltovaToolsServlet",

      "init-param": {

        "templatePath": "toolstemplates/",

          "log": 1,

          "logLocation": "/usr/local/tomcat/logs/AltovaTools.log",

          "logMaxSize": "",

          "dataLog": 1,

          "dataLogLocation": "/usr/local/tomcat/logs/dataLog.log",

          "dataLogMaxSize": "",

          "removePageCache": "/content/admin/remove?cache=pages&id=",

          "removeTemplateCache": "/content/admin/remove?cache=templates&id=",

          "fileTransferFolder": "/usr/local/tomcat/webapps/content/fileTransferFolder",

          "lookInContext": 1,

          "adminGroupID": 4,

          "betaServer": true

      }

    }

  ],

  "servlet-mapping": {

    "altovaCDS": "/",

    "altovaEmail": "/altovautil/aemail/*",

    "altovaAdmin": "/admin/*",

    "fileServlet": "/static/*",

    "altovaTools": "/tools/*"

  },

  "taglib": {

    "taglib-uri": "altova.tld",

    "taglib-location": "/WEB-INF/tlds/altova.tld"

  }

}

}

 

 

 

Während die Dokumentstruktur in der Textansicht (siehe Codefragment oben) nicht sehr übersichtlich ist und erst genauer studiert werden muss, kann man die Struktur des in der Grid-Ansicht (Abbildung unten) sofort auf einen Blick erfassen.

JSONGridView

Außerdem können Sie die Struktur duch Hinzufügen, Löschen oder Verschieben von Objekten innerhalb des Rasters ganz leicht bearbeiten. So können Sie hier z.B. ganze Textblöcke (z.B. durch Sortieren oder Verschieben) neu strukturieren. Auch der Inhalt kann in der Grid-Ansicht bearbeitet werden. Eine ausführliche Anleitung zum Arbeiten mit strukturiertem Text in der Grid-Ansicht finden Sie im Abschnitt Grid-Ansicht.

 

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. Wählen Sie einen Eintrag aus dem Pop-up-Fenster aus oder doppelklicken Sie in der Eingabehilfe auf einen Eintrag, um diesen einzufügen.

JSONAutoCompPropsGV

In dem in der Abbildung oben gezeigten Instanzdokument werden das Pop-up-Fenster und die Eingabehilfe "JSON-Eigenschaften" angezeigt, wenn sich der Cursor im Feld name der dritten Eigenschaft 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.

JSONAutoCompEntryHelpers

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.

 


© 2019 Altova GmbH