Sivukartta.xml-validaattori – aito protokollayhteensopivuustarkistin
Liitä tai lataa sivukartta.xml (tai sivukarttahakemisto) ja validoi se aitoa sitemaps.org-protokollaa vasten: juurielementti ja nimiavaruus, absoluuttiset <loc>-URL:t, dokumentoidut 50 000:n URL:n ja 50 Mt:n rajoitukset, <lastmod>, <priority>, <changefreq> – ja lisäksi tuoreushistogrammi ja päällekkäisten URL-osoitteiden tunnistus.
🔒 Käsitelty kokonaan selaimessasi – mitään tähän kirjoittamaasi ei koskaan ladata.
Tulos
Sivukartta.xml-tiedosto voi olla muodollisesti täysin oikeaa XML:ää ja silti rikkinäinen sivukartta: puuttuva xmlns-nimiavaruus, suhteellinen <loc>-URL, <priority>-arvo ”1,5” tai <changefreq>-arvo ”Daily” ”daily”:n sijaan läpäisevät kaikki geneerisen XML-validaattorin, mutta epäonnistuvat hiljaisesti siinä aidossa sivukarttaprotokollassa, jota Google, Bing ja kaikki muut tiedoston kuluttajat odottavat. Tämä työkalu jäsentää liittämäsi tai lataamasi sivukartan selaimen omalla DOMParserilla ja tarkistaa sen sitemaps.orgissa julkaistuja aitoja sääntöjä vasten: juurielementin on oltava <urlset> tavalliselle sivukartalle tai <sitemapindex> sivukarttahakemistolle (tunnistetaan automaattisesti), ihanteellisesti määriteltynä täsmällisellä nimiavaruudella http://www.sitemaps.org/schemas/sitemap/0.9, ja jokaisen <url>:n (tai hakemistotiedostossa <sitemap>:n) on sisällettävä <loc>, joka on oikea absoluuttinen http/https-URL.
Rakenteen lisäksi protokolla dokumentoi myös ehdottomia rajoja ja tarkkoja kenttämuotoja, jotka tämä työkalu tarkistaa kenttä kentältä. Yksi sivukarttatiedosto ei saa listata yli 50 000:ta URL:ää eikä sen pakkaamaton koko saa ylittää 50:tä megatavua – rajoitukset koskevat myös sivukarttahakemistotiedostoja, joissa lasketaan <sitemap>- eikä <url>-kohteita – ja tämä työkalu mittaa todellista liittämääsi tai lataamaasi sisältöä molempia vasten. Jokainen <lastmod>, jos sellainen on, tarkistetaan protokollan hyväksymiä aitoja W3C-datetime-muotoja vasten: pelkkä päivämäärä (VVVV-KK-PP) tai täysi aikaleima tunteineen, minuutteineen, valinnaisine sekunteineen ja pakollisine aikavyöhykemerkintöineen. Jokaisen <priority>-arvon, jos sellainen on, on oltava desimaaliluku väliltä 0,0–1,0, ja jokaisen <changefreq>-arvon on oltava täsmälleen yksi protokollan seitsemästä määrittelemästä arvosta – always, hourly, daily, weekly, monthly, yearly, never – ei uskottavalta vaikuttava synonyymi. Jokaisesta rikkeestä ilmoitetaan kyseisen kohdan numero ja sen todellinen arvo, ja näytettävät rikkeet rajataan 50:een sääntöä kohden, minkä lisäksi on ”+N lisää” -merkintä, jotta raportti pysyy luettavana jopa lähellä URL-rajaa olevalla sivukartalla.
Kaksi tarkistusta menee pidemmälle kuin mitä kirjoitettu protokolla vaatii, mutta havaitsee todellisia, yleisiä ongelmia: <lastmod>-tuoreushistogrammi ryhmittelee kaikki kelvolliset viimeisimmän muokkauksen päivämäärät kuukausittain, jotta näet yhdellä silmäyksellä, pidetäänkö sivuston sisältöä todella ajan tasalla vai onko useimpien URL-osoitteiden aikaleima vanhentunut vuosien takaa, ja päällekkäisten <loc>-osoitteiden tunnistin merkitsee jokaisen URL:n, joka on listattu useammin kuin kerran samassa tiedostossa – tämä on yleinen sivukarttageneraattoreiden sivuvaikutus, kun ne yhdistävät useita lähteitä poistamatta päällekkäisyyksiä. Kaikki toimii paikallisesti: jäsentäminen, sääntöjen tarkistus ja histogrammi lasketaan selaimessasi siitä tekstistä, jonka liitit, tai tiedostosta, jonka latasit File API:n kautta, mitään ei noudeta tai ladata palvelimelle, eikä yksittäistä sivukarttasi URL-osoitetta koskaan pyydetä tai indeksoida – tämä työkalu tarkistaa itse sivukarttadokumentin, ei sitä, ovatko sen listaamat sivut olemassa tai palauttavatko ne 200 OK.