/**
  * Removes UnwantedChild from the child tags.
  *
  * @param UnwantedChild The child to be removed.
  */
 public void removeChild(XMLTag UnwantedChild) {
   if (ChildTags.contains(UnwantedChild)) {
     ChildTags.remove(ChildTags.indexOf(UnwantedChild));
     if (UnwantedChild.getParentTag() == this) {
       UnwantedChild.setParent(null);
     } else {
       UnwantedChild.removeXMLTagListener(this);
     }
     ChildrenCount--;
     fireTagRemoved(new XMLPath());
   }
 }