XML-Schema von/in JSON-Schema konvertieren
Wenn es sich beim aktiven Dokument um ein XML-Schema handelt, wird mit diesem Befehl ein JSON-Schema anhand des XML-Schemas generiert. Wenn es sich beim aktiven Dokument um ein JSON-Schema handelt, wird mit dem Befehl ein XML-Schema anhand des JSON-Schemas generiert. Das generierte Dokument wird in einem neuen Fenster geöffnet und kann anschließend in einem beliebigen Ordner gespeichert werden. Im Folgenden sind die Konvertierungsoptionen beschrieben. Nähere Informationen zu JSON und der Unterstützung für die Bearbeitung von JSON-Dateien in XMLSpy finden Sie im Abschnitt JSON und JSON-Schema.
Optionen für die Konvertierung von XML-Schemas in JSON-Schemas
Wenn Sie den Befehl XML-Schema von/in JSON-Schema konvertieren auswählen, um ein XML-Schema-Dokument in ein JSON-Schema-Dokument zu konvertieren, wird das Dialogfeld "XML-Schema in JSON-Schema konvertieren" (Abbildung unten) angezeigt. Wählen Sie die gewünschte JSON-Schema-Version aus und klicken Sie auf OK. Daraufhin wird anhand des XML-Schemas ein JSON-Schema generiert und das generierte Dokument wird in einem neuen Fenster geöffnet.
Allgemein wird dabei die folgende Konvertierungsstrategie verwendet: (i) XML Schema SimpleTypes werden auf JSON Schema SimpleTypes (wie String und Zahl) gemappt; (ii) XML Schema ComplexTypes werden auf JSON-Objekte gemappt.
Im oberen Teil des Dialogfelds finden Sie Informationen darüber, wie bestimmte XML-Schemakomponenten konvertiert werden. Der untere Teil des Dialogfelds enthält die folgenden Optionen:
•in jedem Subschema eine Eigenschaft mit dem Namen "#" erstellen: Falls diese Option aktiviert ist, wird in jeder JSON-Schema-Definition eine Eigenschaft mit diesem Namen erstellt.
•Mustereigenschaften erstellen, die mit Eigenschaften mit dem Präfix '?', "@xsi", "@xmlns" übereinstimmen: Legt für jedes dieser Präfixe eine Mustereigenschaft für Eigenschaften mit Namen, die diese Präfixe haben, fest. Nähere Informationen zu Mustereigenschaften finden Sie im Abschnitt JSON-Objekte und -Eigenschaften.
•immer Arrays für Partikel mit maxOccurs > 1 erstellen: Partikel sind in XML-Schema Elemente komplexer Inhaltsmodelle. Wenn die Anzahl der Instanzen mehr als eine beträgt, werden die Partikel in JSON-Schema als Array definiert. Andernfalls werden sie als Eigenschaften eines JSON-Objekts definiert.
•"pure" Objekt für komplexe Typen mit einfachem Inhalt erstellen: Der ComplexType von XML-Schema mit einfachem Inhalt ist ein Typ, der Attribute und Textinhalt gestattet, nicht aber Child-Elemente. Wenn die Option "pure" Objekt erstellen aktiviert ist, wird der ComplexType in ein JSON-Objekt konvertiert. Die Attribute des Typs werden in Eigenschaften des JSON-Objekts konvertiert, wobei den Eigenschaftsnamen das Präfix @ vorangestellt wird. Für den Textinhalt des Typs wird eine Eigenschaft namens $ generiert. Wenn die Option "pure" Objekt erstellen nicht aktiviert ist, wird der ComplexType in ein Objekt konvertiert, das andere Objekte und JSON SimpleTypes wie String und Zahl enthalten kann.
•Ein lokales Schema für vordefinierte Typdefinitionen erstellen Wenn diese Option aktiviert ist, wird die Typdefinition im Objekt selbst erstellt. Andernfalls ist die Typdefinition eine Referenz auf ein separates Objekt. In den beiden Codefragmenten im unten gezeigten JSON-Schema sehen Sie die beiden Ausgabeoptionen.
Typdefinition wird referenziert:
"properties": {
"AccountManager": {
"$ref": "#/definitions/xs:string"
}
}
"xs:string": {
"type": "string"
}
Typdefinition ist lokal:
"properties": {
"AccountManager": {
"type": "string"
}
}
•Occurrence Constraints vereinfachen: Wenn diese Option ausgewählt ist, (i) werden Occurrences zu "required" oder "optional" vereinfacht und (ii) sich wiederholende Elemente werden als Arrays mit unbegrenzten maxItems definiert.
•Formateigenschaft gegebenenfalls erstellen: Wenn diese Option ausgewählt ist, werden XML-Schema-Datentypen, wenn möglich, in die entsprechenden JSON-Schema-Formate konvertiert-
Optionen für die Konvertierung von JSON-Schemas in XML-Schemas
Wenn Sie den Befehl XML-Schema von/in JSON-Schema konvertieren auswählen, um ein JSON-Schema-Dokument in ein XML-Schema zu konvertieren, wird das Dialogfeld "JSON-Schema in XML-Schema konvertieren" (Abbildung unten) angezeigt. Aktivieren Sie die gewünschten Konvertierungsoptionen und klicken Sie auf OK. Daraufhin wird anhand des JSON-Schemas ein XML-Schema generiert und das generierte Dokument wird in einem neuen Fenster geöffnet.
Es stehen die folgenden Optionen zur Auswahl:
•ob JSON-Eigenschaftsnamen, die mit '@' und '$' beginnen, erstellt werden sollen oder nicht. Diese würde als Attribut- bzw. Text-Nodes erstellt.
•ob Eigenschaften mit dem Namen '#' als XML-Kommentar-Nodes erstellt werden sollen oder nicht.
•ob Mustereigenschaften, die mit Eigenschaften mit dem Präfixen '?', "@xsi" und/oder "@xmlns" übereinstimmen, ignoriert werden sollen oder nicht. Falls diese nicht ignoriert werden, so werden Eigenschaften mit dem Präfixen '?', "@xsi" und "@xmlns" in Processing Instructions, Attribute mit dem Präfix xsi: bzw. Attribute mit dem Präfix xmlns: konvertiert.
•Ob JSON-Schema format-Eigenschaften bei der Konvertierung in die entsprechenden XML-Schema-Datentypen berücksichtigt werden sollen.