# OpenAPIの仕様

ツールセットであるOpenAPIの仕様は、APIのデザイン、ビルド、ドキュメント作成、使用に役立ちます。

OpenAPI仕様は、REST APIを使用してクライアントとサーバーの間のインタラクションを記述するWeb Services Definition Languageと似ています。詳細は、[OpenAPI仕様](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md) (英語のみ)のドキュメンテーションをご参照ください。

OpenAPI仕様ファイルには、クライアントサーバーのインタラクションに加えて、入出力データストラクチャーの記述も含まれています。[JSON OpenAPI Specifications] (JSON OpenAPI仕様)オプションを使用してOpenAPI仕様ファイルをインポートする時に、Talend Data Mapperはデータストラクチャーの記述を抽出し、デフォルトのJSON表記を使用してストラクチャーを作成します。たとえば、[YAMLのサンプル](https://help.qlik.com/talend/ja-JP/data-mapper-user-guide/8.0/yaml-example)と[JSONのサンプル](https://help.qlik.com/talend/ja-JP/data-mapper-user-guide/8.0/json-example)をご覧ください。

## サポートされている機能

以下の情報は、OpenAPI仕様をストラクチャーにインポートする時に役立ちます。

* インポートされるストラクチャーはすべてシンプルです。OpenAPI 2.0仕様のプリミティブタイプには通常どおり、文字列、整数、浮動/倍精度のミックスが含まれています。

* 配列がTalend Data Mapper内で繰り返し可能なエレメントに変換されます(ループ)。

* [additionalProperties](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#schemaObject) (英語のみ) OpenAPI仕様の機能は、Talend Data MapperでMAP型のグループに変換されます。

* [allOf](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#schemaObject) (英語のみ)構成はTalend Data Mapper継承に自然に変換されます。

* [oneOfとanyOf](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#schemaObject) (英語のみ)は、Talend Data Mapper内で選択肢に変換されます。

  情報メモ注: Talend Data Mapper内の選択肢は、anyOfのセマンティックに完全に一致しません。次のスキーマの例では、JSONをCat、Dog、またはその両方にできます。Talend Data Mapperは両方のケースをサポートしていません。

  ```
  CatOrDog:
        anyOf:
          - $ref: '#/components/schemas/Cat'
          - $ref: '#/components/schemas/Dog'
  ```

### このセクション内

* [YAMLの例](https://help.qlik.com/talend/ja-JP/data-mapper-user-guide/8.0-R2025-02/yaml-example)
* [JSONの例](https://help.qlik.com/talend/ja-JP/data-mapper-user-guide/8.0-R2025-02/json-example)
* [制限](https://help.qlik.com/talend/ja-JP/data-mapper-user-guide/8.0-R2025-02/restrictions)