internal override XmlNode AddNode( XmlNode node ) {
//should be sure by now that the node doesn't have the same name with an existing node in the collection
RemoveDuplicateAttribute( (XmlAttribute)node );
XmlNode retNode = base.AddNode( node );
Debug.Assert( retNode is XmlAttribute );
InsertParentIntoElementIdAttrMap( (XmlAttribute) node );
return retNode;
}