Sitemap.xml バリデータ — リアル プロトコル コンプライアンス チェッカー
sitemap.xml (またはサイトマップ インデックス) を貼り付けるかアップロードし、実際の sitemaps.org プロトコルに対して検証します。ルート要素と名前空間、絶対 <loc> URL、文書化された 50,000 URL / 50MB の制限、<lastmod>、<priority>、<changefreq>、さらに鮮度ヒストグラムと重複 URL 検出です。
結果
sitemap.xml ファイルは完全に整形式の XML であっても、サイトマップが壊れている場合があります。xmlns 名前空間が欠落している、相対 <loc> URL、<priority> が "1.5"、または <changefreq> が "daily" ではなく "Daily" である場合は、すべて汎用 XML バリデーターを通過しますが、Google、Bing、およびファイルの他のすべての利用者が期待する実際のサイトマップ プロトコルは静かに失敗します。このツールは、ブラウザのネイティブ DOMParser で貼り付けまたはアップロードされたサイトマップを解析し、sitemaps.org で公開されている実際のルールと照合します。ルート要素は、通常のサイトマップの場合は <urlset>、サイトマップ インデックス (自動検出) の場合は <sitemapindex> である必要があり、理想的には正確な名前空間 http://www.sitemaps.org/schemas/sitemap/0.9 とインデックス ファイル内のすべての <url> (または <sitemap>) で宣言されている必要があります。本物の絶対 http/https URL に解決される <loc> を含める必要があります。
このプロトコルでは、構造だけでなく、このツールがフィールドごとにチェックするハードリミットと正確なフィールド形式も文書化されています。 1 つのサイトマップ ファイルに 50,000 を超える URL をリストすることはできず、非圧縮で 50MB を超えてはなりません。制限はサイトマップ インデックス ファイルにも適用され、<url> エントリではなく <sitemap> エントリをカウントします。このツールは、実際に貼り付け/アップロードされたコンテンツを両方に対して測定します。各 <lastmod> (存在する場合) は、仕様で受け入れられる実際の W3C 日時形式 (裸の日付 (YYYY-MM-DD) または時、分、オプションの秒、および必須のタイムゾーン指定子を含む完全なタイムスタンプ) に対してチェックされます。各 <priority> が存在する場合、それは 0.0 から 1.0 までの 10 進数である必要があり、各 <changefreq> は、仕様で定義されている 7 つの値 (常に、毎時、毎日、毎週、毎月、毎年、決して) のうちの 1 つである必要があり、もっともらしい同義語ではありません。すべての違反には特定のエントリ番号とその実際の値が示され、ルールごとに表示される違反者の数が 50 に制限され、「+N more」という注記が付けられるため、URL 制限に近いサイトマップ上でもレポートが読みやすくなります。
2 つのチェックは、書かれたプロトコルの要件を超えていますが、実際の一般的な問題を捕捉します。<lastmod> 鮮度ヒストグラムは、すべての有効な最終変更日を月ごとにグループ化し、サイトのコンテンツが実際に最新に保たれているかどうか、またはほとんどの URL に数年前の古いタイムスタンプが含まれているかどうかを一目で確認できます。また、重複 <loc> 検出機能は、同じファイル内に複数回リストされている URL にフラグを立てます。これは、重複を排除せずに複数のソースをマージするサイトマップ ジェネレーターによくある副作用です。すべてがローカルで実行されます。解析、ルール チェック、ヒストグラムはすべて、貼り付けたテキストまたは File API 経由でアップロードしたファイルからブラウザで計算されます。サーバーに何も取得またはアップロードされません。また、サイトマップ内の個々の URL がリクエストされたりクロールされたりすることはありません。このツールは、リストされているページが実際に存在するかどうか、または 200 OK を返すかどうかではなく、サイトマップ ドキュメント自体をチェックします。