フィードを作成する

メディア フィードは、テレビシリーズ、映画、曲、アルバムなど、カタログ内のメディア コンテンツを表すエンティティのコレクションを含む JSON オブジェクトです。オンボーディング プロセスの最初のステップは、フィードの開発です。ファイルの準備が整ったら、Google が定期的に取得できるように、サポートされているいずれかのホスティング方法を使用してフィードをホストする必要があります。

フィード ファイル形式の要件

フィード ファイルには次の要件があります。

  • フィード ファイルのファイル名拡張子は .json である必要があります。
  • フィード ファイルは暗号化しません。
  • フィード ファイルを UTF-8 でエンコードします(ファイル エディタの設定を確認してください)。

    alt_text

  • フィード ファイルが(未圧縮で)1 GB より大きい場合は、ファイルを複数のファイルに分割します。

  • エンティティ タイプ(tvseries.jsontvseasons.jsontvepisodes.jsonmovies.json など)ごとにファイルを作成することをおすすめします。

    • これらのファイルのいずれかが 1 GB を超える場合は、エンティティを複数のファイル(tvepisodes_01.jsontvepisodes_02.json など)に分割します。
    • ファイルサイズが 1 GB 未満である限り、1 つのファイルに含めることができるエンティティの数に制限はありません。
  • JSON 仕様に沿って、ファイルが BOM なしでエンコードされていることを確認します。Linux OS を確認するには、hexdump file.json | head -n 1 をアドレス 0x00 の BBEF で始めることはできません。

フィードのタイプ

本番環境フィード

  • これは、Google でリリースするカタログ全体を表す json フィード ファイルのセットを表します。フィードの作成方法については以下のセクションをご覧ください。
  • このフィードは、初めて Google と統合する場合に必要な唯一のフィードです。
  • このフィードが Google に送信されると、数回にわたって繰り返し分析と反復処理が実施され、取り込まれる情報の量や正確性などにより、品質が高品質に保たれ、最終的に取り込まれてリリースされます。

ステージング フィード

  • 特定のユースケースは、本番環境フィードの拡張を必要とします。たとえば、次のようなシナリオがあります。
    • 以前に公開されていない新しいエンティティ タイプを含めるようにフィードを拡張しました。
    • フィードを拡張し、新しいロケールで大量の新しいエンティティ/メタデータをリリースします。
    • 新しいプラットフォーム タイプへのフィードの拡張。たとえば、本番環境フィードを Google 検索でのみリリースし、リリースを Google TV に拡大する場合などです。
  • そのような場合はステージング フィードが必要です。このフィードは本番環境フィードのコピーです。ただし、追加のメタデータ(新しいプラットフォームのディープリンク、新しいロケールのメタデータなど)が含まれます。
  • 本番環境のフィードと同様に、このデータを複数回分析、反復処理することにより、取得する情報の量とその正確性ではなく、高品質のバーを実現します。 品質バーが生成されると、このフィードは現在の本番環境フィードを置き換えて、新しい本番環境フィードになります。
  • このフィードを使用すると、初回のリリースをその他のリリースから分離し、本番環境フィードに影響を与えることなく、必要なすべてのテストを行うことができます。これにより、エンドユーザーのエクスペリエンスが中断されることはありません。

上記の質問について不明な点がある場合は、Google の担当者にお問い合わせください。

フィード ファイルを作成する

フィードを作成する際は、以下のベスト プラクティスを参考にしてください。

  1. 少数のエンティティを使用してサンプル フィードを作成する

    カタログ内のすべてのコンテンツが含まれるフィードを作成する場合は、事前に少数のエンティティのみを含むサンプル フィードを作成することをおすすめします。フィードの処理中に、問題が発生することがあります。エンティティ セットのサイズを制限することで、これらのエラーや警告をデバッグすることが容易になります。

  2. サンプル フィードを検証する

    Google では、フィードが仕様に準拠していることを確認するツールを提供しています。これらのツールを使用して、サンプル フィードで見つかったすべてのエラーと警告を解決することをおすすめします。

  3. 本番環境フィードを作成する

    少数のエンティティに対して適切な構造になっていることを確認したら、カタログ全体のフィードを作成します。

サンプル フィードを作成する

  1. カタログから代表的なエンティティを 1 つ選択します。比較的複雑な構造のエンティティを選択しますが、これはカタログ内のエンティティではまだ一般的です。
  2. データフィード検証ツールを使用して、構文エラーと必須プロパティがないかどうかを確認します。(詳しくは次のセクションをご覧ください)。

    1 つの Movie エンティティを含むフィードの例

    {
      "@context": "http://schema.org",
      "@type": "DataFeed",
      "dateModified": "2018-07-20T00:44:51Z",
      "dataFeedElement": [
        {
          "@context": ["http://schema.org", {"@language": "en"}],
          "@type": "Movie",
          "@id": "http://www.example.com/my_favorite_movie",
          "url": "http://www.example.com/my_favorite_movie",
          "name": "My Favorite Movie",
          "potentialAction": {
            "@type": "WatchAction",
            "target": {
              "@type": "EntryPoint",
              "urlTemplate": "http://www.example.com/my_favorite_movie?autoplay=true",
              "inLanguage": "en",
              "actionPlatform": [
                "http://schema.org/DesktopWebPlatform",
                "http://schema.org/MobileWebPlatform",
                "http://schema.org/AndroidPlatform",
                "http://schema.org/AndroidTVPlatform",
                "http://schema.org/IOSPlatform",
                "http://schema.googleapis.com/GoogleVideoCast"
              ]
            },
            "actionAccessibilityRequirement": {
              "@type": "ActionAccessSpecification",
              "category": "subscription",
              "requiresSubscription": {
                "@type": "MediaSubscription",
                "name": "Example Package",
                "commonTier": true,
                "@id": "[partner determined string]"
              },
              "availabilityStarts": "2018-07-21T10:35:29Z",
              "availabilityEnds": "2019-10-21T10:35:29Z",
              "eligibleRegion": [
                {
                  "@type": "Country",
                  "name": "US"
                },
                {
                  "@type": "Country",
                  "name": "CA"
                }
              ]
            }
          },
          "sameAs": "https://en.wikipedia.org/wiki/my_favorite_movie",
          "releasedEvent": {
            "@type": "PublicationEvent",
            "startDate": "2008-01-20",
            "location": {
              "@type": "Country",
              "name": "US"
            }
          },
          "description": "This is my favorite movie.",
          "actor": [
            {
              "@type": "Person",
              "name": "John Doe",
              "sameAs": "https://en.wikipedia.org/wiki/John_Doe"
            },
            {
              "@type": "Person",
              "name": "Jane Doe",
              "sameAs": "https://en.wikipedia.org/wiki/Jane_Doe"
            }
          ],
          "identifier": [
            {
              "@type": "PropertyValue",
              "propertyID": "IMDB_ID",
              "value":  "tt0123456"
            }
          ]
        }
      ]
    }
    

サンプル フィードを検証する

以下のツールは、Google のメディア フィード向け構造化データの仕様を使用してサンプル フィードを検証するのに役立ちます。

  • データフィード検証ツール

    データフィード検証ツールでは一度に 1 つのエンティティを検証できます。このツールを使用して、カタログのサンプル エンティティを検証し、構造エラーや一般的なコンテンツ エラーがないか確認します。ツールの詳細については、こちらをご覧ください。

  • JSON スキーマ検証ツール

    JSON スキーマ検証ツールは、フィード内のすべてのファイルを検証できます。フィードの構造化中にこのツールを使用し、一般的な構造エラーを回避します。ツールの詳細については、こちらをご覧ください。

本番フィードを作成する

  1. サンプル フィードのエラーと警告をすべて解決したら、フィードを開き、カタログ内のすべてのエンティティを含めます。
  2. データフィード検証ツールを頻繁に使用して、フィード内の少数のエンティティを一度に検証します(ツールに大量のエンティティを貼り付けると、ウェブブラウザがフリーズする可能性があります)。フィード内のエンティティ数とカタログ内のアイテム数を比較して、カタログ内のすべてのエンティティがフィードに含まれていることを確認します。