MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.

Obsoleto
Esta funcionalidad es obsoleta. Aunque puede aún funcionar en algunos navegadores, se desalienta su uso ya que puede ser removida en cualquier momento. Evite usarla.

La propiedad de solo lectura Nodo.namespaceURI devuelve la URI del nodo, o null en caso de que el nodo no tenga espacio de nombres. Cuando el nodo es un documento, este devuelve el espacio de nombres del XML para el documento actual.

En DOM4 esta API fué movida desde Node a las interficies ElementAttr.

Sintaxis

namespace = node.namespaceURI

Ejemplo

En este fragmento, un nodo esá siendo examinado por su Node.localName y namespaceURI. Si el namespaceURI devuelve el nombre de espaciosXUL y el localName devuelve "browser", entonces el nodo es entendido  a ser un XUL <browser/>.

if (node.localName == "browser" && 
    node.namespaceURI == "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul") {
  // Este es un navegador XUL
}

Notas

Este no es un valor calculado que es el resultado de una búsqueda del espacio de nombres basada en la examinación de las declaraciones de un espacio de nombres en el ámbito. El espacio de nombres URI de un nodo es congelado ene l momento de su creación.

En Firefox 3.5 y anteriores, el espacio de nombres URI para los elementos HTML en los Documents HTML es null. En versiones psoteriores, en conformidad con HTML5, es https://www.w3.org/1999/xhtml como en XHTML.

Para nodos de cualquier Node.nodeType distintos de ELEMENT_NODE y ATTRIBUTE_NODE el valor de namespaceURI es siempre null.

Puedes crear un elemento con un namespaceURI concreto creando un método DOM de nivel 2 Document.createElementNS y atributos con el método Element.setAttributeNS.

Para la especificación Namespaces in XML, un atributo no hereda su espacio de nombres del elemento al que está sujeto. Si un atributo no es dado de manera explícita como espacio de nombres, entonces no los tiene.

El DOM no controla ni impone la validación del espacio de nombres. Depende de la aplicación DOM de hacer cualquier tipo de validación necesaria. Destacar también que el prefijo de espacio de nombre, una vez es asociado a un nodo enparticular, no puede ser modificado.

Especificaciones

Especificación Estado Comentario
Document Object Model (DOM) Level 3 Core Specification
The definition of 'Node.namespaceURI' in that specification.
Obsolete Specifies the behavior when it's set to null.
Document Object Model (DOM) Level 2 Core Specification
The definition of 'DOM Level 2 Core: XML Namespaces' in that specification.
Obsolete  
Document Object Model (DOM) Level 2 Core Specification
The definition of 'Node.namespaceURI' in that specification.
Obsolete Initial definition

Compatibilidad de navegadores

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico (Yes)
No support46.0[1]
(Yes) (Yes)[2]
No support 48.0 (48.0)[1]
? ? ?
Feature Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Soporte básico ? (Yes) (Yes)[2]
No support 48.0 (48.0)[1]
? ? ?

[1] Esta API fue movida a las APIs ElementAttr de acuerdo con el standard de DOM4.

[2] Antes de Gecko 5.0 (Firefox 5.0 / Thunderbird 5.0 / SeaMonkey 2.2), esta propiedad era de lectura-escritura; empezando con Gecko 5.0  es sólo lectura, siguiendo la especificación.

Ver también

Etiquetas y colaboradores del documento

 Colaboradores en esta página: tureey
 Última actualización por: tureey,