Your support for our advertisers helps cover the cost of hosting, research, and maintenance of this FAQ
The XML FAQ — Frequently-Asked Questions about the Extensible Markup Language
Section 4: Developers
Q 4.11: What's a namespace?
A named DTD/Schema or fragment identified by a URI (URL).
Randall Fowle writes:
A namespace is a collection of element and attribute names identified by a Uniform Resource Identifier reference. The reference may appear in the root element as a value of the xmlns attribute. For example, the namespace reference for an XML document with a root element <x> might appear like this:
<x xmlns="http://www.company.com/company-schema">More than one namespace may appear in a single XML document, to allow a name to be used more than once. Each reference can declare a prefix to be used by each name, so the previous example might appear as
<x xmlns:spc="http://www.company.com/company-schema">which would nominate the namespace for the ‘spc’ prefix:
<spc:name>Mr. Big</spc:name>
James Anderson writes:
In general, note that the binding may also be effected by a default value for an attribute in the DTD.
The reference does not need to be a physical file; it is simply a way to distinguish between namespaces. The reference should tell a person looking at the XML document where to find definitions of the element and attribute names using that particular namespace. Ronald Bourret maintains the Namespace FAQ at http://www.rpbourret.com/xml/NamespacesFAQ.htm.