構造化データ・スキーマの検証ツール

JSON-LD、Microdata、RDFaを、同梱のSchema.orgボキャブラリーとGoogleのリッチリザルト向けルール(ローカル)で検証します。schema-buildで新しいJSON-LDの下書きも作成できます。

できること

2段階の検証

1段階目では、マークアップがSchema.orgとして正しいかを確認します。タイプが存在するか、そのタイプでプロパティが使えるか(継承されたプロパティも含む)、値が期待される型に合っているかを調べます。2段階目では、Googleのリッチリザルトについて、必須プロパティなど手元で確認できる条件を調べます。2段階目に通っても、Googleがリッチリザルトを表示する保証はありません。

  • Schema.orgのボキャブラリーを同梱しているため、オフラインで動作
  • 継承されたプロパティに対応し、Articleのauthorなどを誤ってエラーにしない
  • リッチリザルトの各タイプについて、必須プロパティと、いずれか1つが必要なプロパティを確認
  • JSON-LDブロックが有効なJSONでない場合は、解析エラーとして報告

マークアップをグラフとして見る

エンティティは@idの参照でつながります。チェッカーは、@idを持つエンティティ、リンクされているエンティティ、孤立しているエンティティ、どこも指していない参照を洗い出します。孤立したエンティティは有用な検出結果です。検索エンジンがページの他の部分と結びつけられないためです。

  • @idがない、またはページの他の部分とつながっていないエンティティ
  • 存在しない@idへの参照
  • JSON-LD、Microdata、RDFaから読み取ったマークアップ

作成

schema-buildは、ページのタイプに合わせて、つながった@graphの下書きを作ります。使うのはページ上で確認できる事実だけです。判断に使った手がかりと、タイプの推定にどのくらい自信があるかも表示します。推定が不確かなときは--typeでタイプを自分で指定し、公開する前に下書きを確認します。

  • 事実はページから取得したものだけ
  • タイプの推定結果を、手がかりと確度つきで表示
  • --typeで上書き可能
  • 不足している推奨フィールドを一覧表示

3ステップで、スキャンを1件保存

  1. Schema.orgのボキャブラリーで検証する

    schema-checkはページの構造化データを読み取り、すべてのタイプとプロパティを、同梱のSchema.orgボキャブラリーに照らして確認します。

  2. マークアップをグラフとして確認する

    @idを持つエンティティ、リンクされているエンティティ、孤立しているエンティティ、どこも指していない@id参照を洗い出します。

  3. 不足しているマークアップを作成する

    schema-buildは、ページ上で確認できる事実だけを使って、つながった@graphを提案し、まだ不足している推奨フィールドを一覧にします。

この機能のチェック項目

チェック項目意味重要度根拠
SCHEMA_VALIDATION_ERRORページの構造化データに、Schema.orgボキャブラリーに照らした検証エラーがあるImportantページごとの検証エラー数
STRUCTURED_DATA_PARSE_ERRORJSON-LDブロックはあるが有効なJSONとして解析できず、検索エンジンに無視されるImportant検出したブロック数と解析できたブロック数
STRUCTURED_DATA_MISSINGページにSchema.orgのマークアップがないTip構造化データのブロックが0件のページ
チェック一覧にある関連項目
STRUCTURED_DATA_SCHEMA_ERRORSTRUCTURED_DATA_SCHEMA_WARNINGSTRUCTURED_DATA_RICH_RESULT_REQUIRED_MISSING

コマンド1つで実行

bash
seohead schema-check --url https://example.com/product

先にインストールします: インストールガイド。どのコマンドも、AIエージェント向けのMCPツールとして実行できます。

必要なもの

  • ページのURL。オフラインで確認する場合はHTMLそのもの(htmlの引数)
  • タイプの推定が不確かなときにschema-buildへ渡すタイプ名
  • APIキーは不要

制限事項

  • 静的なチェックでは、Googleが実際にリッチリザルトを表示するかどうかは判定できません
  • 検証できるのは渡されたHTMLだけです。JavaScriptで挿入されたマークアップは、先にHTMLをレンダリングしないと検出できません
  • RDFa、HTML、グラフのサイズには上限があり、上限に達すると部分的な結果であることが明示されます
  • schema-buildが作るのはマークアップの下書きで、公開はしません

よくある質問

どのコマンドを実行しますか?
seohead schema-check --url https://example.com/product を実行します。オフラインでマークアップを確認する場合は、htmlの引数にHTMLそのものを渡します。たとえば--inputでJSONオブジェクトを指定します。
リッチリザルトの対象になるかも確認できますか?
はい、ローカルで確認できます。1段階目はSchema.orgのボキャブラリーの検証で、タイプが存在するか、そのタイプでプロパティが使えるか、値の型が合っているかを調べます。2段階目では、ルールを持つGoogleのリッチリザルトの各タイプについて、必須プロパティを確認します。Googleが実際に表示するかどうかは判定できません。
読み取れるマークアップの形式は?
JSON-LD、Microdata、RDFaです。解析できないJSON-LDブロックは、検索エンジンに無視されるため、解析エラーとして報告します。
schema-buildはページにない事実を作り出しませんか?
作り出しません。グラフはページ上で確認できる事実だけから作ります。判断に使った手がかりと確度も表示します。タイプの推定の確度が低い場合は、--typeで自分で指定してください。
サイトに変更を加えますか?
いいえ。どちらのコマンドもページを読み取るだけです。作成したJSON-LDは提案であり、確認と反映はご自身で行います。
クロール中にも実行されますか?
はい。クロールではページごとに、マークアップの欠落、解析エラー、スキーマエラー、リッチリザルトの必須プロパティの不足を検出結果として記録します。