/* (non-Javadoc)
   * @see org.eclipse.jst.pagedesigner.converter.AbstractTagConverter#doConvertRefresh()
   */
  protected Element doConvertRefresh() {
    Element hostEle = getHostElement();

    Element labelEle = createElement(IHTMLConstants.TAG_LABEL);

    JSFConverterUtil.copyAllAttributes(hostEle, labelEle, null);

    // If the "styleClass" attribute is present,
    // render its value as the value of the "class" attribute.
    JSFConverterUtil.copyAttribute(
        hostEle, IJSFConstants.ATTR_STYLECLASS, labelEle, IHTMLConstants.ATTR_CLASS);
    labelEle.removeAttribute(IJSFConstants.ATTR_STYLECLASS);

    //        String value = getValue(hostEle);
    //        Text	textNode = createText(value);
    //        labelEle.appendChild(textNode);

    int index = 0;
    Node child = hostEle.getFirstChild();
    if (hostEle.hasChildNodes()) {
      for (; child != null; child = child.getNextSibling()) {
        if (!shouldIgnore(child)) {
          if (child instanceof Element && JSFDOMUtil.isUIParameter((Element) child)) {
            // skip
          } else {
            addChild(child, new ConvertPosition(labelEle, index++));
          }
        }
      }
    } else {
      labelEle.appendChild(createText(getDefaultValue()));
    }

    return labelEle;
  }
 /* (non-Javadoc)
  * @see org.eclipse.jst.pagedesigner.commands.DesignerCommand#doExecute()
  */
 protected void doExecute() {
   NodeList children = _dataTable.getChildNodes();
   int index = 0;
   for (int i = 0, size = children.getLength(); i < size; i++) {
     Node node = children.item(i);
     if (JSFDOMUtil.isHColumn(node)) {
       if (index++ == this._index) {
         _dataTable.removeChild(node);
         return;
       }
     }
   }
 }