

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Amazon EventBridge 中建立事件結構描述
<a name="eb-schema-create"></a>

您可以透過使用 JSON 檔案與 [OpenAPI 規範](https://swagger.io/specification/)或 [ JSONSchema Draft4 規範](https://json-schema.org/specification-links.html#draft-4)建立結構描述。您可以使用範本或根據[事件](eb-events.md)的 JSON 產生結構描述，在 EventBridge 中建立或上傳自己的結構描述。您也可以從[事件匯流排](eb-event-bus.md)上的事件推斷結構描述。若要使用 EventBridge 結構描述登錄檔 API 建立結構描述，請使用 [https://docs.aws.amazon.com/eventbridge/latest/schema-reference/v1-registries-name-registryname-schemas-name-schemaname.html#v1-registries-nam](https://docs.aws.amazon.com/eventbridge/latest/schema-reference/v1-registries-name-registryname-schemas-name-schemaname.html#v1-registries-nam) API 動作。

當您在 OpenAPI 3 和 JSONSchema Draft4 格式之間進行選擇時，請考慮以下差異：
+ JSONSchema 格式支援 OpenAPI 中不支援的其他關鍵字，例如 `$schema, additionalItems`。
+ 關鍵字的處理方式有些微差異，例如 `type` 和 `format`。
+ OpenAPI 不支援 JSON 文件中的 JSONSchema 超結構描述超連結。
+ OpenAPI 的工具傾向於專注於構建時，而 JSONSchema 的工具傾向於專注於運行時操作，例如用於模式驗證的客戶端工具。

我們建議您使用 JSONSchema 格式來實作用戶端驗證，以便傳送至 EventBridge 的事件符合結構描述。您可以使用 JSONSchema 來定義有效 JSON 文件的合約，然後在傳送相關事件之前使用 [JSON 結構描述驗證程式](https://json-schema.org/tools)。

建立新結構描述之後，您可以下載[程式碼繫結](eb-schema-code-bindings.md)，以協助建立具有該結構描述之事件的應用程式。