Microsoft XML Core Services (MSXML) 5.0 for Microsoft Office - DOM Reference

Calling insertBefore on Attributes

If the current node is an attribute, calling insertBefore has the following results, depending on the value of the newChild parameter.

Node type passed in newChild Result
NODE_ATTRIBUTE, NODE_CDATA_SECTION, NODE_COMMENT, NODE_DOCUMENT, NODE_DOCUMENT_TYPE, NODE_ELEMENT, NODE_ENTITY, NODE_NOTATION, NODE_PROCESSING_INSTRUCTION Returns an error. These node types cannot be children of an attribute.
NODE_DOCUMENT_FRAGMENT Inserts the children of the document fragment (newChild) and returns newChild.
NODE_ENTITY_REFERENCE, NODE_TEXT Inserts newChild and returns newChild.
NODE_CDATA_SECTION, NODE_COMMENT, NODE_ENTITY, NODE_NOTATION, NODE_PROCESSING_INSTRUCTION, NODE_TEXT Returns an error. These node types either cannot have children or their children are read-only.

Remarks

If an entity reference is added to an attribute, the namespace and the prefix of the entity reference are added to the element containing the attribute.