From the W3Schools:
the xmlns attribute specifies the xml namespace for a document.
This basically helps to avoid namespace conflicts between different xml documents, if for instance a developer mixes xml documents from different xml applications.
An example of this (also from the W3 website):
XML data to define an html table:
XML data to define information about a coffee table
African Coffee Table
80
120
There are two table elements here, which would produce a conflict. To fix this, you can add a namespace to signify which piece of information defines an html table and which comprises information about a coffee table:
Apples
Bananas
African Coffee Table
80
120