構造
この要素はラッパーとして機能します。 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> リクエスト/レスポンス/引数ボディの構造情報を意味します。
可能な場所
- 熱 意/ヘルプ/ zest -仕様ファイル/コンポーネント/">コンポーネント - 熱 意/ヘルプ/ zest -仕様ファイル/コンテンツ/紹介/">コンテンツ - 熱 意/ヘルプ/ zest -仕様ファイル/構造グループ/導入/">構造グループ - 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/">プロパティ
子要素
- 熱 意/ヘルプ/ zest -仕様ファイル/非推奨/">非推奨 - 熱意 /ヘルプ/ - zest 仕様ファイル/構造/プロパティ/導入/">プロパティ 繰り返し - 熱意 /ヘルプ/ -仕 zest 様ファイル/構造/余分なプロパティ/">余分なプロパティ 繰り返し
名前のないマップ プロパティは、次の 2 つの条件を満たす構造体に対してデフォルトで指定されます。
-
構造体には、親プロパティが必要です。 マップ以外のデータ型 あるいは、親の財産を持つべきではない。
-
構造体の子プロパティは、 お名前 属性。
属性
| お名前 | タイプ | 説明 |
|---|---|---|
| お名前 | 文字列 | 構造の名前です。 この名前はスプリングソースモデルに使用され、ヘルプドキュメントに反映されます。 リソースに非常に多くの構造を使用するため、値は一意である必要はありません。 詳細については、メモを参照してください。 |
| 参照名 | 文字列 | A **ユニーク** 名前を使用して、同じまたは異なるZspecの他の場所の現在の構造を参照します。 この属性の目的は、完全に製品全体で構造を参照するという内部使用です。 ここをクリック 詳細はこちら |
| 識別子名 | 文字列 | 目的の構造を選択すべき判別器キーの値。 ここをクリック 詳細はこちら |
| 拡張 | 文字列 | 拡張しようとしている構造体の参照名の値を保持します。 ここをクリック 詳細はこちら |
| ケース | 文字列 (列数) | 特定の構造を構成するケースの名前。 自動化では、テストケースが実行され、指定された構造が構成されたように返されるかどうかを確認します。 ゼロ /ヘルプ/デフォルトテストケース/">ここをクリック この属性と可能なテストケースのリストの詳細については、 ZEST. |
| ルックアップ | 文字列 | 構造体のプロパティがポイントするリソースの名前。 |
| 可視性 | 文字列 (列数) | 要素を表示して使用できるユーザーを決定します。 可能な値は、 **内部, プライベート, パブリック**. デフォルト値はパブリックです。 |
ザ お名前 属性は 2 つのケースで好ましいです。- 下の構造の場合 熱 意/ヘルプ/ zest -仕様ファイル/コンテンツ/紹介/"> .- a の下の構造体の場合 熱 意/ヘルプ/ zest -仕様ファイル/構造グループ/導入/"> 、名前が空ではない。- 使用 拡張 属性のすべての属性をオーバーライドできます。 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> そのを除いては お名前 属性。
- 構造体を拡張し、古い構造体から既存のプロパティを上書きするときは、古いプロパティから保持する残りの属性とサブアイテムを再指定する必要があります。
- 2 つの構造体に対して同じ値を持つ場合 ケース 属性を指定すると、最適な一致は 熱意 /ヘルプ/スコアリング論理/">スコア .- もし ケース 属性が設定されていない場合、リソース内のすべての応答構造がチェックされ、最初の完全一致は 熱意 /ヘルプ/スコアリング論理/">スコア 検証のため。
サンプル
参考名
同じリソース内
旅行リソースでは、複数の場所で構造を使用することを検討してください。 この要件の最初のステップは、以下の構造を追加することです。 熱 意/ヘルプ/ zest -仕様ファイル/コンポーネント/"> とともに 参照名 ここに示すように属性。
<components>
<structure ref-name="trips_data" name="trips">
<property name="trip_name" type="string"/>
<property name="trip_budget" type="integer"/>
<property name="no_of_days" type="integer"/>
<property name="start_time" type="datetime"/>
<property name="end_time" type="datetime"/>
</structure>
</components>
さて、上記の構造を使用したいときはいつでも、 参照名 の場所で お名前 の属性です。
<structure-ref name="trips_data" />
さまざまなリソースにわたって
トリップ リソースの宛先リソースの構造を使用したいとします。 この要件では、その構造を参照しながら、次の形式に従う必要があります。
<structure-ref name="{resource-name}.{component-name}" /> 以下は、次の構造体です。 熱 意/ヘルプ/ zest -仕様ファイル/コンポーネント/"> 目的地のリソース、
<components>
<structure ref-name="quick_view" name="external_resource_use">
<property name="destination_name" type="string" />
<property name="rating" type="integer" range="1,10" />
<property name="tourist_spots" type="file" length="5">
<file-meta size="500,1500" overall-size="6000" import-url="false" continue-on-error="true">
<extension name="png" size="500,1000" length="3"/>
<extension name="jpg" length="2"/>
<file-name regex="^[^\"0-9]+$" length="5,10" />
</file-meta>
</property>
<property name="travelogue" type="string" content-types="text/html" />
</structure>
</components>
トリップ リソースで上記の構造を使用するには、 お名前 次のように属性:
<structure-ref name="destinations.quick_view" />
差別主義者名
を利用する 識別子名 新しい構造を定義する際の属性。 ザ 熱 意/ヘルプ/ zest -仕様ファイル/構造グループ/識別子/導入/"> a で指定 熱 意/ヘルプ/ zest -仕様ファイル/構造グループ/導入/"> この属性で提供されるマップの詳細に基づいた関数。これらの構造は、 熱 意/ヘルプ/ zest -仕様ファイル/コンポーネント/"> 、別のリソースでの使用を促進します。 これにより、判別器を使用するたびに値をそれぞれの構造に手動で関連付ける作業が最小限に抑えられます。旅行リソースでは、お客様のためのフライトと宿泊施設の2つのサービスを提供しています。 選択したサービスに応じて、特定の構造を割り当てる必要があります。 以下は、以下を使用して作成されたサンプルです。 識別子名 このシナリオでは、
<property name="service" type="map">
<structure-group name="services" type="one-of">
<structure name="flight" discriminator-name="Flight">
<property name="flight_no" type="string" />
<property name="departure_airport" type="string" />
<property name="arrival_airport" type="string" />
</structure>
<structure name="accommodation" discriminator-name="Accommodation">
<property name="hotel_name" type="string" />
<property name="check_in_date" type="string" />
<property name="check_out_date" type="string" />
</structure>
<discriminator property-name="type" /> <!-- discriminator property not included in structure -->
</structure-group>
</property>
拡張
この属性を使用すると、 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> 既存の構造について。 オーバーライドはプロパティの お名前 プロパティの他のすべての属性をオーバーライドできるように、 お名前 属性。 さらに、既存の構造体に必要な数の新しいプロパティを追加できます。旅行リソースでは、次の構造があると仮定します。
<structure ref-name="trips" name="trips_data">
<property name="trip_name" type="string" />
<property name="travelers" type="string" />
<property name="trip_budget" type="integer" />
<property name="no_of_days" type="integer" />
</structure>
プロパティの追加
次に、追加したい 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> 上記の構造についてです。 これを達成するには、 拡張 既存の構造および 定義する 次のように、もう一つの財産です。
<structure name="new_keys" extend="trips">
<property name="destination" type="string"/>
</structure>
新しいプロパティをできるだけ多く追加できます。 拡張 属性。
プロパティを上書きする
同じ構造体のデータ型を変更したい場合、 日数なし 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> から 整数から文字列へ. したがって、構造を拡張し、 オーバーライド ここに示すように、そのプロパティのデータ型。
<structure name="new_keys" extend="trips">
<property name="no_of_days" type="string" />
</structure>
プロパティの追加とオーバーライド
同じ構造体で、データ型を変更したい場合、 旅行者 熱 意/ヘルプ/ zest -仕様ファイル/構造/プロパティ/導入/"> から コレクションへの文字列 そして 新しいプロパティを追加する 構造について。 したがって、構造を次のように拡張する必要があります。
<structure name="new_keys" extend="trips">
<property name="travelers" type="collection">
<structure>
<property type="string" />
</structure>
</property>
<property name="accommodation_type" type="string" values="Hotel,Resort,Vacation Rental,Hostel"/>
</structure>
ケース
旅行リソースには2つの構造があることを考えてください。 のため 必須パラム 自動化の場合、 パラメータ欠落 構造および 無効なパラメータ 構造のための 無効なパラメーター ケース。次に、 ケース 次のように構造体内の属性、
<structure-group type="one-of">
<structure name="ParameterMissing" cases="MandatoryParam">
<property name="code" type="string" values="REQUIRED_PARAM_MISSING"/>
<property name="status" type="string" values="error"/>
<property name="message" type="string" values="one of the expected parameter is missing"/>
<property name="details" type="map">
<structure name="Details">
<property name="param_name" type="string"/>
</structure>
</property>
</structure>
<structure name="InvalidParameter" cases="InvalidParam">
<property name="code" type="string" values="INVALID_DATA"/>
<property name="status" type="string" values="error"/>
<property name="message" type="string" values="the given param is invalid"/>
<property name="details" type="map">
<structure name="Details">
<property name="param_name" type="string"/>
</structure>
</property>
</structure>
</structure-group>
構造体のグループ化と構造体のグループ化の詳細については、 タイプ このサンプルで使用される属性は、 熱 意/ヘルプ/ zest -仕様ファイル/構造グループ/導入/"> .
Last Updated 2026-02-06 15:55:45 +0530 IST
Yes
No
Send your feedback to us