The xmlns it is a namespace, to tell browsers where to find the document type definitions ( ~ xml schema) so it can render the page properly and the xmlns attribute is required in XHTML, but invalid in HTML. (All our examples are XHTML)