Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

Adds support for namespaces and iteration through the collection of attribute nodes.

Methods

The following table shows the methods for IXMLDOMNamedNodeMap.

This interface inherits from IDispatch.

Method Description

getNamedItem

Retrieves the attribute with the specified name.

getQualifiedItem*

Returns the attribute with the specified namespace and attribute name.

item

Allows random access to individual nodes within the collection. Read-only.

removeNamedItem

Removes an attribute from the collection.

removeQualifiedItem

Removes the attribute with the specified namespace and attribute name.

reset

Resets the iterator.

setNamedItem

Adds the supplied node to the collection.

* denotes an extension to the World Wide Web Consortium (W3C) Document Object Model (DOM).

Properties

The following table shows the properties for IXMLDOMNamedNodeMap.

This interface inherits from IDispatch.

Property Description

length

Indicates the number of items in the collection. Read-only.

Events

None.

Remarks

IXMLDOMNamedNodeMapis a node collection that allows access by name as well as by index. This collection is typically used for attributes.

The World Wide Web Consortium (W3C) Document Object Model (DOM) definition does not require NamedNodeMapobjects to be maintained in any particular order. Objects contained in a NamedNodeMapcan also be accessed by an ordinal index, but this is simply to allow convenient enumeration and does not imply that the DOM specifies an order for these nodes. DOM implementations are not required to preserve the node order.

The XML Core Services and DOM for Windows Embedded CE implementation preserves the attributes in the order in which they appear in the source. Additional attributes are added to the end of the list. A namespaceattribute (xmlns) is inserted as the first in the list if the tag name requires the namespace, or immediately before the attribute that uses an undeclared namespace.

Like the node list, however, a named node map collection is live; that is, the addition and removal of nodes, and changes within nodes, are immediately reflected in the collection. This means that two successive requests for items using the same index can return two different items, depending on changes to the collection. This also means that changes to the node objects are immediately available in the nodes obtained from the list.

When a default value is specified in the schema for an attribute and that attribute is removed, it is automatically regenerated with the default value, as specified in the W3C standard. The attribute reappears immediately because the collection is live, with a corresponding change to the count of items in the collection. When removing an attribute with such a default setting, you must again retrieve the number of items in the collection to obtain an accurate count. You should also reset any index into the collection.

Setting Version-independent Version-dependent

ProgID

Msxml2.DOMDocument, Msxml2.FreeThreadedDOMDocument

Msxml2.DOMDocument.3.0, Msxml2.FreeThreadedDOMDocument.3.0

See Also

Reference

IXMLDOMNode