A simple element is an XML element that can contain only text.
Namespaces are a simple and straightforward way to distinguish names used in XML documents, no matter where they come from.
XML namespaces are used for providing uniquely named elements and attributes in an XML instance
They allow developers to qualify uniquely the element names and relationships and make these names recognizable, to avoid name collisions on elements that have the same name but are defined in different vocabularies.
They allow tags from multiple namespaces to be mixed, which is essential if data is coming from multiple sources.
Example: a bookstore may define the <TITLE> tag to mean the title of a book, contained only within the <BOOK> element. A directory of people, however, might define <TITLE> to indicate a person's position, for instance: <TITLE>President</TITLE>. Namespaces help define this distinction clearly.
Note: a) Every namespace has a unique name which is a string. To maintain the uniqueness among namespaces a IRL is most preferred approach, since URLs are unique.
b) Except for no-namespace Schemas, every XML Schema uses at least two namespaces:
1.the target namespace.
2. The XMLSchema namespace (http://w3.org/2001/XMLSchema)