Sitemaps

This is an accepted version of this page Sitemaps is a protocol in XML format meant for a webmaster to inform search engines about URLs on a website that are available for web crawling.

Google first introduced Sitemaps 0.84 in June 2005 so web developers could publish lists of links from across their sites.

In May 2007, the state governments of Arizona, California, Utah and Virginia announced they would use Sitemaps on their web sites.

[4] The Sitemaps protocol is based on ideas[5] from "Crawler-friendly Web Servers,"[6] with improvements including auto-discovery through robots.txt and the ability to specify the priority and change frequency of pages.

The maximum Sitemap size of 50 MiB or 50,000 URLs[8] means this is necessary for large sites.

The definitions for the elements are shown below:[8] "Always" is used to denote documents that change each time that they are accessed.

[8] It can be beneficial to have a syndication feed as a delta update (containing only the newest content) to supplement a complete sitemap.

If Sitemaps are submitted directly to a search engine (pinged), it will return status information and any processing errors.

[8] Sitemaps supplement and do not replace the existing crawl-based mechanisms that search engines already use to discover URLs.

[14][15] In December 2011, Google announced the annotations for sites that want to target users in many languages and, optionally, countries.

A few months later Google announced, on their official blog,[16] that they are adding support for specifying the rel="alternate" and hreflang annotations in Sitemaps.

One example of the multilingual sitemap would be as follows: If for example we have a site that targets English language users through https://www.example.com/en and Greek language users through https://www.example.com/gr, up until then the only option was to add the hreflang annotation either in the HTTP header or as HTML elements on both URLs like this But now, one can alternatively use the following equivalent markup in Sitemaps: