1. OpenAPI

ドメインの仕様

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

ドメインは、複数の API 定義にわたって使用されるパラメーター、応答、データ モデルなどの仕様とマッピングのライブラリです。

ドメインは、独自のビジネス ケースを表します。 ドメインは、関連するドメインの仕様をグループ化してバージョン管理します。既定では、OpenAPI は最新バージョンのドメイン仕様で動作します。

ドメインは以下で構成されます。

ドメインのプロパティ

Sitecore Content Hub™ の OpenAPI ドメインには、次のプロパティが含まれています。

プロパティ目的
名前ドメインの名前
説明ドメインの目的
有効ドメインの状態
DomainIdentifierドメインの識別子 (OpenAPI ドキュメントを取得するために必要)
Specificationバージョン管理されたマッピングのコレクション

ドメイン仕様

ドメイン仕様は、統合のために Sitecore Content Hub™ で必要な出力仕様を表します。 これには以下が含まれます。

プロパティ目的
entity_views個別のエンティティ マッピングのコレクション
version仕様の一意の整数バージョン
statusドメイン ステータス整数値:
  • ドラフト (整数: 0) は既定のステータスです
  • Active (整数: 1) 仕様は編集できません
  • Disabled (整数: 2) API 経由で取得できません

ドメイン仕様の例については、M.Asset エンティティを使用したドメインのテストの例を参照してください。

EntityView

EntityView は、オンデマンドで取得するエンティティ メンバーのサブセットを表します。 これには以下が含まれます。

プロパティ目的
identifier文字列一意の識別子 (同じドメイン内で一意である必要があります)。
entity_definition_name文字列特定のエンティティ ビューに関連付けられているコンテンツ ハブ エンティティ定義の名前。
related_pathsオブジェクト関連するパスを表示するかどうかを規定します。
public_linksBooleanパブリック リンクを表示するかどうかを規定します。
display_nameBoolean表示名を表示するかどうかを規定します。
languages配列含めるカルチャを規定します。
properties配列含めるプロパティを規定します。
relationsRelationView 要素のリスト含めるリレーションを規定します。
システム プロパティSystemPropertiesView オブジェクト含めるシステム プロパティを規定します。
renditionsRenditionViewオブジェクトのリスト含めるレンディションを規定します。

RelationView

RelationView は、リレーション定義に基づいてオンデマンドでフェッチするエンティティ メンバーのサブセットを表します。 これには以下が含まれます。

プロパティ目的
relation_nameリレーションの名前。 これは、リレーションを解決するために使用されます。
viewEntityView: 関連エンティティのビュー。
roleリレーションのロール。 これは整数です [0:子、1:親]。

SystemPropertiesView

SystemPropertiesView は、抽出するエンティティのシステム プロパティのサブセットを表します。 これには以下が含まれます。

プロパティ目的
created_byブール値エンティティ作成者のユーザー名を表示するかどうかを規定します。
created_onDateTime作成の日付と時刻の表示方法を規定します。
idBooleanID を表示するかどうかを規定します。
identifierBoolean識別子を表示するかどうかを規定します。
modified_byBooleanエンティティ変更者のユーザー名を表示するかどうかを規定します。
modified_onDateTime変更の日付と時刻の表示方法を規定します。
versionBooleanエンティティのバージョンを表示するかどうかを規定します。

RenditionView

RenditionView は、抽出するエンティティからのレンディションのサブセットを表します。 これには以下が含まれます。

プロパティ目的
rendition_link_name例: プレビュー、サムネイル、メタデータ、またはカスタム レンディション

ResourceView

ResourceView は、OpenAPI 呼び出しの出力を表します。 EntityView 設定は、Sitecore Content Hub™API によって ResourceView に変換されます。

ResourceView には以下が含まれます。

プロパティ目的
propertiesエンティティから抽出されたメンバー プロパティ
relationsエンティティから抽出されたリレーション
public_linksエンティティから抽出されたパブリック リンク
renditionsエンティティから抽出されたレンディション
システム プロパティエンティティから抽出されたシステム プロパティ

OpenAPI クラス

次の図は、OpenAPI クラスを表しています。

ドメイン仕様テンプレート

次のテンプレートは、さまざまなタイプのドメイン コンポーネントを示す Sitecore Content Hub™ OpenAPI 3.0 ドメイン定義の例です。

[
    {
        "version": ##DomainSpecificationVersionInteger##,
        "status": ##StatusInteger##,
        "entity_views": {
            "##ResourceViewId##": {
                "identifier": "##ResourceViewId##",
                "entity_definition_name": "##DefinitionName##",
                "public_links": true,
                "languages": [
                    "en-US"
                ],
                "properties": [
                    "##PropertyNameString##"
                ],
                "system_properties": {
                    "id": true,
                    "identifier": true,
                    "version": true,
                    "created_on": {
                        "language": "en-US",
                        "format": "dddd, MMMM dd, yyyy HH:mm:ss",
                        "utc_time_offset": "03:00"
                    },
                    "modified_on": {
                        "language": "en-US"
                    },
                    "created_by": true,
                    "modified_by": true
                },
                "relations": [
                    {
                        "relation_name": "##RelationName##",
                        "relation_role": 1,
                        "public_links": true,
                        "view": {
                            "identifier": "##AnyIdString##",
                            "entity_definition_name": "##RelatedEntityDefinitionName##",
                            "public_links": true,
                            "properties": [],
                            "relations": [],
                            "renditions": []
                        }
                    }
                ],
                "renditions": [
                    {
                        "rendition_link_name": "##RenditionType##"
                    }
                ]
            }
        }
    }
]
この記事を改善するための提案がある場合は、 お知らせください!