この章では、コンテンツフラグメントモデルを使用してコンテンツをモデル化し、スキーマを構築する方法について説明します。また、モデルの一部としてスキーマの定義に使用できる様々なデータタイプについて説明します。
チームと人物という 2 つのシンプルなモデルを作成します。チームデータモデルには、名前、短い名前、説明が付けられており、姓名、プロフィールの詳細、プロファイルの画像、職業のリストを含む人物データモデルを参照します。
また、基本的な手順に従って独自のモデルを作成し、GraphQL クエリや React App コードなどの各手順を微調整するか、これらの章で説明されている手順に従うこともできます。
これは複数のパートから成るチュートリアルで、AEM オーサー環境が使用可能であることを前提としています。
プロジェクト設定には、特定のプロジェクトに関連付けられたすべてのコンテンツフラグメントモデルが含まれており、モデルを整理する手段を提供します。コンテンツフラグメントモデルを作成する前に、少なくとも 1 つのプロジェクトを作成する必要があります。
AEM オーサー環境にログインします(例:https://author-pYYYY-eXXXX.adobeaemcloud.com/
)。
AEM 開始画面から、ツール/一般/設定ブラウザーに移動します。
右上隅にある「作成」をクリックします。
表示されたダイアログで、次のように入力します。
次に、チームと人物の 2 つのモデルを作成します。
人物モデルを作成します。これは、チームの一員である個人を表すデータモデルです。
AEM 開始画面から、ツール/一般/コンテンツフラグメントモデルに移動します。
マイプロジェクトフォルダーに移動します。
右上隅にある「作成」をクリックして、モデルを作成ウィザードを表示します。
モデルタイトルフィールドに「人物」と入力し、「作成」をクリックします。表示されたダイアログで、「開く」をクリックしてモデルを作成します。
1 行のテキスト要素をメインパネルにドラッグ&ドロップします。「プロパティ」タブで次のプロパティを入力します。
fullName
プロパティ名は、AEM に永続化されるプロパティの名前を定義します。プロパティ名は、データスキーマの一部としてこのプロパティのキー名も定義します。このキーは、GRAPHQL API を介してコンテンツフラグメントデータを公開する際に使用されます。
「データタイプ」タブをクリックし、「フルネーム」フィールドの下にある「複数行テキスト」フィールドをドラッグ&ドロップします。次のプロパティを入力します。
biographyText
「データタイプ」タブをクリックして、「コンテンツ参照」フィールドをドラッグ&ドロップ します。次のプロパティを入力します。
profilePicture
/content/dam
ルートパスを設定する際に、フォルダーアイコンをクリックしてモーダルを表示し、パスを選択できます。 これにより、作成者がパスへの入力に使用できるフォルダーが制限されます。 /content/dam
は、すべての AEM Assets(画像、ビデオ、その他のコンテンツフラグメント)が保存されるルートです。
画像参照に検証を追加して、画像コンテンツタイプのみをフィールドの入力に使用できるようにします。
「データタイプ」タブをクリックし、定義済みリスト データタイプを「画像参照」フィールドの下にドラッグ&ドロップします。次のプロパティを入力します。
occupation
「オプションを追加」ボタンを使用して、いくつかのオプションを追加します。同じ値を「オプションラベル」および「オプション値」で使用します。
アーティスト、インフルエンサー、写真家、旅行者、ライター、YouTuber
最終的な人物モデルは次のようになります。
「保存」をクリックして、変更を保存します。
チームのモデルを作成します。これは、人物のチームのデータモデルです。チームモデルは、チームのメンバーを表す人物モデルを参照します。
マイプロジェクトフォルダーで、右上隅にある「作成」をタップすると、モデルを作成lウィザードが表示されます。
「モデルタイトル」フィールドに「チーム」と入力して、「作成」をタップします。
表示されたダイアログで「 開く」をタップして、新しく作成したモデルを開きます。
1 行テキスト要素をメインパネルにドラッグ&ドロップします。 次のプロパティを「プロパティ」タブに入力します。
title
「データタイプ」タブをタップし、1 行テキスト要素をメインパネルにドラッグ&ドロップします。次のプロパティを「プロパティ」タブに入力します。
shortName
^[a-z0-9\-_]{5,40}$
を入力します。これにより、5~40 文字の小文字の英数字とダッシュのみを入力できるようになります。shortName
プロパティを使用すると、短縮パスに基づいて個々のチームに対してクエリを実行できます。 一意設定により、このモデルのコンテンツフラグメントごとに常に一意の値が設定されます。
「データタイプ」タブをタップし、「複数行テキスト」フィールドを「短縮名」フィールドの下にドラッグ&ドロップします。次のプロパティを入力します。
description
teamMembers
最終チームモデルは次のようになります。
「保存」をクリックして、変更を保存します。
これで、2 つのモデルを使用できるようになります。
レビューと検証で Project Configuration
と Content Fragment Model
を公開します
AEM 開始画面から、ツール/一般/設定ブラウザーに移動します。
マイプロジェクトの横にあるチェックボックスをタップし、「公開」をタップします。
AEM 開始画面から、ツール/一般/コンテンツフラグメントモデルに移動します。
マイプロジェクトフォルダーに移動します。
人物とチームのモデルをタップして、「公開」をタップします。
これで、最初のコンテンツフラグメントモデルが作成されました。
次の章、コンテンツフラグメントモデルのオーサリングでは、コンテンツフラグメントモデルに基づいて新しいコンテンツフラグメントを作成し、編集します。また、コンテンツフラグメントのバリエーションを作成する方法についても説明します。