code: public <T extends AbstractJaxb> boolean replaceById(String id, T replacement)
              throws TagTypeUnmatchException {
          return ReplaceByIdUtil.replaceById(id, this, replacement);
      }
docs: <p>
  replace element that has specified id attribute within descendant element
  of oneself. you can't replace oneself. It will be replaced by deep copy
  of "replacement"
  </p>
  
  @param id
  @param replacement
  @return if success to replace, return true. if no hit, return false.
  @throws TagTypeUnmatchException