Shakespeare once famously asked, "What's in a name?". Not much - unless you're dealing with XML, in which case, quite a lot.
Everyone knows that XML allows you to use descriptive tags to mark up text in a document. These tags are usually free-form; a document author has complete freedom to name these tags anything he or she desires. And while this flexibility is one of the reasons for XML's popularity, it's a double-edged sword, because it begs the question: what happens if tag names in different documents clash with each other?
In the concluding article in this series, I'm going to be answering this question by spending some time on the oft-misunderstood concept of XML namespaces, in an effort to clear the air about what they are, how they work, and why you should use them. Along the way, I'll also show you how to use schemas to enforce namespace usage in an XML document instance, on a global or case-by-case basis, for both elements and attibutes.