AEMを使用したヘッドレス向けコンテンツモデリングの基本について説明します。

今までの話

AEM Headless Content Architectジャーニーの冒頭で、はじめにでは、ヘッドレス用のコンテンツのモデリングに関連する基本的な概念と用語について説明しました。

この記事はこれらを基に構築され、AEMヘッドレスプロジェクトのコンテンツをモデル化する方法を理解できます。

目的

  • オーディエンス:初心者
  • 目的:ヘッドレスCMS向けコンテンツモデリングの概念を紹介します。

コンテンツフラグメントモデルを使用したコンテンツモデリング

コンテンツ(データ)モデリングは確立された一連のテクニックで、関係データベースを開発する際によく使用されます。そのため、コンテンツモデリングはAEMヘッドレスに対して何を意味しますか。

使用する理由

アプリケーションが AEM から必要なコンテンツを一貫して効率的に要求し、受け取れるようにするには、このコンテンツが構造化されている必要があります。

つまり、アプリケーションは、事前に応答の形式を把握し、その処理方法を把握しています。これは、自由形式のコンテンツを受け取るよりもはるかに簡単です。自由形式のコンテンツを受け取る場合は、そのコンテンツの内容と使用方法を判断するために解析する必要があります。

仕組みの概要

AEM は、コンテンツフラグメントを使用して、コンテンツをアプリケーションにヘッドレスに配信するために必要な構造を提供します。

コンテンツモデルの構造には次が当てはまります。

  • コンテンツフラグメントモデルの定義によって実現される。
  • コンテンツ生成に使用されるコンテンツフラグメントの基礎として使用される。
メモ

コンテンツフラグメントモデルは、AEM GraphQLスキーマの基礎としても使用され、開発者ジャーニーでコンテンツを取得するために使用されます。

コンテンツのリクエストは、標準の GraphQL API のカスタマイズされた実装である AEM GraphQL API を使用しておこなわれます。AEM GraphQL APIを使用すると、アプリケーションはコンテンツフラグメントに対して(複雑な)クエリを実行でき、各クエリが特定のモデルタイプに従っています。

返されたコンテンツは、アプリケーションで使用できます。

コンテンツフラグメントモデルを使用した構造の作成

コンテンツフラグメントモデルは、コンテンツの構造を定義するための様々なメカニズムを提供します。

コンテンツフラグメントモデルは、エンティティを記述します。

メモ

新しいモデルを作成するには、設定ブラウザーでコンテンツフラグメント機能を有効にする必要があります。

ヒント

コンテンツフラグメントの作成時に選択するモデルをコンテンツ作成者が把握できるように、モデルに名前を付ける必要があります。

モデル内:

  1. データタイプ​を使用すると、個々の属性を定義できます。例えば、教師の名前を持つフィールドを Text とし、その勤続年数を Number と定義します。
  2. コンテンツ参照​および​フラグメント参照​データタイプを使用すると、AEM 内の他のコンテンツとの関係を作成できます。
  3. フラグメント参照​データタイプを使用すると、(モデルタイプに従って)コンテンツフラグメントをネストすることで、複数レベルの構造を実現できます。これは、コンテンツモデリングに不可欠です。

次に例を示します。

コンテンツフラグメントを使用したコンテ

データタイプ

AEM では、コンテンツをモデル化するための次のデータタイプが提供されます。

  • 1 行のテキスト
  • 複数行テキスト
  • 数値
  • ブール値
  • 日時
  • 列挙
  • タグ
  • コンテンツ参照
  • フラグメント参照
  • JSON オブジェクト
メモ

詳しくは、コンテンツフラグメントモデル — データタイプを参照してください。

参照とネストされたコンテンツ

2 つのデータタイプは、特定のフラグメント外のコンテンツへの参照を提供します。

  • コンテ
    ンツの参照
    ​任意のタイプの他のコンテンツへの簡単な参照を提供します。例えば、指定した場所で画像を参照できます。

  • フラグメ
    ントの参照
    ​他のコンテンツフラグメントへの参照を提供します。このタイプの参照は、ネストされたコンテンツを作成するために使用され、コンテンツのモデル化に必要な関係を導き出します。このデータタイプは、フラグメント作成者が次の操作をおこなえるように設定可能です。

    • 参照先フラグメントの直接編集
    • 適切なモデルに基づいた新しいコンテンツフラグメントの作成
メモ

また、テキストブロック内のリンクを使用してアドホック参照を作成することもできます。

構造のレベル(ネストされたフラグメント)

コンテンツモデリングの場合は、「フラグメント参照」データ型を使用して、複数のレベルの構造と関係を作成できます。

このリファレンスでは、様々なコンテンツフラグメントモデルを​接続​して、相互関係を表すことができます。 これにより、ヘッドレスアプリケーションが接続をたどり、必要に応じてコンテンツにアクセスできます。

メモ

これは慎重に使用し、ベストプラクティスは必要なだけ​ネストとして定義できますが、できるだけ少なく​します。

フラグメント参照はそのような役割を果たし、別のフラグメントを参照できます。

例えば、次のコンテンツフラグメントモデルを定義できます。

  • City
  • 会社
  • Person
  • awards(受賞歴)

簡単に見えるが、もちろん会社にはCEOと従業員がいる….これらはすべて人で、それぞれが人として定義されます。

そして、1人の人に賞(または2つ)を与えることができます。

  • マイ会社 — 会社
    • CEO — 担当者
    • 従業員 — 個人
      • 個人賞 — 賞

それはスターター向けです 複雑さに応じて、賞は会社固有の場合もあれば、会社が特定の都市に主なオフィスを持つ場合もあります。

これらの相互関係は、自分(アーキテクト)、コンテンツ作成者、ヘッドレスアプリケーションが理解しているフラグメント参照を使用して実現できます。

次の手順

これで基本を学習したので、次の手順は、AEM🔗でのコンテンツフラグメントモデルの作成について学習します。 これにより、使用可能な様々な参照が導入され、そしてフラグメント参照を使用して構造のレベルを作成する方法が説明されます。フラグメント参照はヘッドレスのモデリングの主要な部分です。

その他のリソース

このページ