public Object clone() {
   XMLTag ThisClone = new XMLTag(TagName, TagValue, IsTemporary);
   ThisClone.AttributeList = (HashMap) AttributeList.clone();
   for (int i = 0; i < ChildTags.size(); i++) {
     XMLTag TagToClone = (XMLTag) ChildTags.get(i);
     ThisClone.addTag((XMLTag) TagToClone.clone());
   }
   return ThisClone;
 }