Element* Element::Clone( ) { Element *pe = new Element(); pe->name = name; pe->value = value; pe->bDataValue = bDataValue; pe->attrib = attrib; pe->parentElement = parentElement; for(std::list<Element*>::iterator i=subElement.begin(); i!=subElement.end(); i++) { pe->AddSubElement((*i)->Clone( )); } return pe; }