schema.orgは何を決めるのか
schema.orgは、Web上の情報を共通の名前で表すための語彙です。記事を Article、人を Person とする「型」と、記事名を headline、著者を author とする「プロパティ」があります。型は対象の種類、プロパティは対象が持つ情報や関係を表します。
自由な項目名でも人には伝わりますが、サイトごとに writer、writtenBy、authorName と書き分けると、受け取る側は意味の対応付けが必要です。共通語彙を使うと、このずれを減らせます。データベースのテーブル構造を定義する「スキーマ」と同じものではありません。
構造化データ・JSON-LDとの関係
構造化データは意味や関係を整理したデータ、schema.orgはそこで使う語彙、JSON-LDはその書き方の一つです。schema.orgを使うために、JSON-LDだけを選ばなければならないわけではありません。
次は関係を読むための小さな例です。実際の公開ページでは、そのページにある情報へ置き換えます。
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "サンプル記事",
"author": {
"@type": "Person",
"name": "サンプル著者"
}
}
@context は語彙を解釈する文脈、@type は対象の型です。この例では記事の author が人を表すオブジェクトになっています。記事のタイトルには headline、その著者の名前には name を使っている点も読み分けます。
公式の型ページをどう読むか
Articleの定義を開くと、上部に型の階層、下にプロパティと想定される値の型が並びます。ArticleはCreativeWorkの下にあり、上位型から引き継ぐプロパティも使えます。表に候補が多いからといって、全部を埋める必要はありません。
| 見る場所 | 読み取ること | つまずきの例 |
|---|---|---|
| 型の説明 | ページの主題と型が合うか | ブログ記事を商品として書く |
| プロパティ | その情報をどの項目で表すか | 記事名と著者名を混同する |
| Expected Type | 文字列・URL・人など、想定される値 | 著者の中へ無関係な情報を詰める |
プロパティの説明を読んで、手元の値と意味が合わない場合は、似た名前だからという理由で流用しません。たとえば組織が執筆主体ならOrganization、個人ならPersonとし、サイトの表示にも同じ主体を示します。
schema.orgとして正しければGoogleに表示されるか
schema.orgの語彙は、Googleのリッチリザルト対応一覧そのものではありません。型や値が妥当でも、Googleがその型を特別な表示に使わない場合があります。反対にGoogleの特定機能では、schema.orgで使える項目のうち、追加で満たすべき条件が定められています。
そのため、語彙の確認はSchema.org、Googleの検索表示の条件はSearch Centralで行います。Schema Markup Validatorに合格したことを、そのまま「検索結果に出る」という意味で扱わないでください。修正する際は、どちらの検査で、どの型のどの項目が問題なのかを先に特定します。
コードを組み込む段階は、構造化データの実装と検証で扱っています。こちらの用語ページは、辞書の読み方と、検索サービス側の条件との違いを確認するために使えます。
参考情報
2026年9月21日確認。