メインコンテンツまでスキップ

スキーマの作成

tip

データモデル、インターフェース入力パラメータ定義、またはインターフェースレスポンス期待定義では、データ構造がインターフェース設計のためにjsonschemaを視覚的に定義するために使用されることがよくあります。

データモデルの作成

新しいモデルエントリ

image.png

tip
  • モデル名: 必須であり、一意でなければならず、通常は文字、数字、アンダースコアで構成されます。
  • エイリアス: 検索や表示を容易にするための名前です。
  • ディレクトリ: モデルは管理のためにカテゴリ分けできます。
  • 備考: モデルの目的を説明するために使用されます。

image.png

データモデルの編集

次のオプションを使用して、スキーマを視覚的に編集できます。

  • ノードの追加または削除
  • フィールドタイプの変更
  • フィールドが必須か空白にできるかを設定
  • フィールドのモックタイプを定義
  • フィールドの順序を再配置

image.png

インテリジェントインポート

既存の構造ファイルに対して、インテリジェントインポートを通じてJSON Schemaの構造を迅速に生成でき、面倒な手動入力を回避できます。サポートされているフォーマットにはJSONXMLJSON Schema、およびMySQL DDLが含まれます。

image.png

Jsonの例

{
"userInfo_get_response": {
"result": {
"model": {
"open_id": "qwertyuiuduiasd",
"avatar": "avatar url",
"nick": "snsNick"
},
"err_message": "err_message",
"err_code": "err_code",
"success": false
}
}
}

image.png

Xmlの例

<error_response>
<code>50</code>
<msg>Remote service error</msg>
<sub_code>isv.invalid-parameter</sub_code>
<sub_msg>Illegal parameter</sub_msg>
</error_response>

image.png

Jsonschemaの例

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Person Schema",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the person.",
"minLength": 2
},
"age": {
"description": "Age in years which must be equal to or greater than zero.",
"type": "integer",
"minimum": 0
},
"email": {
"type": "string",
"description": "The email address of the person.",
"format": "email"
}
},
"required": ["name", "age", "email"]
}

image.png

MySQL DDLの例

CREATE TABLE orders (
order_id INT AUTO_INCREMENT PRIMARY KEY,
customer_id INT NOT NULL,
order_date DATE NOT NULL,
total_amount DECIMAL(10, 2) NOT NULL,
status VARCHAR(50) NOT NULL,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);

image.png

高度なフィールド設定

フィールドが必須かどうかやnull値を許可するかといった基本設定に加えて、特定のフィールドタイプは高度なオプションをサポートしています。また、ソースコードの編集を通じてフィールドプロパティを直接設定することもできます。たとえば、配列の場合、アイテムの数やその他のプロパティを指定できます。

image.png

文字列

image.png

数値

image.png

配列

image.png

オブジェクト

image.png

ブール値

image.png

整数

image.png

Oneof, Anyof, Allof

image.png

参照データモデル

子ノードを追加する際に、既存のデータモデルを迅速に参照できます。

image.png

既存のスキーマを選択します。

image.png

スキーマは元のデータソースの変更を自動的に追従します。この同期を望まない場合は、参を切り離すことができます。

image.png

プレビュー

データ構造によって生成されたjsonコンテンツをプレビューします。

image.png

Raw編集

jsonschemaのソースコードを編集してデータ構造を設計します。

image.png