Schemata stellen Entwicklern Informationen zu der Anforderung bereit, die sie senden sollten, oder die Antwort, die sie beim Aufrufen einer API-Operation erwarten sollten. Sie können zuvor erstellte Schemata an verschiedenen Orten in Ihrer API-Definition bearbeiten.
Vorbereitende Schritte
Hinweis Schemas werden kompiliert, bevor sie zur Validierung verwendet werden. Da der Kompilierungsprozess länger ist als der Validierungsprozess, werden die kompilierten Schemaartefakte in einem Cache gespeichert. Die begrenzte Kapazität des Cache kann dazu führen, dass ältere Einträge aus dem Cache entfernt werden, wenn neuere Einträge hinzugefügt werden. Schemas, deren Artefakte aus dem Cache entfernt wurden, müssen erneut kompiliert werden, was zu erheblichen Verzögerungen bei der Validierung führen kann.
Öffnen Sie das Detailformular für ein Schema. Details zu den Bereichen in Ihrer API-Definition, in denen Sie ein Schema bearbeiten können, finden Sie in den folgenden Abschnitten:
Informationen zu dieser Task
Hinweis:
- Diese Task bezieht sich auf die Konfiguration einer OpenAPI 3.0-API-Definition. Details zum Konfigurieren einer OpenAPI 2.0 -API-Definition finden Sie unter Bearbeiten einer OpenAPI 2.0 -API-Definition.
- OpenAPI 3.0 -APIs werden nur mit dem DataPower® API Gatewayunterstützt, nicht mit dem DataPower Gateway (v5 compatible).
- Details zu aktuellen OpenAPI 3.0 -Unterstützungseinschränkungen finden Sie unter OpenAPI 3.0 -Unterstützung in IBM®
API Connect.
Sie können diese Task entweder mithilfe der UI-Anwendung API Designer oder mithilfe der browserbasierten Benutzerschnittstelle von API Manager ausführen.
In der Tabellenansicht werden die Eigenschaften in einem Schema zusammen mit ihren wesentlichen Attributen, wie Name, Typ, Beschreibung und erforderlicher Status, dargestellt. Das sekundäre Dialogfenster ermöglicht den Zugriff zum Anzeigen und Bearbeiten der detaillierteren und weniger häufig verwendeten Attribute, die den einzelnen Datenfeldern zugeordnet sind.
Sie können jederzeit direkt zur zugrunde liegenden OpenAPI -YAML-Quelle wechseln, indem Sie auf das Symbol Quelle
klicken. Klicken Sie auf das Symbol Formular
, um zum Designformular zurückzukehren.
Vorgehensweise
Sie können die folgenden Schemaeinstellungen konfigurieren:
- Schemaname: Verfügbar, wenn Sie eine Schemakomponente bearbeiten. Dieser Name definiert einen Schlüssel, mit dem dieses Schema von einer anderen Stelle in der API-Definition referenziert werden kann. Die Referenz hat das folgende Format:
#/components/schemas/Name
Klicken Sie zum Ändern des Namens auf das Symbol
Quelle , ändern Sie den Wert im Feld und klicken Sie anschließend auf
Speichern .
- Optional: Titel: Der Titel des Schemas.
- Optional: Typ: Der Schemadatentyp. Wählen Sie einen der folgenden Werte aus:
- Array
- Boolesch
- Ganze Zahl
- Zahl
- Objekt
- Zeichenfolge
Hinweis: Wenn Sie den Typ eines vorhandenen Schemas ändern, werden alle vorhandenen Einstellungen, die für den neuen Typ nicht relevant sind, weiterhin in der OpenAPI -Quelle beibehalten, auch wenn sie nicht mehr in der Benutzerschnittstelle angezeigt werden. Sie sollten daher vermeiden, ein Schema von einem Typ auf einen anderen zu portieren, sondern stattdessen entweder ein neues Schema erstellen oder die OpenAPI -Quelle direkt ändern. Klicken Sie zum Öffnen des Quelleneditors auf das Symbol
Quelle 
.
- Eigenschaften: Die Schemaeigenschaft. Um eine Eigenschaft zum Schema hinzuzufügen, klicken Sie neben der Überschrift des Abschnitts Eigenschaften auf Hinzufügen , füllen Sie die Details aus und klicken auf Speichern.
- Zusätzliche Schemaeinstellungen abhängig vom ausgewählten Typ der Eigenschaft. Klicken Sie zum Anzeigen und Bearbeiten dieser Schemaeinstellungen auf das Menü Optionen neben der Eigenschaft, die Sie anzeigen möchten, und wählen Sie Detailsaus.
- Boolescher Wert: keine typspezifischen Einstellungen.
- Ganzzahl:
- Format: Ein optionaler Datentyp-Modifikator. Weitere Informationen finden Sie unter Datentypen in der OpenAPI -Spezifikation.
- Mehrfaches von: Das Teilen einer ganzzahligen Instanz durch diesen Wert muss eine Ganzzahl ergeben.
- Maximum: Eine ganzzahlige Instanz muss kleiner-gleich diesem Wert sein.
- Exklusives Maximum: Eine ganzzahlige Instanz muss streng kleiner sein als dieser Wert.
- Minimum: Eine ganzzahlige Instanz muss größer-gleich diesem Wert sein.
- Exklusives Minimum: Eine ganzzahlige Instanz muss streng größer sein als dieser Wert.
- Nummer:
- Format: Ein optionaler Datentyp-Modifikator. Weitere Informationen finden Sie unter Datentypen in der OpenAPI -Spezifikation.
- Mehrfaches von: Das Teilen einer Zahleninstanz durch diesen Wert muss eine Ganzzahl ergeben.
- Maximum: Eine Zahleninstanz muss kleiner-gleich diesem Wert sein.
- Exklusives Maximum: Eine Zahleninstanz muss streng kleiner sein als dieser Wert.
- Minimum: Eine Zahleninstanz muss größer-gleich diesem Wert sein.
- Exklusives Minimum: Eine Zahleninstanz muss streng größer sein als dieser Wert.
- Objekt:
- Max. Eigenschaften: Die Anzahl der Eigenschaften in einer Objektinstanz muss kleiner-gleich diesem Wert sein.
- Min. Eigenschaften: Die Anzahl der Eigenschaften in einer Objektinstanz muss größer-gleich diesem Wert sein.
- Erforderliche Eigenschaften: Ein Array von Eigenschaftsnamen. Jeder Eigenschaftsname im Array muss der Name einer Eigenschaft in einer Objektinstanz sein. Um einen erforderlichen Eigenschaftsnamen hinzuzufügen, klicken Sie neben der Abschnittsüberschrift Erforderliche Eigenschaften auf Hinzufügen, geben Sie den Namen ein und klicken Sie dann auf Erstellen.
- zeichenfolge:
- Format: Ein optionaler Datentyp-Modifikator. Weitere Informationen finden Sie unter Datentypen in der OpenAPI -Spezifikation.
- Muster: Ein regulärer Ausdruck; eine Zeichenfolgeinstanz muss erfolgreich mit dem Ausdruck übereinstimmen.
- Max. Länge: Die maximal zulässige Anzahl an Zeichen in einer Zeichenfolgeinstanz.
- Min. Länge: Die zulässige Mindestanzahl an Zeichen in einer Zeichenfolgeinstanz.
- Enum: Ein Array mit Zeichenfolgewerten. Eine Zeichenfolgeinstanz muss einem der Arraywerte entsprechen. Um einen enum-Wert hinzuzufügen, klicken Sie auf Hinzufügen, geben Sie den Wert ein und klicken Sie dann auf Erstellen.
- Allgemeine Einstellungen; wählen Sie die erforderlichen Optionen aus:
- Erforderlich: Eine diesem Schema zugeordnete Eigenschaft ist erforderlich.
- Schreibgeschützt: Eine Eigenschaft, die diesem Schema zugeordnet ist, kann in einer Antwort zurückgegeben werden, sollte aber nicht in einer Anforderung enthalten sein. Eigenschaften, deren Werte systemgenerierte IDs sind, werden beispielsweise als Schreibgeschützt definiert, da Anwendungsclients diese nicht festlegen können.
- Beispielwert: Ein Beispielwert. Was Sie hier eingeben, wird im CMS Portal so angezeigt, wie es ist.
- Externe Dokumentation: Eine externe Ressource für erweiterte Dokumentation. Geben Sie die folgenden Informationen an:
- URL (erforderlich): Die URL für die Zieldokumentation.
- Beschreibung: Eine optionale Beschreibung der Zieldokumentation. Sie können die CommonMark -Syntax für die Rich-Text-Darstellung verwenden.
- Xml: Metadaten, die differenziertere XML-Modelldefinitionen ermöglichen; geben Sie folgende Informationen an:
- Name: Ersetzt den Namen des Elements oder Attributs, das für die beschriebene Schemaeigenschaft verwendet wird
- Namensraum : URL der Namensraumdefinition.
- Präfix: Das Präfix, das für den Namenverwendet wird
- Attribut: Gibt an, ob die Eigenschaftsdefinition in ein Attribut anstelle eines Elements umgesetzt wird.
- Wrapped: Gibt an, ob das Array eingeschlossen (z. B.
<books><book/><book/></books>) oder nicht eingeschlossen (<book/><book/>) ist.
- Klicken Sie anschließend auf Speichern .
Beispiel
Indem Sie Eigenschaften definieren, können Sie komplexere Datenstrukturen erstellen. Sie können z. B. ein
Adress
-Schema definieren, das die folgenden Eigenschaften aufweist:
| EIGENSCHAFTSNAME |
EIGENSCHAFTSTYP |
| street1 |
string |
| street2 |
string |
| city |
string |
| state |
string |
| zip_code |
string |
Dann können Sie ein
BankBranch
-Schema definieren, das die folgenden Eigenschaften aufweist, von denen eine ein Verweis auf das Adressschema ist:
| EIGENSCHAFTSNAME |
EIGENSCHAFTSTYP |
| address |
address |
| type |
string |
| id |
string |
Nächste Schritte
Falls erforderlich, verwenden Sie den Navigationspfad, um zu einer anderen Position in der
Hierarchie des Objekts zu navigieren, an dem Sie arbeiten.