Validatore Sitemap.xml: controllo della conformità del protocollo reale
Incolla o carica un sitemap.xml (o un indice della mappa del sito) e convalidalo rispetto al vero protocollo sitemaps.org: elemento root e spazio dei nomi, URL <loc> assoluti, limiti documentati di 50.000 URL/50 MB, <lastmod>, <priority>, <changefreq>, oltre a un istogramma di aggiornamento e rilevamento di URL duplicati.
Risultato
Un file sitemap.xml può essere XML perfettamente ben formato ed essere comunque una mappa del sito danneggiata: uno spazio dei nomi xmlns mancante, un URL <loc> relativo, una <priority> di "1.5" o una <changefreq> di "Daily" anziché "daily" passeranno tutti un validatore XML generico mentre falliranno silenziosamente il protocollo effettivo della mappa del sito che Google, Bing e ogni altro utente del file si aspettano. Questo strumento analizza la tua mappa del sito incollata o caricata con il DOMParser nativo del browser e la confronta con le regole reali pubblicate su sitemaps.org: l'elemento root deve essere <urlset> per una mappa del sito normale o <sitemapindex> per un indice della mappa del sito (rilevato automaticamente), idealmente dichiarato con lo spazio dei nomi esatto http://www.sitemaps.org/schemas/sitemap/0.9, e ogni <url> (o <sitemap>, in un file indice) deve contenere un <loc> che si risolve in un URL http/https assoluto e autentico.
Oltre alla struttura, il protocollo documenta anche limiti rigidi e formati di campo precisi che questo strumento controlla campo per campo. Un singolo file della mappa del sito non deve elencare più di 50.000 URL e non deve superare i 50 MB non compressi (limiti che si applicano anche ai file di indice della mappa del sito, contando le voci <sitemap> anziché le voci <url>) e questo strumento misura il contenuto effettivamente incollato/caricato rispetto a entrambi. Ogni <lastmod>, se presente, viene confrontato con i reali formati W3C-datetime accettati dalle specifiche: una data nuda (AAAA-MM-GG) o un timestamp completo con ore, minuti, secondi opzionali e un designatore di fuso orario obbligatorio. Ogni <priority>, se presente, deve essere un decimale compreso tra 0,0 e 1,0, e ogni <changefreq> deve essere esattamente uno dei sette valori definiti dalle specifiche (sempre, orario, giornaliero, settimanale, mensile, annuale, mai) – non è un sinonimo apparentemente plausibile. Ogni violazione indica il numero di voce specifico e il suo valore effettivo, limitato a 50 trasgressori mostrati per regola con una nota "+N altri" in modo che il rapporto rimanga leggibile anche su una mappa del sito vicino al limite dell'URL.
Due controlli vanno oltre ciò che richiede il protocollo scritto ma rilevano problemi reali e comuni: un istogramma di freschezza <lastmod> raggruppa ogni data valida dell'ultima modifica per mese in modo da poter vedere a colpo d'occhio se il contenuto di un sito viene effettivamente mantenuto aggiornato o se la maggior parte degli URL porta un timestamp obsoleto di anni fa, e un rilevatore di duplicati <loc> contrassegna qualsiasi URL elencato più di una volta nello stesso file: un effetto collaterale frequente dei generatori di mappe del sito che uniscono più fonti senza deduplicarsi. Tutto viene eseguito localmente: l'analisi, il controllo delle regole e l'istogramma vengono tutti calcolati nel tuo browser dal testo che hai incollato o dal file che hai caricato tramite la File API, nulla viene recuperato o caricato su un server e nessun URL individuale nella tua mappa del sito viene mai richiesto o sottoposto a scansione: questo strumento controlla il documento stesso della mappa del sito, non se le pagine che elenca effettivamente esistono o restituiscono 200 OK.