Ver:
XML NameSpaces en el W3C∞
Consideremos que un documento XML puede tener partes diseñadas para distintas aplicaciones. La idea es que estas partes no choquen entre sí, esto es más importante aún cuando hablamos de Web Semántica.
En el caso de Java, por ejemplo, el esquema de imports utiliza la idea de que todas las clases hechas, por ejemplo, en el DCC, tienen que comenzar con
cl.uchile.dcc; en el caso de XML se provee un esquema más flexible llamado
xml namespaces.
Ejemplo sencillo<vectorgraphic xmlns:vec="
http://www.tejedoresdelweb.com/vector.dtd">∞;
<vec:line x1="1" y1="1" x2="30" y2="30"/>
<vec:circle center="1,2" radius="12"/>
</vectorgraphic>Namespaces múltiples<document xmlns:doc="
http://doc.org/doc.dtd">∞;
<doc:p>Hola</doc:p>
<bibdata xmlns:bib="
http://biblioteca.cl/bib.dtd">∞;
<bib:codigo>12389124</bib:codigo>
</bibdata>
</document>Namespaces lado a lado<document xmlns:doc="
http://doc.org/doc.dtd∞" xmlns:bib="
http://biblioteca.cl/bib.dtd">∞;
<doc:p>Hola</doc:p>
<bib:codigo doc:visibility="hide">12389124</bib:codigo>
</document>
Nótese que los atributos y los elementos se comparten.
Namespaces default<document xmlns="
http://doc.org/doc.dtd">∞;
<p>Hola</p>
</document>