データセット

データセットの名前、説明、作成者、配布形式などのサポート情報を構造化データとして提供すると、データセットを見つけやすくなります。Google のデータセット検出アプローチでは、schema.org とその他のメタデータ規格を利用します。これらは、データセットを記述するページに追加できます。Dataset マークアップの目的は、生命科学、社会科学、機械学習、市民および政府のデータなど、各種分野のデータセットを検出しやすくすることにあります。データセット検索ツールを使用してデータセットを検出できます。

データセット検索の例

データセットと見なすことができるものには、以下があります。

  • データが格納されているテーブルまたは CSV ファイル
  • テーブルの組織的なコレクション
  • データが格納されている固有の形式のファイル
  • 意味を持つデータセットを全体として構成するファイルのコレクション
  • 構造化オブジェクトと他の形式のデータの組み合わせ(処理を行うには特別なツールに読み込むことをおすすめします)
  • 画像キャプチャ データ
  • 機械学習に関連するファイル(学習済みパラメータやニューラル ネットワークの構造定義など)
  • データセットのように見えるすべてのもの

構造化データを追加する方法

構造化データは、ページに関する情報を提供し、ページ コンテンツを分類するための標準化されたデータ形式です。構造化データを初めて使用する場合は、構造化データの仕組みについてをご覧ください。

構造化データの作成、テスト、リリースの概要は次のとおりです。ウェブページに構造化データを追加するための手順ガイドについては、構造化データの Codelab をご覧ください。

  1. 必須プロパティを追加します。ページ上の構造化データを配置する場所について詳しくは、JSON-LD 構造化データ: ページでの挿入場所をご覧ください。
  2. ガイドラインを遵守します。
  3. リッチリザルト テストでコードを検証します。
  4. 構造化データが含まれているページを数ページ導入し、URL 検査ツールを使用して、Google でページがどのように表示されるかをテストします。Google がページにアクセスでき、robots.txt ファイル、noindex タグ、またはログイン要件によってページがブロックされていないことを確認します。ページが正常に表示される場合は、Google に URL の再クロールを依頼できます。
  5. 今後の変更について Google への情報提供を続けるには、サイトマップを送信することをおすすめします。これは、Search Console Sitemap API で自動化できます。

Google のデータセット検出アプローチ

Google では、ウェブページ内のデータセットに関する構造化データを理解するために、schema.org の Dataset マークアップ、または W3CData Catalog Vocabulary(DCAT)形式で表現された同等の構造を使用します。また、Google はデータセットの記述に関する新たなベスト プラクティスに基づいてアプローチを進化、適応させることを目指しており、W3C CSVW に基づく構造化データの試験的なサポートを検討しています。Google のデータセット検出アプローチについて詳しくは、データセットを検出しやすくする方法についてのブログ記事をご覧ください。

JSON-LD と schema.org 構文(推奨)で記述したデータセットをリッチリザルト テストで表示する例を次に示します。RDFa 1.1 や microdata の構文でも、同じ schema.org のボキャブラリを使用できます。 W3C DCAT ボキャブラリを使用してメタデータを記述することもできます。次の例は、実際のデータセットの記述に基づいています。

JSON-LD

JSON-LD でデータセットを記述する例を示します。


  <html>
  <head>
    <title>NCDC Storm Events Database</title>
    <script type="application/ld+json">
    {
      "@context":"https://schema.org/",
      "@type":"Dataset",
      "name":"NCDC Storm Events Database",
      "description":"Storm Data is provided by the National Weather Service (NWS) and contain statistics on...",
      "url":"https://catalog.data.gov/dataset/ncdc-storm-events-database",
      "sameAs":"https://gis.ncdc.noaa.gov/geoportal/catalog/search/resource/details.page?id=gov.noaa.ncdc:C00510",
      "identifier": ["https://doi.org/10.1000/182",
                     "https://identifiers.org/ark:/12345/fk1234"],
      "keywords":[
         "ATMOSPHERE > ATMOSPHERIC PHENOMENA > CYCLONES",
         "ATMOSPHERE > ATMOSPHERIC PHENOMENA > DROUGHT",
         "ATMOSPHERE > ATMOSPHERIC PHENOMENA > FOG",
         "ATMOSPHERE > ATMOSPHERIC PHENOMENA > FREEZE"
      ],
      "license" : "https://creativecommons.org/publicdomain/zero/1.0/",
      "hasPart" : [
        {
          "@type": "Dataset",
          "name": "Sub dataset 01",
          "description": "Informative description of the first subdataset...",
          "license" : "https://creativecommons.org/publicdomain/zero/1.0/"
        },
        {
          "@type": "Dataset",
          "name": "Sub dataset 02",
          "description": "Informative description of the second subdataset...",
          "license" : "https://creativecommons.org/publicdomain/zero/1.0/"
        }
      ],
      "creator":{
         "@type":"Organization",
         "url": "https://www.ncei.noaa.gov/",
         "name":"OC/NOAA/NESDIS/NCEI > National Centers for Environmental Information, NESDIS, NOAA, U.S. Department of Commerce",
         "contactPoint":{
            "@type":"ContactPoint",
            "contactType": "customer service",
            "telephone":"+1-828-271-4800",
            "email":"ncei.orders@noaa.gov"
         }
      },
      "includedInDataCatalog":{
         "@type":"DataCatalog",
         "name":"data.gov"
      },
      "distribution":[
         {
            "@type":"DataDownload",
            "encodingFormat":"CSV",
            "contentUrl":"http://www.ncdc.noaa.gov/stormevents/ftp.jsp"
         },
         {
            "@type":"DataDownload",
            "encodingFormat":"XML",
            "contentUrl":"http://gis.ncdc.noaa.gov/all-records/catalog/search/resource/details.page?id=gov.noaa.ncdc:C00510"
         }
      ],
      "temporalCoverage":"1950-01-01/2013-12-18",
      "spatialCoverage":{
         "@type":"Place",
         "geo":{
            "@type":"GeoShape",
            "box":"18.0 -65.0 72.0 172.0"
         }
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>
RDFa

RDFa で DCAT ボキャブラリを使用してデータセットを記述する例を示します。


<article about="/node/1234" typeof="dcat:Dataset">
    <dl>
      <dt>Name:</dt>
      <dd property="dc:title">ACME Inc Cash flow data</dd>
      <dt>Identifiers:</dt>
      <dd property="dc:identifier">https://doi.org/10.1000/182</dd>
      <dd property="dc:identifier">https://identifiers.org/ark:/12345/fk1234</dd>
      <dt>Description:</dt>
      <dd property="dc:description">Financial Statements - Consolidated Statement of Cash Flows</dd>
      <dt>Category:</dt>
      <dd rel="dc:subject">Financial</dd>
      <dt class="field-label">Downloads:</dt>
      <dd>
        <ul>
          <li>
            <a rel="dcat:distribution" href="Consolidated_Statement_of_Cash_Flows_en.csv"><span property="dcat:mediaType" content="text/csv" >Consolidated_Statement_of_Cash_Flows_en.csv</span></a>
          </li>
         <li>
            <a rel="dcat:distribution"  href="files/Consolidated_Statement_of_Cash_Flows_en.xls"><span property="dcat:mediaType" content="application/vnd.ms-excel">Consolidated_Statement_of_Cash_Flows_en.xls</span></a>
          </li>
          <li>
            <a rel="dcat:distribution"  href="files/consolidated_statement_of_cash_flows_en.xml"><span property="dcat:mediaType" content="application/xml">consolidated_statement_of_cash_flows_en.xml</span></a>
          </li>
        </ul>
      </dd>
    </dl>
  </article>

ガイドライン

サイトは構造化データのガイドラインに準拠する必要があります。さらに、下記のサイトマップおよびソースと来歴に関するおすすめの方法にも準拠することをおすすめします。

サイトマップに関するおすすめの方法

サイトマップ ファイルを使用すると、Google が URL を見つけやすくなります。また、サイトマップ ファイルと sameAs マークアップを使用すると、データセットの記述がサイト全体でどのように公開されているかを文書化できます。

データセット リポジトリを使用している場合は、少なくとも 2 種類のページが存在する可能性があります(各データセットの正規(「ランディング」)ページと、複数のデータセット(例: 検索結果、データセットのなんらかのサブセット)がリストされているページ)。データセットに関する構造化データは正規ページに追加することをおすすめします。構造化データをデータセットの複数のコピー(検索結果ページ内のリストなど)に追加する場合は、sameAs プロパティを使用して正規ページにリンクします。

ソースと来歴に関するおすすめの方法

オープン データセットを再公開、集約したり、他のデータセットに基づくよう変更したりすることはよくあります。これは、データセットが別のデータセットのコピーであること(または別のデータセットに基づくものであること)を示すためのアプローチの初期段階です。

  • データセットや記述が他のどこかで公開された素材を単に再公開したものである場合は、sameAs プロパティを使用して、オリジナルのほとんどの正規 URL を指定します。sameAs の値は、データセットの ID を明確に示す必要があります。つまり、2 つの異なるデータセットで sameAs の値と同じ URL を使用しないでください。
  • 再公開されたデータセット(そのメタデータを含む)が大幅に変更された場合は、isBasedOn プロパティを使用します。
  • データセットが複数のオリジナルから派生したものである場合、または複数のオリジナルを集約したものである場合は、isBasedOn プロパティを使用します。
  • identifier プロパティを使用して、関連性のあるデジタル オブジェクト識別子(DOI)またはコンパクト識別子をすべて付加します。データセットに識別子が複数ある場合は、identifier プロパティを繰り返し指定します。JSON-LD を使用している場合、これは JSON リスト構文によって表されます。

Google は、フィードバックに基づいて推奨事項(特に来歴の記述、バージョニング、および時系列公開に関連付けられている日付に関するもの)を改善したいと考えています。コミュニティのディスカッションにぜひご参加ください。

テキスト プロパティの推奨事項

すべてのテキスト プロパティは半角 5,000 文字(全角 2,500 文字)以下に制限することをおすすめします。Google データセット検索では、テキスト プロパティの最初の半角 5,000 文字(全角 2,500 文字)のみが使用されます。名前とタイトルは通常、数語または短い文にします。

既知のエラーと警告

Google の構造化データ テストツールやその他の検証システムにおいて、エラーや警告が発生することがあります。特に、組織で連絡先情報(contactType など)を使用するように検証システムが提案することがあります。有用な値には、customer serviceemergencyjournalistnewsroompublic engagement などがあります。csvw:TablemainEntity プロパティの予期しない値に設定されるエラーも無視して構いません。

構造化データタイプの定義

コンテンツがリッチリザルトとして表示されるようにするには、必須プロパティを含める必要があります。また、推奨プロパティを使用することでコンテンツに関する詳細情報を追加でき、ユーザー エクスペリエンスの向上につながります。

構造化データ テストツールを使用して、マークアップを検証できます。

データセット(そのメタデータ)に関する情報を記述し、そのコンテンツを表現することに焦点を当てます。たとえば、データセットのメタデータでは、データセットの内容、データセットで測定する変数、データセットの作成者などを記述します。変数の特定の値などは含めません。

Dataset

Dataset の定義の全文は schema.org/Dataset で確認できます。

データセットの公開に関する詳細情報(ライセンス、公開日、DOI、別のリポジトリに格納されているデータセットの正規バージョンを指している sameAs など)を記述できます。来歴やライセンスの情報を提供するデータセット用に identifierlicensesameAs を追加します。

必須プロパティ
description Text

データセットの要約文。

ガイドライン

  • 要約の長さは 50~5,000 文字の範囲にします。
  • 要約にはマークダウン構文を含めることができます。埋め込み画像には絶対パスの URL を指定します(相対パスは使用しない)。
  • JSON-LD 形式を使用する場合は、改行を \n(\ と小文字の「n」の 2 文字)で示します。
name Text

データセットのわかりやすい名前。例: "北半球の積雪量"

推奨プロパティ
alternateName Text

エイリアスや略語など、データセットを示すために使用されている代替名。JSON-LD 形式の例を以下に示します。


"name": "The Quick, Draw! Dataset"
"alternateName": ["Quick Draw Dataset", "quickdraw-dataset"]
creator Person または Organization

このデータセットの作成者。個人を一意に識別するには、Person タイプの sameAs プロパティの値として ORCID ID を使用します。機関や組織を一意に識別するには ROR ID を使用します。JSON-LD 形式の例を以下に示します。


"creator": [
    {
        "@type": "Person",
        "sameAs": "http://orcid.org/0000-0000-0000-0000",
        "givenName": "Jane",
        "familyName": "Foo",
        "name": "Jane Foo"
    },
    {
        "@type": "Person",
        "sameAs": "http://orcid.org/0000-0000-0000-0001",
        "givenName": "Jo",
        "familyName": "Bar",
        "name": "Jo Bar"
    },
    {
        "@type": "Organization",
        "sameAs": "http://ror.org/xxxxxxxxx",
        "name": "Fictitious Research Consortium"
    }
]
citation Text または CreativeWork

データセットに加えて引用されている、データ プロバイダが推奨する学術記事を識別します。データセット自体の引用は、nameidentifiercreatorpublisher など、他のプロパティと合わせて指定します。たとえばこのプロパティでは、データ記述子やデータ論文などの関連する学術出版物、またはそのデータセットが補助的な資料になっている記事などを一意に識別できます。JSON-LD 形式の例を以下に示します。


"citation": "https://doi.org/10.1111/111"

"citation": "https://identifiers.org/pubmed:11111111"

"citation": "https://identifiers.org/arxiv:0111.1111v1"

"citation":
 "Doe J (2014) Influence of X ... https://doi.org/10.1111/111"

その他のガイドライン

  • このプロパティは、データセット自体の引用情報を示す目的では使用しないでください。これは、データセット自体ではなく、関連する学術記事を識別するために使用するフィールドです。データセット自体の引用に必要な情報を指定するには、nameidentifiercreatorpublisher プロパティを使用します。
  • 引用スニペットを使用して引用プロパティに入力するには、可能な限り記事識別子(DOI など)を指定します。

    推奨: "Doe J (2014) Influence of X. Biomics 1(1). https://doi.org/10.1111/111"

    非推奨: "Doe J (2014) Influence of X. Biomics 1(1)."

hasPart または isPartOf URL または Dataset

データセットが小さなデータセットのコレクションである場合、hasPart プロパティを使用してその関係を表します。逆に、データセットが大きなデータセットの一部である場合は、isPartOf を使用します。どちらのプロパティも、URL または Dataset インスタンスの形式をとることができます。Dataset を値として使用する場合は、スタンドアロンの Dataset に必要なすべてのプロパティを含める必要があります。 例:


"hasPart" : [
  {
    "@type": "Dataset",
    "name": "Sub dataset 01",
    "description": "Informative description of the first subdataset...",
    "license" : "https://creativecommons.org/publicdomain/zero/1.0/"
  },
  {
    "@type": "Dataset",
    "name": "Sub dataset 02",
    "description": "Informative description of the second subdataset...",
    "license" : "https://creativecommons.org/publicdomain/zero/1.0/"
  }
]

"isPartOf" : "https://example.com/aggregate_dataset"
identifier URLText、または PropertyValue

DOI やコンパクト識別子などの識別子。データセットに識別子が複数ある場合は、identifier プロパティを繰り返し指定します。JSON-LD を使用している場合、これは JSON リスト構文によって表されます。

keywords Text

データセットの概要を示すキーワード。

license URLCreativeWork

データセットの配布ライセンス。次に例を示します。


"license" : "https://creativecommons.org/publicdomain/zero/1.0/"

"license" : {
  "@type": "CreativeWork",
  "name": "Custom license",
  "url": "https://example.com/custom_license"
  }

その他のガイドライン

  • 使用されているライセンスの特定のバージョンを明確に識別する URL を指定します。

    推奨

    
    "license" : "https://creativecommons.org/licenses/by/4.0"

    非推奨

    
    "license" : "https://creativecommons.org/licenses/by"
sameAs URL

データセットの ID を明確に指定する参照ウェブページの URL(通常、別のリポジトリにあります)。

spatialCoverage TextPlace

データセットの空間様相を記述する単一のポイントを指定できます。このプロパティは、データセットに空間ディメンションが含まれている場合にのみ追加します。たとえば、すべての測定結果が収集された単一のポイントや、ある領域の境界ボックスの座標などを指定します。

ポイント


"spatialCoverage:" {
  "@type": "Place",
  "geo": {
    "@type": "GeoCoordinates",
    "latitude": 39.3280,
    "longitude": 120.1633
  }
}

図形

GeoShape を使用して、さまざまな形状の領域を記述します。たとえば、境界ボックスを指定します。


"spatialCoverage:" {
  "@type": "Place",
  "geo": {
    "@type": "GeoShape",
    "box": "39.3280 120.1633 40.445 123.7878"
  }
}

boxcirclelinepolygon プロパティ内のポイントは、緯度と経度に対応するスペース区切りの値のペアとして表す必要があります。

名前のついた場所


"spatialCoverage:" "Tahoe City, CA"
temporalCoverage Text

データセットのデータは、特定の期間を対象として含みます。このプロパティは、データセットに時間ディメンションが含まれている場合にのみ追加します。schema.org では、期間や時点を記述するために ISO 8601 規格を使用しています。データセットの期間に応じて日付を別々に記述できます。無期限の期間は、小数点 2 つ(..)を使用して示します。

単一の日付


"temporalCoverage" : "2008"

期間


"temporalCoverage" : "1950-01-01/2013-12-18"

無期限の期間


"temporalCoverage" : "2013-12-19/.."
variableMeasured TextPropertyValue

データセットが測定する変数(温度や圧力など)。

version TextNumber

データセットのバージョン番号。

url URL

データセットを記述するページの場所。

DataCatalog

DataCatalog の定義の全文は schema.org/DataCatalog で確認できます。

多くの場合、データセットは他の多くのデータセットが格納されているリポジトリで公開されます。同じデータセットをそのような複数のリポジトリに含めることができます。データセットが属しているデータカタログを参照するには、直接参照します。

推奨プロパティ
includedInDataCatalog DataCatalog

データセットが属しているカタログ。

DataDownload

DataDownload の定義の全文は schema.org/DataDownload で確認できます。Dataset プロパティに加え、ダウンロード オプションを提供する、以下のデータセット用のプロパティを追加します。

distribution プロパティでは、データセット自体を取得する方法を記述します。これは、URL がデータセットを記述するランディング ページを指していることが多いためです。distribution プロパティでは、データをどこでどの形式で取得するかを記述します。このプロパティでは複数の値を使用できます。たとえば、CSV バージョンで 1 つの URL を使用し、Excel バージョンを別の URL で使用できます。

必須プロパティ
distribution.contentUrl URL

ダウンロードのリンク。

推奨プロパティ
distribution DataDownload

データセットのダウンロードの場所と、ダウンロードのファイル形式の記述。

distribution.encodingFormat TextURL

配布のファイル形式。

表形式のデータセット

表形式のデータセットは、主に行と列のグリッドを単位として構成されたデータセットです。 表形式のデータセットが埋め込まれているページでは、上記の基本的なアプローチを基に、より明示的なマークアップを作成することもできます。現時点では、HTML ページでユーザー指向の表形式コンテンツと並行して提供される、CSVW(「CSV on the Web」、W3C をご覧ください)のバリエーションと解釈しています。

次の例は、CSVW JSON-LD 形式でエンコードされた小規模なテーブルを示しています。リッチリザルト テストには既知のエラーがいくつかあります。

Search Console でリッチリザルトを監視する

Search Console は、Google 検索におけるページのパフォーマンスを監視できるツールです。Search Console に登録していなくても Google 検索結果に表示されますが、登録することにより、Google がサイトをどのように認識しているかを把握して改善できるようになります。次の場合は Search Console を確認することをおすすめします。

  1. 構造化データを初めてデプロイした後
  2. 新しいテンプレートをリリースした後やコードを更新した後
  3. トラフィックを定期的に分析する場合

構造化データを初めてデプロイした後

ページがインデックスに登録されたら、関連するリッチリザルトのステータス レポートを使用して、問題がないかどうかを確認します。有効なページが増え、エラーや警告が増えていない状態が理想的です。構造化データに問題が見つかった場合の手順は次のとおりです。

  1. エラーを修正します
  2. 公開 URL の検査を行い、問題が解決したかどうかを確認します。
  3. ステータス レポートを使用して検証をリクエストします。

新しいテンプレートをリリースした後やコードを更新した後

ウェブサイトに大幅な変更を加えた場合は、構造化データのエラーや警告が増加しないかどうか監視します。
  • エラーが増加した場合は、新しく公開したテンプレートが正常に機能していないか、既存のテンプレートの動作に問題が生じていることが原因と考えられます。
  • 有効な項目が減少している(エラーの増加と一致しない)場合は、ページに構造化データが埋め込まれていない可能性があります。URL 検査ツールを使用して問題の原因を特定します。

トラフィックを定期的に分析する場合

パフォーマンス レポートを使用して Google 検索のトラフィックを分析します。このデータから、検索でページがリッチリザルトとして表示される頻度、ユーザーがページをクリックする頻度、検索結果におけるページの平均掲載順位がわかります。Search Console API を使用して、このデータを自動的に取得することもできます。

トラブルシューティング

構造化データを実装する際に問題が発生した場合は、以下のリソースを確認してください。