Attributes with namespaces
The Namespaces in XML specification is an extension to XML that answers the burning question: Are we talking about the same subject?
Since anyone can define element-type names, and elements from different documents can be mixed together, we need a way to clearly separate our names from other people’s names. We need to have different so-called namespaces.
We do this in the real world all of the time.
What would you do if you needed to refer to a particular John Smith without confusing him with any other John Smith. You qualify the name: “John Smith from London”. That sets up a namespace that separates Londoners from everyone else.
If that isn’t sufficient ...