En XML los nombres de los elementos son definidos por el desarrollador. A menudo esto resulta en un conflicto cuando se trata de mezclar documentos XML de diferentes aplicaciones
Este XML contiene informacion de una tabla HTML
Código: Seleccionar todo
<table>
<tr>
<td>Apples</td>
<td>Bananas</td>
</tr>
</table>
Código: Seleccionar todo
<table>
<name>African Coffee Table</name>
<width>80</width>
<length>120</length>
</table>
Un interprete de XML no sabria como manejar las diferencias.
Resolviendo el conflicto de nombre usando Prefijos
El conflicto de nombres en XML se puede evitar usando un "name prefix" (prefijo de nombre)
Código: Seleccionar todo
<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
<f:table>
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
XML Namespaces - El atributo xmlns
Cuando se usa prefijos en XML se debe definir "namespace"
Este namespace esta definido por el atributo xmlns en el primer nodo de un elemento
La declaracion del namespace sigue la siguiente sintaxis : xmlns:prefijo="URI"
Código: Seleccionar todo
<root>
<h:table xmlns:h="http://www.w3.org/TR/html4/">
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
<f:table xmlns:f="http://www.w3schools.com/furniture">
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
</root>
Cuando se define un namespace para un elemento, todos los elementos hijos con el mismo prefijo son asociados con el mismo namespace.
Sigue en la parte II.......