<?xml version="1.0" encoding="ISO-8859-1" ?>

<!--
  ~ Version: MPL 1.1/GPL 2.0/LGPL 2.1
  ~
  ~ "The contents of this file are subject to the Mozilla Public License
  ~ Version 1.1 (the "License"); you may not use this file except in
  ~ compliance with the License. You may obtain a copy of the License at
  ~ http://www.mozilla.org/MPL/
  ~
  ~ Software distributed under the License is distributed on an "AS IS"
  ~ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
  ~ License for the specific language governing rights and limitations under
  ~ the License.
  ~
  ~ The Original Code is ICEfaces 1.5 open source software code, released
  ~ November 5, 2006. The Initial Developer of the Original Code is ICEsoft
  ~ Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C)
  ~ 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved.
  ~
  ~ Contributor(s): _____________________.
  ~
  ~ Alternatively, the contents of this file may be used under the terms of
  ~ the GNU Lesser General Public License Version 2.1 or later (the "LGPL"
  ~ License), in which case the provisions of the LGPL License are
  ~ applicable instead of those above. If you wish to allow use of your
  ~ version of this file only under the terms of the LGPL License and not to
  ~ allow others to use your version of this file under the MPL, indicate
  ~ your decision by deleting the provisions above and replace them with
  ~ the notice and other provisions required by the LGPL License. If you do
  ~ not delete the provisions above, a recipient may use your version of
  ~ this file under either the MPL or the LGPL License."
  ~
  -->

<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
"http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">

<taglib>

  <tlib-version>1.5</tlib-version>
  <jsp-version>1.2</jsp-version>
  <short-name>ice</short-name>
  <uri>http://www.icesoft.com/icefaces/component</uri>

    <!-- outputChart component -->
    <tag>
    <name>outputChart</name>
    <tag-class>com.icesoft.faces.component.outputchart.OutputChartTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The outputChart component uses the JCharts open source utility (http://jcharts.sourceforge.net/)
            to create the various types of charts (e.g.) pie2d, pie3d, bar, line, point, area etc.
            The participation of this component with the jsf lifecycle allows developer to hook the actionListener 
            up with the clientSideImageMap to capture the events to provide the drill down behavior.
            ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>        
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>    
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>            
        <attribute>
          <name>type</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              This attribute specifies the type of the chart to be rendered
              (e.g.) pie2d, pie3d, area, point, axis, line and bar 
          </description>
        </attribute>
        <attribute>
          <name>chartTitle</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             <![CDATA[<p>Chart title</p>]]>
          </description>
        </attribute>
        <attribute>
          <name>labels</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              labels for the chart
          </description>
        </attribute>
        <attribute>
          <name>width</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              width of the chart
          </description>
        </attribute>
        <attribute>
          <name>height</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              height of the chart
          </description>
        </attribute>
        
        <attribute>
          <name>xaxisTitle</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              x-axis title
          </description>
        </attribute>
        <attribute>
          <name>yaxisTitle</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              y-axis title
          </description>
        </attribute>
        <attribute>
          <name>xaxisLabels</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              x-axis label
          </description>
        </attribute>
        <attribute>
          <name>colors</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              chart color(s)
          </description>
        </attribute>
        <attribute>
            <name>data</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>chart data</description>
        </attribute>    
        <attribute>
            <name>action</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at the application action to be invoked, if this UIComponent is activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of the immediate property.</description>
        </attribute>
        <attribute>
            <name>actionListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at method accepting an ActionEvent with return 
                type void. The method invoked by the clicking on the ClientSideImageMap. The 
                getClickedImageMapArea() returns the clicked ImageMapArea object.</description>
        </attribute>    
        <attribute>
            <name>renderOnSubmit</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>The component re-render only if this method returns true.</description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[<p>            
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.
              <br/> The default class would be rendered as <b>iceOutputChart</b>
            </p>]]>  
          </description>
        </attribute>
        <attribute>
          <name>legendPlacement</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              This attribute sets the legend position, the supported values 
              are "top, bottom, left, right".
          </description>
        </attribute>  
        <attribute>
          <name>legendColumns</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            This attribute defines the number of columns to be displayed for 
            the legend, (e.g.) the value "1" will demonstrate vertical legend 
            view.
          </description>
        </attribute>                         
   </tag>
  
     <!-- PanelSeries component -->
    <tag>
    <name>panelSeries</name>
    <tag-class>com.icesoft.faces.component.panelseries.PanelSeriesTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The panelSeries component provides a mechanism for dynamically generating a series of repeating
            child-components within a panel. This component renders its child components in an iterative fashion
            similar to way the dataTable component renders data rows. However, the panelSeries component is more 
            flexibile in that it can render a series of arbitrarily complex child components. The dataset can be 
            defined and used by implementing the value and var attributes respectively.
            ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>        
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>        
        <attribute>
          <name>first</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             <![CDATA[<p>Zero-relative row number of the first row to be displayed.  If this
              property is set to zero, rendering will begin with the first row of
              the underlying data.</p>]]>
          </description>
        </attribute>
        <attribute>
          <name>rows</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[<p>The number of rows to display, starting with the one identified by the
              "first" property.  If this value is set to zero, all available rows in
              the underlying data model will be displayed.
              </p>]]>
          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              The current value of this component.
          </description>
        </attribute>
        <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Name of a request-scope attribute under which the model data for the
              row selected by the current value of the "rowIndex" property (i.e.
              also the current value of the "rowData" property) will be exposed.
          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[<p>          
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.
              
              </b>The default class would be rendered as <b>icePnlSeries</b>
              </p>]]>

          </description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>        
   </tag>
   <!-- outputConnectionStatus -->
    <tag>
    <name>outputConnectionStatus</name>
    <tag-class>com.icesoft.faces.component.outputconnectionstatus.OutputConnectionStatusTag</tag-class>
        <body-content>JSP</body-content>
        <description><![CDATA[
        <p>The outputConnectionStatus component displays the information about the status of the network connection
        between the client browser and the server. The component displays one of 4 possible states, which are as
        follows.</p>
        <ol>
           <li><b>Active:</b> The connection is alive and there is a request pending.</li>
           <li><b>Inactive:</b> The connection is alive and there is no pending activity.</li>
           <li><b>Caution:</b> The connection request/response latency has exceeded the configured threshold.
               Indicates that asynchronous updates from the server may not be received in a timely manner.</li>
           <li><b>Disconnected:</b> The connection has been lost, either due to network or application error
           (session expiry, etc.).</li>
        </ol>
        <p>The outputConnectionStatus component provides an ideal mechanism to provide continuous real-time feedback
        to users of the status of their ICEfaces application. It is particularly important to inform users when the
        application is busy sending and receiving data in response to a user-initiated action to manage their 
        expectations with respect to application readiness for additional user input. Generally, the
        outputConnectionStatus component should be located in a consistent location throughout an ICEfaces application.
        </p>
        <p>
        <b>NOTE:</b> A web-page may only contain a single outputConnectionStatus component. Using more than one
        outputConnectionStatus component on the same web page will result in erratic results.</p>
         ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>        
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[ 
              <p>Defines the base class name for all style classes used in outputConnectionStatus.
              Default value is iceOutConStat<p>
              <ul>
                <li>iceOutConStatInactive</li>
                <li>iceOutConStatActive</li>
                <li>iceOutConStatCaution</li>
                <li>iceOutConStatDisconnect</li>
              </ul>              
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>inactiveLabel</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                The connection status component would show this label, when the connection
                is alive and there is no pending activity.
          </description>
        </attribute>
        <attribute>
          <name>activeLabel</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                The connection status component would show this label, when The connection
                is alive and there is a request pending.
          </description>
        </attribute>
        <attribute>
          <name>cautionLabel</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                The connection status component would show this label, when The connection
                state is unknown as a heartbeat ping has not been acknowleged.
                However, connection recovery activities are in progress which
                will change the state to either "Connected" or "Disconnected"
                status.
          </description>
        </attribute>
        <attribute>
          <name>disconnectedLabel</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                The connection status component would show this label, when The
                connection has been lost, either due to network error or the
                application session expiring.
          </description>
        </attribute>

        <!--<attribute>
          <name>inactiveClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                Space-separated list of CSS style class(es) to be applied when this
                component is in inactive mode. Could be used for graphical representation
                of connection status.
          </description>
        </attribute>
        <attribute>
          <name>activeClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                Space-separated list of CSS style class(es) to be applied when this
                component is in active mode. Could be used for graphical representation
                of connection status.
          </description>
        </attribute>
        <attribute>
          <name>cautionClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                Space-separated list of CSS style class(es) to be applied when this
                component is in caution mode. Could be used for graphical representation
                of connection status.
          </description>
        </attribute>
        <attribute>
          <name>disconnectedClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                Space-separated list of CSS style class(es) to be applied when this
                component is in disconnected mode. Could be used for graphical representation
                of connection status.
          </description>
        </attribute>-->
   </tag>
   <!-- outputProgress (progress bar) -->
    <tag>
        <name>outputProgress</name>
        <tag-class>com.icesoft.faces.component.outputprogress.OutputProgressTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>The outputProgress component can be used to report progress to users in cases where a
            long running server-side task is necessary. This component can be run in either of two modes;
            "determinate" and "indeterminate".</p>

            <p>Determinate mode should be used in cases where the number of steps or units of work in a long-running
            process are known. In determinate mode (default) the outputProgress component renders a progress bar
            that indicates the completion percentage for a task. Typically, the progress bar will gradually progress
            from 0 to 100 % complete in incremental steps determined by the application.</p>

            <p>Indeterminate mode should be used in cases when it is not possible to predicate how long a long-running
            process will take to complete, or how many steps or units of work are required to complete the task.
            In indeterminate mode the outputProgress component renders an animated icon or progress bar that
            indicates generally that  activity is taking place.</p>
             ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
          <name>indeterminate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>When true percent numbers are hidden for an unknown task duration.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Binding to an application bean method that returns an int percentage value.</description>
        </attribute>
        <attribute>
            <name>label</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The default label is the percentage value. The default can be
                overridden by defining the label attribute.
            </description>
        </attribute>
        <attribute>
            <name>labelComplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The label to be displayed on completion of process. Could be used
                with label attribute. The default value is Done.
            </description>
        </attribute>
        <attribute>
            <name>labelPosition</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Percentage text could be set to different positions. Valid values are |left | right | top | topcenter | topright | bottom | bottomcenter | bottomright | embed |</description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             <![CDATA[ 
              <p>Defines the base class name for all style classes used in
              outputConnectionStatus. Default value is iceOutputProgress</p>
              <ul>
                <li>iceOutputProgressIndeterminateActiveClass</li>
                <li>iceOutputProgressIndeterminateInactiveClass</li>
                <li>iceOutputProgressText</li>
                <li>iceOutputProgressBackground</li>
                <li>iceOutputProgressFill</li>
              </ul>              
              ]]>                        
          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>

        <!--<attribute>
            <name>bgStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> The CSS class for the background div of progress bar </description>
        </attribute>
        <attribute>
            <name>fillStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> The CSS class for the foreground div of progress bar </description>
        </attribute>
        <attribute>
            <name>textStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> The CSS class for the percentage text </description>
        </attribute>
        <attribute>
            <name>indeterminateActiveClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                This class brings outputProgress component to indeterminate mode.
                Its need an animated gif as background image, which would be visible during the progress.
            </description>
        </attribute>
        <attribute>
            <name>indeterminateInactiveClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                This class need be used in conjunction with indeterminateActiveClass,
                Its need a static image as background, which would be visible before and after of any process.

            </description>
        </attribute>-->
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
    </tag>

   <!-- inputFile (fileUpload) -->
    <tag>
        <name>inputFile</name>
        <tag-class>com.icesoft.faces.component.inputfile.InputFileTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>The inputFile component renders an file input HTML element. Users specify a file to upload
            either by entering the path to a file directly, or by  clicking the  <b>Browse</b>  button
            to open a file-system navigation dialog window.  Clicking the  <b>Upload</b>  button uploads
            the specified file to the server.</p>

            <p>The inputFile component can be used to provide a user-specified file upload capability.</p>

            <p><b>Note:</b> The inputFile component must render itself inside a form with its encode type set to
            "multipart/form-data". This limitation prevents using the inputFile component inside another form.</p>
            <p><b>Note:</b> The web.xml parameter com.icesoft.faces.uploadDirectoryAbsolute when set to true will use the value of the
            com.icesoft.faces.uploadDirectory parameter as an absolute directory.</p>
            ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                User-defined id that will override the automatically-generated id.
            </description>
        </attribute>
        <attribute>
            <name>file</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Bean property that will be a reference to the uploaded file.
            </description>
        </attribute>
        <attribute>
            <name>size</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Size of the input text box.
            </description>
        </attribute>
        <attribute>
            <name>label</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Text that will appear on the submit button.
            </description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>        
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Flag indicating that this component's value must be converted and validated immediately (that is, during Apply Request Values phase), rather than waiting until Process Validations phase.</description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.
          </description>
        </attribute>        
        <attribute>
            <name>accept</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>action</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at the application action to be invoked, if this UIComponent is activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of the immediate property.</description>
        </attribute>
        <attribute>
            <name>actionListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at method accepting an ActionEvent with return type void.</description>
        </attribute>
        <attribute>
            <name>accesskey</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>alt</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>maxlength</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>onblur</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>onchange</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>onfocus</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>onselect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>tabindex</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                 <![CDATA[
                <p>Defines the base class name for all style classes used in inputFile. Default value is iceFileUpload:</p>              
               <p>Style Classes Used:</p>
                     <ul>
                       <li>iceFileUploadButton</li>
                       <li>iceFileUploadText</li>                      
                     </ul>  
                ]]>
            </description>
        </attribute>
        <attribute>
          <name>buttonClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.
          </description>
        </attribute>
        <attribute>
          <name>uniqueFolder</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
                <p>This parameter works in conjunction with the ice:inputFile component 
                attribute "uniqueFolder" with four possible combinations as illustrated 
                in the table below:
                </p>
                <table border="1">
                    <tr>
                       <td rowspan='2'>
                            <b>uniqueFolder</b>
                       </td>
                       <td colspan='2' align='center'>
                            <b>com.icesoft.faces.uploadDirectory</b>
                       </td>
                    </tr>
                    <tr>
                       <td>Set
                       </td>
                       <td>Not Set
                       </td>
                    </tr>
                    <tr>
                       <td>True
                       </td>
                       <td>/application-context/uploadDirectory/sessionid/
                       </td>
                       <td>/application-context/sessionid/
                       </td>
                    </tr>
                    <tr>
                       <td>False
                       </td>
                       <td>/application-context/uploadDirectory/
                       </td>
                       <td>/application-context/
                       </td>
                    </tr>
                </table>
            ]]>
         </description>
        </attribute>        
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
        <attribute>
            <name>progressListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at progressListener method.</description>
        </attribute>        
    </tag>

    <!-- tree -->
    <tag>
        <name>tree</name>
        <tag-class>com.icesoft.faces.component.tree.TreeTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The tree component displays hierarchical data as a "tree" of branches  and leaf nodes.
            Optionally, the tree may also display navigation controls for the dynamic expansion
            and collapse of branch nodes.</p>
            
            <p>The tree component can be used in cases where a hierarchical data structure must be viewed
            and navigated. It is typically used for menu-style applications, where the user selects
            a tree node and the application responds with an action related to the selected node.</p>

            <p>In implementing a tree tag, the application developer must provide and declare in the JSP a tree tag and
            a single treeNode tag as a child of the tree tag. The tree tag should declare the "value" attribute
            to be a value binding to a backing bean that will return an object that implements the 
            javax.swing.tree.TreeModel interface. </p>

            <p>The TreeModel must contain a tree of DefaultMutableTreeNode instances.
            Each DefaultMutableTreeNode instance encapsultes an IceUserObject. The IceUserObject is the extension point
            for the application developer. If the IceUserObject does not provide sufficient state for representation
            of the tree's nodes, then the application developer should extend the IceUserObject and add state as required 
            to their extension. When creating an IceUserObject, the DefaultMutableTreeNode wrapper must
            be provided to the constructor. Then the node's state can be set to the attributes on the
            IceUserObject including:</p>
            <ul>
                <li>text, a convenience field that will typically represent the text that will be displayed somewhere
                    in the content facet</li>
                <li>expanded, whether the node is expanded on its first rendering and until the
                    user initiates a navigation event to change this value</li>
                <li>tooltip, the text that will appear in the  tooltip that appears when the
                    user hovers over a node</li>
                <li>leafIcon, the application-relative path to  an image that will be used to
                    represent this node when it has no children (is a leaf),typically referred to
                    in the icon facet</li>
                <li>branchExpandedIcon, the application-relative path to an image that will be
                    used to represent this node when it has children (is a branch) and is expanded,
                    typically referred to in the icon facet</li>
                <li>branchContractedIcon, the application-relative path to
                    an image that will be used to represent this node when it has children (is a branch) and is not expanded,
                    typically referred to in the icon facet.</li>
            </ul>
            <p>The "binding" attribute can be defined so that the
            application developer will have access to the Tree component in the application's backing bean.
            The "var" attribute can be declared on the tree tag such that the treeNode tag's children have 
            access to the state of the TreeModel's node that it represents.</p>

            <p>See the documentation for the treeNode tag for a description of supported facets.</p>]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
         <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
               Sets the component's model value, which must be a JSF value
               binding expression to an implementation of the "javax.swing.tree.TreeModel" interface.
            </description>
        </attribute>
        <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Name of a request-scope attribute under which the model data for the
              row selected by the current value of the "rowIndex" property (i.e.
              also the current value of the "rowData" property) will be exposed.
          </description>
        </attribute>
        <attribute>
            <name>hideRootNode</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Declares whether the root tree node will be rendered.
            Valid values are true and false.</description>
        </attribute>
        <attribute>
            <name>hideNavigation</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Declares whether the navigation links will be rendered.
            Valid values are true and false.</description>
        </attribute>
        <attribute>
            <name>imageDir</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Set directory for location of the tree images.</description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS class to be applied to the top most html element of the rendered component.
          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied to the top most html element of the rendered component.
          </description>
        </attribute>
        <attribute>
          <name>action</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing the application action to invoke when
              this component is activated by the user.  The expression must
              evaluate to a public method that takes no parameters, and returns
              a String (the logical outcome) which is passed to the
              NavigationHandler for this application.
          </description>
        </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.
          </description>
        </attribute>
        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Flag indicating that this component's value must be converted and validated immediately (that is, during Apply Request Values phase), rather than waiting until Process Validations phase.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>navOpenTop</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Name of the image that overrides the default image.
            </description>
        </attribute>
        <attribute>
            <name>navOpenTopNoSiblings</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Name of the image that overrides the default image.
            </description>
        </attribute>
        <attribute>
            <name>navCloseTop</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
            <name>folderImage</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
                Name of the image that overrides the default image.
            </description>
        </attribute>
        <attribute>
            <name>folderOpenImage</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
            <name>documentImage</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
    </tag>

    <tag>
        <name>treeNode</name>
        <tag-class>com.icesoft.faces.component.tree.TreeNodeTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p> The treeNode tag provides the template that be applied in rendering each node in the
            backing data model. The treeNode tag supports two facets: </p>
            <ul>
                <li>The icon facet and the content facet. The icon facet is
                    intended to contain a graphic image that will serve as the icon for the node it represents. This
                    image can be customized for each node, or default icons for leaf nodes, expand branch nodes, and contracted
                    branch nodes will be used.</li>
                <li>The content facet can contain any collection of components. For each node in the tree's backing
                    data model, the child components of the two facets will be rendered with state retrieved from the
                    data model as configured in the JSP by the application developer.</li>
            </ul>]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>        
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
    </tag>

    <!-- menu -->
    <tag>
        <name>menuBar</name>
        <tag-class>com.icesoft.faces.component.menubar.MenuBarTag</tag-class>
        <body-content>JSP</body-content>
        <description>
        <![CDATA[
        <p>The menuBar component provides a robust menu system that supports:</p>
        <ol>
           <li>Nested child menuItem and menuItemSeparator components. Support for menuItemCheckbox and menuItemRadio
           components are planned for a future release.</li>

           <li>Horizontal (default) and Vertical menu orientations. Defines whether the submenus of the top-level
           menu items appear beside or below the top-level menu items.</li>

           <li> Definition of the heirarchy of menu items and their submenus in one of two ways:
                <ul>
                   <li>by using a binding to a bean method that returns a (potentially) dynamic heirarchy of menu items.</li>
                   <li>by statically defining the heirarchy in the JSPX page.</li>
                </ul>
           </li>

           <li>The action attribute of the contained menuItem tags or instances can be defined to indicate a string or
           a backing bean method that can be used in application navigation.</li>

           <li>The actionListener attribute of the contained menuItem tags or instances can be defined to indicate an
           actionListener that resides in a backing bean.</li>
           
           <li>
                renders the following style class:
                <ul>
                   <li>For horizontal = iceMenuBar </li>
                   <li>For vertical = iceMenu_verticalItem </li>
                </ul>
           </li>
        </ol>
        <p>See the menuItem component's description for more relevant information.</p>]]>
        </description>
        
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>        
        <attribute>
            <name>imageDir</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description><![CDATA[Set directory for location of the tree images.
            Default directory is xmlhttp/css/xp/css-images/ which is include in the icefaces.jar.]]></description>
        </attribute>
        <attribute>
            <name>orientation</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Defines whether the submenus of the top-level menu items appear beside or below the top-level menu items.
            Horizontal (default) and Vertical menu orientations.</description>
        </attribute>
        <attribute><name>style</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
          <name>action</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing the application action to invoke when
              this component is activated by the user.  The expression must
              evaluate to a public method that takes no parameters, and returns
              a String (the logical outcome) which is passed to the
              NavigationHandler for this application.
          </description>
        </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.
          </description>
        </attribute>
        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Flag indicating that this component's value must be converted and validated immediately (that is, during Apply Request Values phase), rather than waiting until Process Validations phase.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>noIcons</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If true, this component will not rendered icons and icon spacers in menuItems.</description>
        </attribute>                
    </tag>

    <tag>
        <name>menuItem</name>
        <tag-class>com.icesoft.faces.component.menubar.MenuItemTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>
            MenuItem components are the menu items contained by a menuBar. The value attribute 
            defines the label displayed for the menuItem. The icon attribute can be used to 
            specify an image that displays on the left side of the menuItem. The action and 
            actionListener attributes operate in the same way os the standard component attributes
            of the same name. The menuItem component is only used in the static approach to defining 
            the heirarchy of menu items.
            </p>
            <p>
            This component renders the following style classes : <br/>
            Vertical orientation:
            <ul>
                <li>iceMenu_verticalItem</li>
                <li>iceSubMenu_vertical</li>
                <li>iceMenu_verticalItemLabel</li>
                <li>iceMenu_vertical_subItem</li>
                <li>iceSubMenuDivider</li>
                <li>iceSubMenuRowLabel</li>
                <li>iceSubMenuRowImage</li> 
                <li>iceSubMenuRowSubMenuIndicator</li>                                                                                                          
            </ul>
            Vertical disabled orientation:
            <ul>
                <li>iceMenu_vertical_subItem-dis</li>
            </ul>
            <br/>
            Horizontal orientation:
            <ul>
                <li>iceMenu</li>
                <li>iceSubMenuRowImage</li>
                <li>iceSubMenuRowLabel</li>
                <li>iceSubMenuRowSubMenuIndicator</li>
                <li>iceSubMenu</li>
                <li>iceSubMenuRow</li>
                <li>iceSubMenuDivider</li>  
            </ul>
            Horizontal disabled orientation:
            <ul>
                <li>iceSubMenuRow-dis</li>
            </ul>
            </p>
            ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>        
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
            <name>icon</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
            <name>link</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
        <attribute>
            <name>target</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
              Name of a frame where the resource retrieved via this hyperlink is 
              to be displayed. Only valid if link attribute is used.
            </description>
        </attribute>        
        <attribute>
          <name>action</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing the application action to invoke when
              this component is activated by the user.  The expression must
              evaluate to a public method that takes no parameters, and returns
              a String (the logical outcome) which is passed to the
              NavigationHandler for this application.
          </description>
        </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.
          </description>
        </attribute>        
         
        <attribute>
            <name>disabled</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                indicates tab should be disabled.
            </description>
        </attribute>
        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Flag indicating that this component's value must be converted and validated immediately (that is, during Apply Request Values phase), rather than waiting until Process Validations phase.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
    </tag>

    <tag>
        <name>menuItems</name>
        <tag-class>com.icesoft.faces.component.menubar.MenuItemsTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            This is the submenu component to use if you want to supply a (potentially) dynamic 
            heirarchy of menuItems.
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
        </attribute>
    </tag>

    <tag>
        <name>menuItemSeparator</name>
        <tag-class>com.icesoft.faces.component.menubar.MenuItemSeparatorTag</tag-class>
        <body-content>JSP</body-content>
        <description>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component must have an unique id. Automatically created if omitted.</description>
        </attribute>
    </tag>
    

   <!-- panelTab -->
    <tag>
        <name>panelTab</name>
        <tag-class>com.icesoft.faces.component.paneltabset.PanelTabTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders an individual Panel Tab. Must be contained within a TabbedPane. ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute><name>dir</name>     <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>lang</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>style</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>title</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>icePanelTab</b> .
              ]]>
            </description>

        </attribute>
        <attribute><name>onclick</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>ondblclick</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousedown</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseup</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseover</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousemove</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseout</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeypress</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeydown</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeyup</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>renderedOnUserRole</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If user is in given role, this component will be rendered
                normally. If not, nothing is rendered and the body of this tag
                will be skipped.
            </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>        
        <attribute>
            <name>label</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Label of this tab.
            </description>
        </attribute>
        <attribute>
            <name>disabled</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                indicates tab should be disabled.
            </description>
        </attribute>
        <attribute>
            <name>icon</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
               The icon attribute sets the icon file for this panelTab component 
            </description>
        </attribute>        
        <attribute>
            <name>iconAlignRight</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
               It tells the component whether icon should be rendered on the right 
               side of the label or the left side of the label. The default valus is false. 
            </description>
        </attribute>                 
    </tag>

    <!-- panelTabSet (panelTabbedPane) -->
    <tag>
        <name>panelTabSet</name>
        <tag-class>com.icesoft.faces.component.paneltabset.PanelTabSetTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The panelTabSet is a container component which itself contains one or more panelTab
            components, which are  also container components. The panelTabSet component displays the "active"
            panelTab, hiding the contents of the others. Users can select which panelTab to make visible by 
            clicking on the tab header of the panelTab that they want to display.</p>

            <p>The panelTabSet component can be used in cases where a file-tab navigation interface is appropriate.</p>

            <p>Default styleClass value: iceTabSet</p>
            ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
       <attribute>
          <name>first</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Zero-relative row number of the first row to be displayed.  If this
              property is set to zero, rendering will begin with the first row of
              the underlying data.
          </description>
        </attribute>
        <attribute>
          <name>rows</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          
              The number of rows to display, starting with the one identified by the
              "first" property.  If this value is set to zero, all available rows in
              the underlying data model will be displayed.
            
          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          
              The current value of this component.
            
          </description>
        </attribute>
        <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          
              Name of a request-scope attribute under which the model data for the
              row selected by the current value of the "rowIndex" property (i.e.
              also the current value of the "rowData" property) will be exposed.
            
          </description>
        </attribute>        
    
        <attribute><name>dir</name>     <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>lang</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>style</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>title</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 <![CDATA[
                 <p>Defines the base class name for all style classes used in tabbed panes.</p>
                 <p>Default value for the base class name is <b>iceTabSet</b>. The base class name
                 is used as a prefix for the style classes that will be applied to the elements that make up
                 the panelTabset. The default style classes are defined in the xp.css and royale.css that are included
                 with ICEfaces.</p>
                 <p>Style Classes Used:</p>
                     <ul>
                       <li>iceTabSet</li>

                       <li>iceTabSetTabOn .LeftTop</li>
                       <li>iceTabSetTabOn .MiddleTop</li>
                       <li>iceTabSetTabOn .RightTop</li>
                       <li>iceTabSetTabOn .LeftMiddle</li>
                       <li>iceTabSetTabOn .MiddleMiddle</li>
                       <li>iceTabSetTabOn .MiddleMiddle a</li>
                       <li>iceTabSetTabOn .RightMiddle</li>
                       <li>iceTabSetTabOn .LeftBottom</li>
                       <li>iceTabSetTabOn .MiddleBottom</li>
                       <li>iceTabSetTabOn .RightBottom</li>

                       <li>iceTabSetTabOff .LeftTop</li>
                       <li>iceTabSetTabOff .MiddleTop</li>
                       <li>iceTabSetTabOff .RightTop</li>
                       <li>iceTabSetTabOff .LeftMiddle</li>
                       <li>iceTabSetTabOff .MiddleMiddle</li>
                       <li>iceTabSetTabOff .MiddleMiddle a</li>
                       <li>iceTabSetTabOff .RightMiddle</li>
                       <li>iceTabSetTabOff .LeftBottom</li>
                       <li>iceTabSetTabOff .MiddleBottom</li>
                       <li>iceTabSetTabOff .RightBottom</li>

                       <li>iceTabSetTabOver .LeftTop</li>
                       <li>iceTabSetTabOver .MiddleTop</li>
                       <li>iceTabSetTabOver .RightTop</li>
                       <li>iceTabSetTabOver .LeftMiddle</li>
                       <li>iceTabSetTabOver .MiddleMiddle</li>
                       <li>iceTabSetTabOver .MiddleMiddle a</li>
                       <li>iceTabSetTabOver .RightMiddle</li>
                       <li>iceTabSetTabOver .LeftBottom</li>
                       <li>iceTabSetTabOver .MiddleBottom</li>
                       <li>iceTabSetTabOver .RightBottom</li>

                       <li>iceTabSetTabOnBottom .LeftTop</li>
                       <li>iceTabSetTabOnBottom .MiddleTop</li>
                       <li>iceTabSetTabOnBottom .RightTop</li>
                       <li>iceTabSetTabOnBottom .LeftMiddle</li>
                       <li>iceTabSetTabOnBottom .MiddleMiddle</li>
                       <li>iceTabSetTabOnBottom .MiddleMiddle a</li>
                       <li>iceTabSetTabOnBottom .RightMiddle</li>
                       <li>iceTabSetTabOnBottom .LeftBottom</li>
                       <li>iceTabSetTabOnBottom .MiddleBottom</li>
                       <li>iceTabSetTabOnBottom .RightBottom</li>

                       <li>iceTabSetTabOffBottom .LeftTop</li>
                       <li>iceTabSetTabOffBottom .MiddleTop</li>
                       <li>iceTabSetTabOffBottom .RightTop</li>
                       <li>iceTabSetTabOffBottom .LeftMiddle</li>
                       <li>iceTabSetTabOffBottom .MiddleMiddle</li>
                       <li>iceTabSetTabOffBottom .MiddleMiddle a</li>
                       <li>iceTabSetTabOffBottom .RightMiddle</li>
                       <li>iceTabSetTabOffBottom .LeftBottom</li>
                       <li>iceTabSetTabOffBottom .MiddleBottom</li>
                       <li>iceTabSetTabOffBottom .RightBottom</li>

                       <li>iceTabSetTabOverBottom .LeftTop</li>
                       <li>iceTabSetTabOverBottom .MiddleTop</li>
                       <li>iceTabSetTabOverBottom .RightTop</li>
                       <li>iceTabSetTabOverBottom .LeftMiddle</li>
                       <li>iceTabSetTabOverBottom .MiddleMiddle</li>
                       <li>iceTabSetTabOverBottom .MiddleMiddle a</li>
                       <li>iceTabSetTabOverBottom .RightMiddle</li>
                       <li>iceTabSetTabOverBottom .LeftBottom</li>
                       <li>iceTabSetTabOverBottom .MiddleBottom</li>
                       <li>iceTabSetTabOverBottom .RightBottom</li>

                       <li>iceTabSetTabSpacer</li>
                       <li>iceTabSetTabSpacerBottom</li>
                       
                       <li>disabled style classes</li>
                       
                       <li>iceTabSetTabOff .LeftTop-dis</li>
                       <li>iceTabSetTabOff .MiddleTop-dis</li>
                       <li>iceTabSetTabOff .RightTop-dis</li>
                       <li>iceTabSetTabOff .LeftMiddle-dis</li>
                       <li>iceTabSetTabOff .MiddleMiddle-dis</li>
                       <li>iceTabSetTabOff .MiddleMiddle-dis a</li>
                       <li>iceTabSetTabOff .RightMiddle-dis</li>
                       <li>iceTabSetTabOff .LeftBottom-dis</li>
                       <li>iceTabSetTabOff .MiddleBottom-dis</li>
                       <li>iceTabSetTabOff .RightBottom-dis</li>

                     </ul>
                 </p>                 
                 <p>To override the defaults with a base class name of <b>myTabSet</b> the developer 
                 will need to define the following styleclasses in their web applications css.</p>
                     <ul>
                       <li>myTabSet</li>

                       <li>myTabSetTabOn .LeftTop</li>
                       <li>myTabSetTabOn .MiddleTop</li>
                       <li>myTabSetTabOn .RightTop</li>
                       <li>myTabSetTabOn .LeftMiddle</li>
                       <li>myTabSetTabOn .MiddleMiddle</li>
                       <li>myTabSetTabOn .MiddleMiddle a</li>
                       <li>myTabSetTabOn .RightMiddle</li>
                       <li>myTabSetTabOn .LeftBottom</li>
                       <li>myTabSetTabOn .MiddleBottom</li>
                       <li>myTabSetTabOn .RightBottom</li>

                       <li>myTabSetTabOff .LeftTop</li>
                       <li>myTabSetTabOff .MiddleTop</li>
                       <li>myTabSetTabOff .RightTop</li>
                       <li>myTabSetTabOff .LeftMiddle</li>
                       <li>myTabSetTabOff .MiddleMiddle</li>
                       <li>myTabSetTabOff .MiddleMiddle a</li>
                       <li>myTabSetTabOff .RightMiddle</li>
                       <li>myTabSetTabOff .LeftBottom</li>
                       <li>myTabSetTabOff .MiddleBottom</li>
                       <li>myTabSetTabOff .RightBottom</li>

                       <li>myTabSetTabOver .LeftTop</li>
                       <li>myTabSetTabOver .MiddleTop</li>
                       <li>myTabSetTabOver .RightTop</li>
                       <li>myTabSetTabOver .LeftMiddle</li>
                       <li>myTabSetTabOver .MiddleMiddle</li>
                       <li>myTabSetTabOver .MiddleMiddle a</li>
                       <li>myTabSetTabOver .RightMiddle</li>
                       <li>myTabSetTabOver .LeftBottom</li>
                       <li>myTabSetTabOver .MiddleBottom</li>
                       <li>myTabSetTabOver .RightBottom</li>

                       <li>myTabSetTabOnBottom .LeftTop</li>
                       <li>myTabSetTabOnBottom .MiddleTop</li>
                       <li>myTabSetTabOnBottom .RightTop</li>
                       <li>myTabSetTabOnBottom .LeftMiddle</li>
                       <li>myTabSetTabOnBottom .MiddleMiddle</li>
                       <li>myTabSetTabOnBottom .MiddleMiddle a</li>
                       <li>myTabSetTabOnBottom .RightMiddle</li>
                       <li>myTabSetTabOnBottom .LeftBottom</li>
                       <li>myTabSetTabOnBottom .MiddleBottom</li>
                       <li>myTabSetTabOnBottom .RightBottom</li>

                       <li>myTabSetTabOffBottom .LeftTop</li>
                       <li>myTabSetTabOffBottom .MiddleTop</li>
                       <li>myTabSetTabOffBottom .RightTop</li>
                       <li>myTabSetTabOffBottom .LeftMiddle</li>
                       <li>myTabSetTabOffBottom .MiddleMiddle</li>
                       <li>myTabSetTabOffBottom .MiddleMiddle a</li>
                       <li>myTabSetTabOffBottom .RightMiddle</li>
                       <li>myTabSetTabOffBottom .LeftBottom</li>
                       <li>myTabSetTabOffBottom .MiddleBottom</li>
                       <li>myTabSetTabOffBottom .RightBottom</li>

                       <li>myTabSetTabOverBottom .LeftTop</li>
                       <li>myTabSetTabOverBottom .MiddleTop</li>
                       <li>myTabSetTabOverBottom .RightTop</li>
                       <li>myTabSetTabOverBottom .LeftMiddle</li>
                       <li>myTabSetTabOverBottom .MiddleMiddle</li>
                       <li>myTabSetTabOverBottom .MiddleMiddle a</li>
                       <li>myTabSetTabOverBottom .RightMiddle</li>
                       <li>myTabSetTabOverBottom .LeftBottom</li>
                       <li>myTabSetTabOverBottom .MiddleBottom</li>
                       <li>myTabSetTabOverBottom .RightBottom</li>

                       <li>myTabSetTabSpacer</li>
                       <li>myTabSetTabSpacerBottom</li>
                       
                       <li>disabled style classes</li>
                       
                       <li>myTabSetTabOff .LeftTop-dis</li>
                       <li>myTabSetTabOff .MiddleTop-dis</li>
                       <li>myTabSetTabOff .RightTop-dis</li>
                       <li>myTabSetTabOff .LeftMiddle-dis</li>
                       <li>myTabSetTabOff .MiddleMiddle-dis</li>
                       <li>myTabSetTabOff .MiddleMiddle-dis a</li>
                       <li>myTabSetTabOff .RightMiddle-dis</li>
                       <li>myTabSetTabOff .LeftBottom-dis</li>
                       <li>myTabSetTabOff .MiddleBottom-dis</li>
                       <li>myTabSetTabOff .RightBottom-dis</li>

                     </ul>
                 </p>
                 
                 ]]>
            </description>
        </attribute>
        <attribute><name>onclick</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>ondblclick</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousedown</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseup</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseover</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousemove</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseout</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeypress</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeydown</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeyup</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>align</name>           <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>border</name>          <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>bgcolor</name>         <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>cellpadding</name>     <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>cellspacing</name>     <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>frame</name>           <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>rules</name>           <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>summary</name>         <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>height</name>           <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>width</name>           <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>renderedOnUserRole</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If user is in given role, this component will be rendered
                normally. If not, nothing is rendered and the body of this tag
                will be skipped.
            </description>
        </attribute>
        <attribute>
            <name>selectedIndex</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Index of tab that is selected by default.
            </description>
        </attribute>
        <attribute>
            <name>tabPlacement</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The placement for the tabs relative to the content.
                Possible values; Top, Bottom. Default is Top.
                Left and Right not supported in this release.
            </description>
        </attribute>
        <!--<attribute>
            <name>activeTabStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the active tab cell.
            </description>
        </attribute>
        <attribute>
            <name>inactiveTabStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the inactive tab cells.
            </description>
        </attribute>
        <attribute>
            <name>disabledTabStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the disabled tab cells.
            </description>
        </attribute>
        <attribute>
            <name>activeSubStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the active tab sub cell.
            </description>
        </attribute>
        <attribute>
            <name>inactiveSubStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the inactive tab sub cells.
            </description>
        </attribute>
        <attribute>
            <name>tabContentStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the active tab content cell.
            </description>
        </attribute>
        <attribute>
            <name>tabSpacerStyleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Style class of the empty tab header cell.
            </description>
        </attribute>-->
    </tag>

    <!-- tab change listener -->
    <tag>
        <name>tabChangeListener</name>
        <tag-class>com.icesoft.faces.component.paneltabset.TabChangeListenerTag</tag-class>
        <body-content>empty</body-content>
        <attribute>
            <name>type</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>the name of the class that will be added to the HtmlPanelTabbedPane component as a TabChangeListener</description>
        </attribute>
    </tag>

    <!-- selectInputDate (selectinputdate) -->
    <tag>
        <name>selectInputDate</name>
        <tag-class>com.icesoft.faces.component.selectinputdate.SelectInputDateTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>The selectInputDate component renders a localized dateSelect. Users may select a date by clicking
            on a date in the displayed month. The displayed month and year can be changed using arrow buttons.
            Optionally, the selectInputDate component may be used in popup mode. In this mode an inputText
            component is rendered that displays the selected date. Users may enter a date directly into the
            inputText component, or optionally click a button beside the inputText component to display a popup
            dateSelect view. Selecting a date in the dateSelect closes  the popup dateSelect view and updates the
            selected date.</p>

            <p>The selectInputDate component can be used in cases where a date value must be displayed or entered.</p> ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>        
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.util.Date</type>
            <description>The current date value of this component.</description>
        </attribute>
        <attribute>
            <name>converter</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Id of Converter to be used or reference to a Converter.</description>
        </attribute>

        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description> Flag indicating that this component's value must be converted and validated immediately (that is, during Apply Request Values phase), rather than waiting until Process Validations phase.</description>
        </attribute>
        <attribute>
            <name>required</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If true, this component will be checked for non-empty input.</description>
        </attribute>
        <attribute>
            <name>validator</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at a method that will be called during Process Validations phase of the request processing lifecycle, to validate the current value of this component.</description>
        </attribute>
        <attribute>
            <name>valueChangeListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Listener for value changes.</description>
        </attribute>
        <attribute>
            <name>renderedOnUserRole</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If user is in given role, this component will be rendered
                normally. If not, nothing is rendered and the body of this tag
                will be skipped.
            </description>
        </attribute>
        <attribute><name>onclick</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>ondblclick</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousedown</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseup</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseover</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmousemove</name><required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onmouseout</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeypress</name> <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeydown</name>  <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>onkeyup</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>dir</name>     <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>lang</name>    <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>style</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>title</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            
            <description>
            <![CDATA[ 
              <p>Defines the base class name for all style classes used in selectInputDate. Default value is iceCal</p>
              <ul>
                <li>iceCalMonthYear</li>
                <li>iceCalWeek</li>
                <li>iceCalCur</li>
                <li>iceCalDay</li>
                <li>iceCalOutline</li>
                <li>iceCalInput</li>                                
              </ul>              
              ]]>                        
            </description>
        </attribute>
        
        <attribute>
            <name>renderAsPopup</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Render the input-dateSelect as a java-script popup on client.</description>
        </attribute>

        <attribute>
            <name>imageDir</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Set directory for location of the dateSelect images.</description>
        </attribute>

        <attribute>
            <name>popupDateFormat</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Not Applicable - the ICEfaces popup dateSelect does not require any special attributes.</description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to inputText element when in popup mode.</description>
        </attribute>        
    </tag>


  <!-- dataPaginator (dataScroller) -->
    <tag>
        <name>dataPaginator</name>
        <tag-class>com.icesoft.faces.component.datapaginator.DataPaginatorTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>The dataPaginator component is used in conjunction with a dataTable. The dataPaginator may be used
            to render a set of page navigation facets and access attributes of the underlying DataModel specified
            in the associated dataTable. Using the dataPaginator, a dataTable containing a large DataModel can
            be viewed as multiple "pages" of table rows instead of as one large table.</p>

            <p>The dataPaginator component can be used to provide a more manageable, performant view into a large
            DataModel.</p> ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>renderedOnUserRole</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If user is in given role, this component will be rendered
                normally. If not, nothing is rendered and the body of this tag
                will be skipped.
            </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>

        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
            <name>for</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Id of the dataTable</description>
        </attribute>
        <attribute>
            <name>fastStep</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>step (pages) used for fastforward and fastrewind</description>
        </attribute>
        <attribute>
            <name>pageIndexVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual page index is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>pageCountVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual page count is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>rowsCountVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual rows count is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>displayedRowsCountVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual displayed rows count is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>firstRowIndexVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual first displayed row index is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>lastRowIndexVar</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                A parameter name, under which the actual last displayed row index is set in request scope
                similar to the var parameter.
            </description>
        </attribute>
        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
        <![CDATA[ 
              <p>Defines the base class name for all style classes used in selectInputDate.
              Default value is iceDtdPgr</p>
              if enabled
              <ul>
                <li>iceDtdPgrScrBtn</li>
                <li>iceDtdPgrScrOut</li>
                <li>iceDtdPgrSrcCol</li>
                <li>iceDtdPgrCol</li>
                <li>iceDtdPgrTbl</li>                
              </ul>   
              if disabled
              <ul>
                <li>iceDtdPgrScrBtn-dis</li>
                <li>iceDtdPgrScrOut-dis</li>
                <li>iceDtdPgrSrcCol-dis</li>
                <li>iceDtdPgrCol-dis</li>
                <li>iceDtdPgrTbl-dis</li>                
              </ul>                          
              ]]>
            </description>
        </attribute>
        <attribute>
            <name>style</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                style for scroller table
            </description>
        </attribute>
        <attribute>
            <name>paginator</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If set true, then the page number links will be rendered
            </description>
        </attribute>
        <attribute>
            <name>paginatorMaxPages</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The maximum amount of pages to be displayed in the paginator.
            </description>
        </attribute>
<!--        <attribute>
            <name>paginatorTableClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                styleclass for paginator
            </description>
        </attribute>
        <attribute>
            <name>paginatorTableStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                style for paginator
            </description>
        </attribute>
        <attribute>
            <name>paginatorColumnClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                styleClass for paginator's column
            </description>
        </attribute>
        <attribute>
            <name>paginatorColumnStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                style for paginator's column
            </description>
        </attribute>
        <attribute>
            <name>paginatorActiveColumnClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                styleClass for paginator's column with pageIndex = currentPageIndex
            </description>
        </attribute>
        <attribute>
            <name>paginatorActiveColumnStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                style for paginator's column with pageIndex = currentPageIndex
            </description>
        </attribute>
         <attribute>
            <name>scrollButtonCellClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                styleClass for the cells behind the scroll buttons
            </description>
        </attribute>-->
        <attribute>
            <name>renderFacetsIfSinglePage</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                If set to false, the facets aren't rendered if all the lines are contained on a single page.
                Default is true.
            </description>
        </attribute>
        <attribute>
            <name>immediate</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>True means, that the default ActionListener should be executed immediately (i.e. during Apply Request Values phase of the request processing lifecycle), rather than waiting until the Invoke Application phase.</description>
        </attribute>
        <attribute>
            <name>actionListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>MethodBinding pointing at method accepting an ActionEvent with return type void.</description>
        </attribute>
        <attribute>
            <name>vertical</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>True means, that the padinatior would render vertically, default is false.</description>
        </attribute>

     </tag>

     <!-- commandSortHeader -->
    <tag>
        <name>commandSortHeader</name>
        <tag-class>com.icesoft.faces.component.commandsortheader.CommandSortHeaderTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The commandSortHeader component is used in conjunction with a dataTable.
            The commandSortHeader renders a clickable column header facet allowing the user to toggle
            the sort order of data in the table, either ascending or descending based on the values in
            the column.</p>

            <p>The commandSortHeader can be used to provide a user-controlled data sorting
            capability to a dataTable.</p> ]]>
        </description>
        <!-- CommandSortHeader attributes -->
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
        <attribute>
            <name>columnName</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The name of this column.
                This name must uniquely identify this column among all other (sortable) columns
                in the same data_table.
                The sortColumn attribute of the embedding data_table reflects the current
                sort column (see extended data_table).
            </description>
        </attribute>
        <attribute>
            <name>arrow</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                Indicates whether an arrow, that shows the sort direction should be rendered.
                Default: false
            </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>

        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute> 
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceCmdSrtHdr</b> if enabled and
              <b>iceCmdSrtHdr-dis</b> if disabled.
              ]]>
          </description>
        </attribute>               
    </tag>


    <!-- panelBorder -->
    <tag>
        <name>panelBorder</name>
        <tag-class>com.icesoft.faces.component.panelborder.PanelBorderTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[
            <p>The panelBorder is a layout container component that arranges and resizes specified child
            containers to fit in five regions: north, south, east, west, and center. These regions are
            defined using facets.</p>

            <p>The panelBorder component can be used to provide a general layout scheme for a page.</p>

            <p><b>Note:</b> A panelBorder facet needs a container type component as a child (e.g.,
            panelGroup, panelGrid or form). panelGroup renders a span tag, which doesn't
            work properly if using Mozilla. panelGrid can be used to avoid display problems.</p> ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
        <attribute>
            <name>align</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
                
        <attribute>
            <name>border</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>bgcolor</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>cellpadding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>cellspacing</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>frame</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>rules</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>summary</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>height</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>width</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>dir</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>lang</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>title</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
                                                        
        <attribute>
            <name>style</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>

        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
        <![CDATA[ 
              <p>Defines the base class name for all style classes used in panelBorder. Default value is icePage</p>
              <ul>
                <li>icePageNorth</li>
                <li>icePageWest</li>
                <li>icePageEast</li>
                <li>icePageCenter</li>
                <li>icePageSouth</li>
              </ul>              
              ]]>        
            </description>
        </attribute>
        <attribute>
            <name>layout</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>
            <![CDATA[
                <table border="1" cellpadding="2" cellspacing="0">
                    <tr>
                        <th>layout</th>
                        <th>north</th>
                        <th>south</th>
                        <th>west</th>
                        <th>east</th>
                        <th>center</th>
                    </tr>
                    <tr>
                        <td>default</td>
                        <td>top</td>
                        <td>bottom</td>
                        <td>left</td>
                        <td>right</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>horizontal reverse</td>
                        <td>top</td>
                        <td>bottom</td>
                        <td>right</td>
                        <td>left</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>vertical reverse</td>
                        <td>bottom</td>
                        <td>top</td>
                        <td>left</td>
                        <td>right</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>center only</td>
                        <td>none</td>
                        <td>none</td>
                        <td>none</td>
                        <td>none</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>hide north</td>
                        <td>none</td>
                        <td>bottom</td>
                        <td>left</td>
                        <td>right</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>hide east</td>
                        <td>top</td>
                        <td>bottom</td>
                        <td>left</td>
                        <td>none</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>hide south</td>
                        <td>top</td>
                        <td>none</td>
                        <td>left</td>
                        <td>right</td>
                        <td>center</td>
                    </tr>
                    <tr>
                        <td>hide west</td>
                        <td>top</td>
                        <td>bottom</td>
                        <td>none</td>
                        <td>right</td>
                        <td>center</td>
                    </tr>
                </table>
                <p>
                NOTE: This attribute has been depercated and will be removed in future release.
                Please use the following attributes instead:</p>
                <ul>
                <li>renderNorth</li>
                <li>renderSouth</li>
                <li>renderCenter</li>
                <li>renderWest</li>
                <li>renderEast</li>
                </ul>
                
            ]]>
            </description>
        </attribute>
        <attribute>
            <name>renderNorth</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>If false, the north facet will not be rendered. The layout attribute overrides this property.</description>
        </attribute>
        <attribute>
            <name>renderSouth</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>If false, the south facet will not be rendered. The layout attribute overrides this property.</description>
        </attribute>
        <attribute>
            <name>renderCenter</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>If false, the center facet will not be rendered. The layout attribute overrides this property.</description>
        </attribute>
        <attribute>
            <name>renderWest</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>If false, the west facet will not be rendered. The layout attribute overrides this property.</description>
        </attribute>
        <attribute>
            <name>renderEast</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>If false, the east facet will not be rendered. The layout attribute overrides this property.</description>
        </attribute>
                                    
<!--        <attribute>
            <name>northClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>westClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>eastClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>centerClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>southClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>northStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>westStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>eastStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>centerStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the table cell.</description>
        </attribute>
        <attribute>
            <name>southStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the table cell.</description>
        </attribute>-->
    </tag>

    <!-- panelStack -->
    <tag>
        <name>panelStack</name>
        <tag-class>com.icesoft.faces.component.panelstack.PanelStackTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The panelStack is a container component that itself contains multiple panel groups.
            A single contained panel group is visible at one time, filling the area covered by
            the panelStack component. The panel group specified in the selectPanel attribute will
            be visible, with the others being hidden.</p>

            <p>The panelStack component can be used in cases where a form region must contain several embedded
            panels, only one of which is visible at one time, changing dynamically depending on an application
            state change or user selection.</p> ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>selectedPanel</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Id of the child to be rendered.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
            <name>styleClass</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 <![CDATA[
                 <p>Defines the base class name for all style classes used in panelStack. Default value is icePnlStk.</p>
                 <p>Style Classes Used:</p>
                     <ul>
                       <li>icePnlStkRow</li>
                       <li>icePnlStkCol</li>                       
                     </ul>
                 ]]>
            </description>
        </attribute>
<!--        <attribute>
            <name>rowClass</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Space-separated list of CSS style class(es) to be applied on the tr element of the table.</description>
        </attribute>
        <attribute>
            <name>columnClass</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Space-separated list of CSS style class(es) to be applied on the td element of the table.</description>
        </attribute>   -->
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              CSS style(s) to be applied when this component is rendered.
          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
    </tag>

    <!-- panelPopup -->
    <tag>
        <name>panelPopup</name>
        <tag-class>com.icesoft.faces.component.panelpopup.PanelPopupTag</tag-class>
        <body-content>JSP</body-content>
        <description>
            <![CDATA[<p>The panelPopup is a container component that renders a window or panel that hovers on
            top of a web page. The popupPanel contains 2 regions which are defined using facets.
            The facet names are; header and body.</p>

            <p>The panelPopup component can be used to provide a general popup window behavior such as moveable/dragable and modal.</p>
            
            <p>When using a <b>modal</b> panelPopup the <b>rendered</b> attribute must always be set to true. Visiblity of a <b>modal</b>
            panelPopup should be controlled using the <b>visible</b> attribute. The panelPopup renderer is responsible for creating and
            removing the modal iframe.             

            <p><b>Note:</b> A panelPopup facet needs a container type component as a child (e.g.,
            panelGroup or panelGrid). panelGroup renders a span tag, which doesn't
            work properly if using Mozilla. panelGrid can be used to avoid display problems.</p> ]]>
        </description>
        <attribute>
            <name>id</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Every component may have an unique id. Automatically created if omitted.</description>
        </attribute>
        <attribute>
            <name>rendered</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>If false, this component will not be rendered. This attribute should always be set to true
            when the panelPopup is modal. Visibility of a modal panelPopup should be controlled using the visible attribute.</description>
        </attribute>
        <attribute>
            <name>binding</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <type>java.lang.String</type>
            <description>Component binding.</description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>
        <attribute><name>style</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>

        <attribute><name>title</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute>
            <name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                <![CDATA[
              <p>The base name for all style classes. Default is icePanelPopup</p>
              <ul>
               <li>icePanelPopupHeader</li>
               <li>icePanelPopupHeaderBody</li>
              </ul>
              ]]>
            </description>
        </attribute>

 <!--       <attribute>
            <name>headerClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the popup header facet.</description>
        </attribute>
        <attribute>
            <name>headerStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the popup header facet.</description>
        </attribute>

        <attribute>
            <name>bodyClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS class to be used for the popup body facet.</description>
        </attribute>
        <attribute>
            <name>bodyStyle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>CSS style to be used for the popup body facet.</description>
        </attribute>-->

<!--
        <attribute>
            <name>resizable</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Used to render a resizable popup.</description>
        </attribute>-->

        <attribute>
            <name>draggable</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Used to render a draggable popup.</description>
        </attribute>

        <attribute>
            <name>visible</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Used to control the visibility of the panelPopup. This attribute should be used to control the display of 
            a modal panelPopup.</description>
        </attribute>

        <attribute>
            <name>modal</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Used to render a modal popup. The rendered attribute of a modal panelPopup must always be set to true.
            The visibility of a modal panelPopup must be controlled using the visible attribute. The panelPopup renderer is
            responsible for the creation and removal of the modal iframe. 
            Note: this will only cover the body of a document. Make sure the document body takes up 100% of the window.
                For example: &lt;html&gt;&lt;body&gt;&lt;div style="height=100%;witdh:100%;"&gt;&lt;div&gt;&lt;/body&gt;&lt;/html&gt;
            </description>
        </attribute>
        <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

    </tag>

<!-- SelectInputText (autoComplete) -->

    <tag>
    <name>selectInputText</name>
    <tag-class>com.icesoft.faces.component.selectinputtext.SelectInputTextTag</tag-class>
        <body-content>JSP</body-content>
        <description><![CDATA[
            <p>The selectInputText component provides an inputText component enhanced with auto-complete functionality.
            As the user enters text into the component it provides a popup list of possible matching values that the
            user may select from. </p>

            <p>The component predicts a word or phrase that a user wants to type in without the user
            actually completely typing it in. The selectInputText component requires developers to implement the
            matching list search algorithm in their backing bean.</p>

            <p>The selectInputText component can generate one of two types of lists:</p>
            <ol>
               <li>A list of String data.</li>
               <li>A list of arbitrarily complex child components.</li>
            </ol>
        ]]>
        </description>
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>action</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  MethodBinding representing the application action to invoke when
                  this component is activated by the user. The expression must
                  evaluate to a public method that takes no parameters, and returns
                  a String (the logical outcome) which is passed to the
                  NavigationHandler for this application.

              </description>
          </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.

          </description>
        </attribute>

        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Flag indicating that, if this component is activated by the user,
            notifications should be delivered to interested listeners and actions
            immediately (that is, during Apply Request Values phase) rather than
            waiting until Invoke Application phase. The extended selectInputText
            component behaves like a commandButton or commandLink in this regard.
            
          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Alternate textual description of the
              element rendered by this component.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>maxlength</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The maximum number of characters that may
              be entered in this field.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The number of characters used to determine
              the width of this field.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          
<![CDATA[          
              <p>Base name for the style classes. Deafult is iceSelInp.</p>
                <ul>
                    <li>iceSelInpText</li>
                    <li>iceSelInpList</li>
                    <li>iceSelInpRow</li>
                    <li>iceSelInpSelRow</li>
                </ul>
                ]]>
          </description>
        </attribute>  
        <attribute>
          <name>listValue</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                The list of selectItem components.

          </description>
        </attribute>
        <attribute>
          <name>listVar</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Name of a request-scope attribute under which the model data for the
              row selected by the current value of the "rowIndex" property (i.e.
              also the current value of the "rowData" property) will be exposed.

          </description>
        </attribute>
        <attribute>
            <name>rows</name>
            <required>false</required>
            <description>
                Limits the number of rows to be matched.
            </description>
        </attribute>

        <attribute>
            <name>width</name>
            <required>false</required>
            <description>
                Sets the width of both, inputText and associated drop down list.
            </description>
        </attribute>        
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>
        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

    </tag>

<!-- inputAutoText (autoComplete) NOT INCLUDED IN THIS RELEASE -->

    <!--   ICE Extended components        -->

      <tag>
        <name>commandButton</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.CommandButtonTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[
          <p>Renders an HTML "input" element.</p>
          <p>Decode Behavior</p>
          <ul>
              <p>Obtain the <code>Map</code> from the "requestParameterMap"
                 property of the <code>ExternalContext</code>.  If the value in the
                <code>Map</code> for the value of the "clientId" property of the
                component is <code>null</code>, create a String by concatenating
                the value of the "clientId" property of the component with the
                String ".x" (without the quotes).  Create another String in the
                same manner, but concatenate ".y" (without the quotes).  If
                <code>null</code> is the value in the <code>Map</code> for both
                Strings, return from <code>decode()</code>.  If the value in the
                <code>Map</code> for the value of the "clientId" property of the
                component is not <code>null</code>, get the value of the "type"
                attribute, and convert it to lower case.  If the result is equal
                to the String "reset" (without the quotes), return from
                <code>decode()</code>.Otherwise, create a
                 <code>javax.faces.event.ActionEvent</code> around the component,
                    and pass it to the <code>queueEvent()</code> method of the
                  component, which must be an instance of
                  <code>UICommand</code>.</p>
          </ul>

          <p>Encode Behavior</p>
          <ul>
            <p>Render the clientId of the component as the value of the
            "name" attribute.  Render the current value of the component as
            the value of the "value" attribute.  If the "styleClass" attribute
            is specified, render its value as the value of the "class"
            attribute.</p></ul>

          <p>Default style class: iceBtn</p>]]>
        </description>
         <attribute>
             <name>partialSubmit</name>
             <required>false</required>
             <rtexprvalue>false</rtexprvalue>
             <description>
                Enable component to perform partial submit.
             </description>
          </attribute>        
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>
          <attribute>
          <name>action</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing the application action to invoke when
              this component is activated by the user.  The expression must
              evaluate to a public method that takes no parameters, and returns
              a String (the logical outcome) which is passed to the
              NavigationHandler for this application.

          </description>
        </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that, if this component is activated by the user,
              notifications should be delivered to interested listeners and actions
              immediately (that is, during Apply Request Values phase) rather than
              waiting until Invoke Application phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Alternate textual description of the
            element rendered by this component.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
          <name>image</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Absolute or relative URL of the image
            to be displayed for this button.  If
            specified, this "input" element will be
            of type "image".  Otherwise, it will be
            of the type specified by the "type"
            property with a label specified by the
            "value" property.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceBtn</b> if enabled and
              <b>iceBtn-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>type</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

             Type of button to create.  Valid values are "submit" and
             "reset".  If not specified, or not a valid value, the default
             value is "submit".

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              If user is in given role, this component will be rendered normally. If not, nothing is
              rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
          <name>effect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              The Javascript Effect
          </description>
        </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>commandLink</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.CommandLinkTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[
              <p>Render an HTML "a" anchor element that acts like a
                form submit button when clicked.</p>

                <p>General Behaviour</p>

                <p>Both the encode and decode behavior require the ability to get
                    the id/name for a hidden field whose value is set by the
                    JavaScript form submit. This name must be constructed as
                    follows:</p><ul><li><p>Get the clientId for the form of which this
                    component is a
                    child.</p></li><li><p>Append
                    <code>NamingContainer.SEPARATOR_CHAR</code>.</p></li><li><p>Append a
                    constant string that is the same for all command
                    link components in the tree.</p></li></ul>

                <p>In the following text, this String is called
                    hiddenFieldName.</p>

                <p>Decode Behavior</p><ul><p>Obtain the "clientId" property of the
                    component. Obtain the
                    <code>Map</code> from the "requestParameterMap" property of the
                    <code>ExternalContext</code>. Derive hiddenFieldName as above.
                    Get the entry in the <code>Map</code> under the key that is the
                    hiddenFieldName. If the there is no entry, or the entry is the
                    empty String, or the entry is not equal to the value of the
                    "clientId" property, return immediately. If there is an entry,
                    and its value is equal to the value of the "clientId" property,
                    create a new <code>javax.faces.event.ActionEvent</code> instance
                    around the component and call <code>queueActionEvent()</code> on
                    the component, passing the event.</p></ul>

                <p>Encode Behavior</p>

                <ul><p>Render "#" as the value of the "href"
                    attribute. Render the current
                    value of the component as the link text if it is specified. Render
                    javascript that is functionally equivalent to the following as the value
                    of the "onclick" attribute:</p>

                    <p><code>
                        document.forms['CLIENT_ID']['hiddenFieldName'].value='CLIENT_ID';
                        document.forms['CLIENT_ID']['PARAM1_NAME'].value='PARAM1_VALUE';
                        document.forms['CLIENT_ID']['PARAM2_NAME'].value='PARAM2_VALUE';
                        return false;</code></p>

                    <p>document.forms['CLIENT_ID'].submit()" where hiddenFieldName is
                        as described above, CLIENT_ID is the clientId of the UICommand
                        component, PARAM*_NAME and PARAM*_VALUE are the names and values,
                        respectively, of any nested UIParameter children. The name and
                        the value must be URLEncoded. If the "styleClass" attribute is
                        specified, render its value as the value of the "class" attribute.
                        Render any non-UIParameter children as normal inside of the "a"
                        element. These will appear as the link text. Allow the form
                        renderer to output a single "input" element (for the entire page,
                        regardless of how many command link components are in the page) of
                        "type" "hidden" whose "name" is the value of hiddenFieldName, and
                        which must not have a "value" attribute. Multiple occurrences of
                        command link components in the tree should not cause multiple
                        hiddenFieldName hidden fields. Allow the form renderer to output
                        an "input" element of "type" "hidden" for each of the nested
                        UIParameter children, taking the name property (but not the value)
                        from each one in turn.</p>
               </ul>
          ]]>
          </description>
         <attribute>
             <name>partialSubmit</name>
             <required>false</required>
             <rtexprvalue>false</rtexprvalue>
             <description>
                Enable component to perform partial submit.
             </description>
          </attribute>
          
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>

          <attribute>
              <name>action</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  MethodBinding representing the application action to invoke when
                  this component is activated by the user. The expression must
                  evaluate to a public method that takes no parameters, and returns
                  a String (the logical outcome) which is passed to the
                  NavigationHandler for this application.

              </description>
          </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that, if this component is activated by the user,
              notifications should be delivered to interested listeners and actions
              immediately (that is, during Apply Request Values phase) rather than
              waiting until Invoke Application phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>charset</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The character encoding of the resource designated
              by this hyperlink.

          </description>
        </attribute>
        <attribute>
          <name>coords</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The position and shape of the hot spot on the screen
              (for use in client-side image maps).

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
        
          </description>
        </attribute>
        <attribute>
          <name>hreflang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The language code of the resource designated
              by this hyperlink.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>rel</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The relationship from the current document
              to the anchor specified by this hyperlink.
              The value of this attribute is a space-separated
              list of link types.

          </description>
        </attribute>
        <attribute>
          <name>rev</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              A reverse link from the anchor specified
              by this hyperlink to the current document.
              The value of this attribute is a space-separated
              list of link types.

          </description>
        </attribute>
        <attribute>
          <name>shape</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The shape of the hot spot on the screen
              (for use in client-side image maps).  Valid
              values are:  default (entire region); rect
              (rectangular region); circle (circular region);
              and poly (polygonal region).

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceLink</b> if enabled and
              <b>iceLink-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>target</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Name of a frame where the resource
              retrieved via this hyperlink is to
              be displayed.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>type</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The content type of the resource designated
              by this hyperlink.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>
         <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
      </tag>
      <tag>
        <name>dataTable</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.DataTableTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[
                   <p>Renders an HTML "table" element compliant with the HTML 401
                specification. Please consult the javadoc for <code>UIData</code>
                to supplement this specification. If the "styleClass" attribute
                is specified, render its value as the value of the "class"
                attribute on the "table" element. Any pass-through attributes are
                also rendered on the "table" element. </p>

            <p>Rendering the header</p><ul><p>If the <code>UIData</code> component has a
                "header" facet, or
                any of the child <code>UIColumn</code> components has a "header"
                facet, render a "thead" element. If the <code>UIData</code>
                component has a "header" facet, encode its contents inside of "tr"
                and "th" elements, respectively. Output the value of the
                "headerClass" attribute of the <code>UIData</code> component, if
                present, as the value of the "class" attribute on the "th".
                Output the number of child <code>UIColumn</code> components of the
                <code>UIData</code> component as the value of the "colspan"
                attribute on the "th". Output "colgroup" as the value of the
                "scope" attribute on the "th" element. </p>

                <p>If any of the child <code>UIColumn</code> components has a
                    "header" facet render a "tr" element. For each
                    <code>UIColumn</code> that actually has a "header" facet, render
                    it inside of a "th" element. Columns that don't have a "header"
                    facet cause an empty "th" element to be rendered. Output the
                    value of the "headerClass" attribute of the <code>UIData</code>
                    component, if present, as the value of the "class" attribute on
                    the "th". Output "col" as the value of the "colgroup" attribute
                    on the "th" element.
                </p>

                <p>Close out the "thead" element.</p></ul>

            <p>Rendering the footer</p><ul><p>Follow the same process as for the header,
                except replace
                "header" with "footer", "th" with "td", "thead" with "tfoot", and
                "headerClass" with "footerClass". Do not render any "scope"
                attribute for the footer.</p></ul>

            <p>Rendering the table body</p><ul><p>Render a "tbody" element. Keep track
                of the result of the
                "rows" property on the <code>UIData</code> component. Keep track
                of the number of rows we have rendered so far. Iterate through
                the rows. Set the "rowIndex" property of the <code>UIData</code>
                component to be correct as we iterate through the rows. Stop
                rendering children and close out the "tbody" element if the
                "rowAvailable" property of the <code>UIData</code> returned false.
                Output a "tr" element. Output the value of the "rowClasses" per
                the attribute description below. For each <code>UIColumn</code>
                child, output a "td" element, attaching the value of the
                "columnClasses" attribute of the <code>UIData</code> component per
                the attribute description below. Recursively encode each child of
                each <code>UIColumn</code> child. Close out the "td" element.
                When done with the row, close out the "tr" element. When done
                with all the rows, close out the "tbody" element.</p></ul>

            <p>When done rendering all the rows, set the "rowIndex" property of
                the <code>UIData</code> to -1, and close out the "table"
                element.</p>
                

         ]]>
        </description>
        <attribute>
          <name>sortColumn</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Sets column to be sort, required for sortheader component

          </description>
        </attribute>
        <attribute>
          <name>sortAscending</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Sets default sort order, required for sortheader component

          </description>
        </attribute>

        <attribute>
          <name>first</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Zero-relative row number of the first row to be displayed.  If this
              property is set to zero, rendering will begin with the first row of
              the underlying data.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>rows</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The number of rows to display, starting with the one identified by the
              "first" property.  If this value is set to zero, all available rows in
              the underlying data model will be displayed.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Name of a request-scope attribute under which the model data for the
              row selected by the current value of the "rowIndex" property (i.e.
              also the current value of the "rowData" property) will be exposed.

          </description>
        </attribute>
        <attribute>
          <name>bgcolor</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Name or code of the background color for this table.

          </description>
        </attribute>
        <attribute>
          <name>border</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width (in pixels) of the border to be drawn
              around this table.

          </description>
        </attribute>
        <attribute>
          <name>cellpadding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Definition of how much space the user agent should
              leave between the border of each cell and its contents.

          </description>
        </attribute>
        <attribute>
          <name>cellspacing</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Definition of how much space the user agent should
              leave between the left side of the table and the
              leftmost column, the top of the table and the top of
              the top side of the topmost row, and so on for the
              right and bottom of the table.  It also specifies
              the amount of space to leave between cells.

          </description>
        </attribute>
        <attribute>
          <name>columnClasses</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Comma-delimited list of CSS style classes that will be applied
              to the columns of this table.  A space separated list of
              classes may also be specified for any individual column.  If
              the number of elements in this list is less than the number of
              columns specified in the "columns" attribute, no "class"
              attribute is output for each column greater than the number of
              elements in the list.  If the number of elements in the list
              is greater than the number of columns specified in the
              "columns" attribute, the elements at the posisiton in the list
              after the value of the "columns" attribute are ignored.<br/>
              
              The default classes rendered as <b>column1, column2, column3 ... </b>
              with incremental index.
           </p>
            ]]>
          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>footerClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Space-separated list of CSS style class(es) that will be
              applied to any footer generated for this table.<br/>
              
              The default classe rendered as <b>iceTblFooter</b>.
           </p>
            ]]>
          </description>
        </attribute>
        <attribute>
          <name>frame</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code specifying which sides of the frame surrounding
              this table will be visible.  Valid values are:
              none (no sides, default value); above (top side only);
              below (bottom side only); hsides (top and bottom sides
              only); vsides (right and left sides only); lhs (left
              hand side only); rhs (right hand side only); box
              (all four sides); and border (all four sides).

          </description>
        </attribute>
        <attribute>
          <name>headerClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Space-separated list of CSS style class(es) that will be
              applied to any header generated for this table.<br/>
              The default classe rendered as <b>iceTblHeader</b>.
           </p>
            ]]>
          </description>
        </attribute>
     <attribute>
          <name>headerClasses</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
           This attribute can be used to define the separate style classes for the each 
           header of the each column.<br/>
           The default classes rendered as <b>header1, header2, header3 ... </b>
           with incremental index.
           </p>
            ]]>
          </description>
        </attribute>            
        
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>rowClasses</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Comma-delimited list of CSS style classes that will be applied
              to the rows of this table.  A space separated list of classes
              may also be specified for any individual row.  Thes styles are
              applied, in turn, to each row in the table.  For example, if
              the list has two elements, the first style class in the list
              is applied to the first row, the second to the second row, the
              first to the third row, the second to the fourth row, etc.  In
              other words, we keep iterating through the list until we reach
              the end, and then we start at the beginning again.<br/>
              
              
              The default classes rendered as <b>iceTblRow1, iceTblRow2</b>
              alternatively.
           </p>
            ]]>
          </description>
        </attribute>
        <attribute>
          <name>rules</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code specifying which rules will appear between cells
              within this table.  Valid values are:  none (no rules,
              default value); groups (between row groups); rows
              (between rows only); cols (between columns only); and
              all (between all rows and columns).

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.<br/>

              the default class rendered as <b>iceDataTblOutline</b>
           </p>
            ]]>           
          </description>
        </attribute>
        <attribute>
          <name>summary</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Summary of this table's purpose and structure, for
              user agents rendering to non-visual media such as
              speech and Braille.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>width</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width of the entire table, for visual user agents.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
          <name>scrollable</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    When true the table body will be scrollable with the headers still visiable. (Note: you will also need to set columnWidths, and scrollHeight)
          </description>
        </attribute>
          <attribute>
            <name>columnWidths</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>

Used in scrollable tables to define an absoule witdh for each colum. The width can be a percentage or a fixed pixal width.
List values for each visiable column comma speerated.
EG. 100px,200px,150px
            </description>
          </attribute>
          <attribute>
            <name>scrollHeight</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>

Used in scrollable tables to define the displayed height of the table. Can be in pixels or percent. 200px or 50%.
            </description>
          </attribute>
      </tag>
      <tag>
        <name>form</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.FormTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[
          <p>Renders an HTML "form" element.</p>

            <p>Decode Behavior</p><ul><p>Obtain the <code>Map</code> from the
                "requestParameterMap"
                property of the <code>ExternalContext</code>. If the map contains
                an entry for the "clientId" of this <code>UIForm</code> component,
                call <code>setSubmitted(true)</code> on the form, otherwise call
                <code>setSubmitted(false)</code> on the form.</p></ul>

            <p>Encode Behavior</p>

            <ul><p>The value of the "method" attribute must be
                "post". The value
                of the "action" attribute must be the result of passing the view
                identifier of the current view to the <code>getActionURL()</code>
                method of the <code>ViewHandler</code> for this application,
                then passing that String to the <code>encodeActionURL()</code>
                method on the <code>ExternalContext</code>. If the "styleClass"
                attribute is specified, render its value as the value of the
                "class" attribute. Render all the necessary hidden fields for all
                commandLink instances in the page just before the close of the
                "form" element.</p>
            </ul>

          ]]>
        </description>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>accept</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            List of content types that a server processing this form
            will handle correctly

          </description>
        </attribute>
        <attribute>
          <name>acceptcharset</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            List of character encodings for input data
            that are accepted by the server processing
            this form.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>enctype</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Content type used to submit the form to the server.  If not
            specified, the default value is
            "application/x-www-form-urlencoded".

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onreset</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Javascript code executed when this form is reset.

          </description>
        </attribute>
        <attribute>
          <name>onsubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Javascript code executed when this form is submitted.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[
          <p>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.
              <br/> The default class would be rendered as <b>iceForm</b>
          </p>]]>
        

          </description>
        </attribute>
        <attribute>
          <name>target</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Name of a frame where the response
            retrieved after this form submit is to
            be displayed.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>        
      </tag>
      <tag>
        <name>inputText</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.InputTextTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[
               <p>Renders an HTML "input" element of "type" "text".</p>

                <p><a name="decode">Decode Behavior</a></p>

                <ul><p>Obtain the <code>
                    Map</code> from the "requestParameterMap"
                    property of the <code>ExternalContext</code>. If the
                    <code>Map</code> contains an entry for the "clientId" of the
                    component, pass the value of the entry to the
                    <code>setSubmittedValue()</code> method of the component, which
                    must be an instance of <code>EditableValueHolder</code>.</p></ul>

                    <p>Encode Behavior</p><ul><p> Render the clientId of the component as
                        the value of the "name" attribute. Render the current value of
                        the component as the value of the "value" attribute. If the
                        "styleClass" attribute is specified, render its value as the value
                        of the "class" attribute.
                    </p>
                </ul>
          ]]>
          </description>

          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>action</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  MethodBinding representing the application action to invoke when
                  this component is activated by the user. The expression must
                  evaluate to a public method that takes no parameters, and returns
                  a String (the logical outcome) which is passed to the
                  NavigationHandler for this application.

              </description>
          </attribute>
        <attribute>
          <name>actionListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing an action listener method that will be
              notified when this component is activated by the user.  The
              expression must evaluate to a public method that takes an
              ActionEvent parameter, with a return type of void.

          </description>
        </attribute>

        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Flag indicating that, if this component is activated by the user,
            notifications should be delivered to interested listeners and actions
            immediately (that is, during Apply Request Values phase) rather than
            waiting until Invoke Application phase. The extended inputText component
            behaves like a commandButton or commandLink in this regard and not like
            the standard inputText component.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Alternate textual description of the
              element rendered by this component.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>maxlength</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The maximum number of characters that may
              be entered in this field.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The number of characters used to determine
              the width of this field.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceInputtext</b> if enabled and
              <b>iceInputtext-dis</b> if disabled.
              ]]>

          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>
        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
      </tag>
      <tag>
        <name>inputTextarea</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.InputTextareaTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[
              <p>Renders an HTML "textarea" element.</p>
              <p>Decode Behavior</p>

              <ul><p>See the encode description for the <a href="javax.faces.Inputjavax.faces.Text.html#encode">Input
                Text</a> renderer.</p>
              </ul>
              <p>Encode Behavior</p>
              <ul><p>Render the clientId as the value of the "name" attribute.  Render the current
                    value of the component inside the "textarea"
                    element.</p>
              </ul>]]>
          </description>

          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>cols</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            The number of columns to be displayed.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>rows</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            The number of rows to be displayed.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceTextarea</b> if enabled and
              <b>iceTextarea-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
      </tag>
      <tag>
        <name>panelGrid</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.PanelGridTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[
          <p>Renders an HTML "table" element, conforming to the
          rules in the HTML 401 specification.</p>

     <p>If the "styleClass" attribute is specified, render its value as the value of the
          "class" attribute.
     <p>Render the pass-through attributes in the table below.</p>

     <p>Render the "header" facet, if present, inside of
          "thead", "tr", and "th" elements, nested in that order.  If the
          "headerClass" attribute is specified, render its value as the value
          of the "class" attribute on the "th" element.</p>
    <p>Render "colgroup"
          as the value of the "scope" attribute.</p>
    <p>Render the value of the
          "columns" attribute as the value of the "colspan" attribute on the
          "th" element.</p>
    <p>Render the "footer" facet if present, using similar
          logic to the rendering of the "header", but replacing "thead" with
          "tfoot", "th" with "td", and "headerClass" with "footerClass".</p>
    <p>Render the children of the <code>UIPanel</code> component inside
          of a "tbody" element.  Render the children based on the value of
          the "columns" attribute, creating a new row each time a "columns"
          worth of children have been rendered.  Each child is rendered
          inside of a "td" element.  If a child has "rendered==false" it is
          not rendered, and the column counter must not be incremented.</p>
          ]]>
        </description>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>bgcolor</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Name or code of the background color for this table.

          </description>
        </attribute>
        <attribute>
          <name>border</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width (in pixels) of the border to be drawn
              around this table.

          </description>
        </attribute>
        <attribute>
          <name>cellpadding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Definition of how much space the user agent should
              leave between the border of each cell and its contents.

          </description>
        </attribute>
        <attribute>
          <name>cellspacing</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             <![CDATA[
              <p>Definition of how much space the user agent should
              leave between the left side of the table and the
              leftmost column, the top of the table and the top of
              the top side of the topmost row, and so on for the
              right and bottom of the table.  It also specifies
              the amount of space to leave between cells.</p>
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>columnClasses</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[
              <p>Comma-delimited list of CSS style classes that will be applied
              to the columns of this table.  A space separated list of
              classes may also be specified for any individual column.</p>

              <p>If the number of elements in this list is less than the number of
              columns specified in the "columns" attribute, no "class"
              attribute is output for each column greater than the number of
              elements in the list.</p>

              <p>If the number of elements in the list
              is greater than the number of columns specified in the
              "columns" attribute, the elements at the posisiton in the list
              after the value of the "columns" attribute are ignored.</p>
              
              <p>
                The default column classes would be rendered as :
                <b>icePnlGrdColumn1, icePnlGrdColumn2, icePnlGrdColumn3, .... </b>
              </p>
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>columns</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            The number of columns to render before
            starting a new row.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>footerClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[<p>
              Space-separated list of CSS style class(es) that will be
              applied to any footer generated for this table.
                
              The default footer class would be rendered as <b>icePnlGrdFooter</b>.
            </p>]]>
          </description>
        </attribute>
        <attribute>
          <name>frame</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[
              <p>Code specifying which sides of the frame surrounding
              this table will be visible.  Valid values are:</p>
              <ul>
                  <li>none (no sides, default value).</li>
                  <li>above (top side only).</li>
                  <li>below (bottom side only).</li>
                  <li>hsides (top and bottom sides only).</li>
                  <li>vsides (right and left sides only).</li>
                  <li>lhs (left hand side only).</li>
                  <li>rhs (right hand side only).</li>
                  <li>box (all four sides).</li>
                  <li>border (all four sides).</li>
              </ul>
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>headerClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[<p>
              Space-separated list of CSS style class(es) that will be
              applied to any header generated for this table.

              The default header class would be rendered as <b>icePnlGrdHeader</b>.
            </p>]]>
          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>rowClasses</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
          <![CDATA[<p>          
              Comma-delimited list of CSS style classes that will be applied
              to the rows of this table.  A space separated list of classes
              may also be specified for any individual row.  Thes styles are
              applied, in turn, to each row in the table.  For example, if
              the list has two elements, the first style class in the list
              is applied to the first row, the second to the second row, the
              first to the third row, the second to the fourth row, etc.  In
              other words, we keep iterating through the list until we reach
              the end, and then we start at the beginning again.

              The default classes rendered as <b>icePnlGrdRow1, icePnlGrdRow2</b>
              alternatively.
           </p>]]>
          </description>
        </attribute>
        <attribute>
          <name>rules</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code specifying which rules will appear between cells
              within this table.  Valid values are:  none (no rules,
              default value); groups (between row groups); rows
              (between rows only); cols (between columns only); and
              all (between all rows and columns).

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.

          </description>
        </attribute>
        <attribute>
          <name>summary</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Summary of this table's purpose and structure, for
              user agents rendering to non-visual media such as
              speech and Braille.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>width</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width of the entire table, for visual user agents.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
      </tag>
      <tag>
        <name>panelGroup</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.PanelGroupTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>The panelGroup component is intended for use in situations when only one UIComponent child can
          be nested, such as in the case of facets. The panelGroup component renders a "div" element around it's child
          components, outputting the value of the "style" attribute as the value of the "style" attribute, and the
          value of the "styleClass" attribute as the value of the "class" attribute.</p>
          <p>The panelGroup can also provide Drag & Drop functionality to it's child components. See the Drag & Drop
          documentation details.</p>
          <p>The panelGroup component can also be used to apply a single Effect (Fade, Show, etc.) to a set of
          child-components by adding the components to the panelGroup and specifying the effect on the panelGroup
          "effect" attribute.</p> ]]>
        </description>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" property on generated markup.

          </description>
        </attribute>
        <attribute>
          <name>scrollWidth</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width for scrollable panel.

          </description>
        </attribute>
        <attribute>
          <name>scrollHeight</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Height for scrollable panel

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
                If user is in given role, this component will be rendered normally.
    If not, nothing is rendered and the body of this tag will be skipped.
          </description>
        </attribute>


          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>

          <attribute>
            <name>visible</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 <![CDATA[
                <p>Used to render the visibilty style attribute on the root element.</p>
                <p>visible values: true || false.</p>
                <p><b>Note:</b> If the visible is not defined the default is visible.</p>
                ]]>
            </description>
          </attribute>

          <attribute>
            <name>draggable</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                <![CDATA[
                <p>When set to 'true' this panel is draggable. The user will be able to drag the
                panel to any position on the page.</p>
                <p><b>Note:</b> all Draggable panels must be contained in a form.</p>
                ]]>
            </description>
          </attribute>

          <attribute>
              <name>dragOptions</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  <![CDATA[
                  <p>Optional effects for draggable panels. List in a coma seperated string.
                    (revert,ghosting,solid,dragGhost)</p>
                  <ul>
                       <li>revert - When a draggable is dropped the draggable will move back to it's
                           starting position.</li>
                       <li>ghosting - When a draggable is dragged a ghost copy is left in the original position.</li>
                       <li>solid - Do not make transparent when dragging.</li>
                       <li>dragGhost - Drag a ghost copy of the group panel. Hide the ghost copy when dropped (Do not use with any other dragOption)</li>
                  </ul>
                  ]]>
              </description>
          </attribute>
          <attribute>
            <name>dragValue</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 The drag value of this panel. For use in DnDEvents. This value can be a string or a value binding expression.
            </description>
          </attribute>

          <attribute>                             
            <name>dragListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The dragListener specifies a method on a backing bean that will accept DnDEvents. This value must be a
                method binding expression.
            </description>
          </attribute>
          <attribute>
            <name>dragMask</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                <![CDATA[
                <p>Drag mask is used to prevent drag events from propagating to the server. For example if your backing bean
                is not interested in HOVER_START events then adding hover_start to the mask will stop the event from being sent.
                Multiple values are specified in a comma separated list.</p>
                <p>Possible values are. dragging, drag_cancel,dropped,hover_start,hover_end</p>
                ]]>
            </description>
          </attribute>

          <attribute>
            <name>dropTarget</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                <![CDATA[
                <p>When set to true this panel is a dropTarget for draggable panels. Drop targets detect when
                a draggable has been dropped on a specific region of the page.</p>
                <p><b>Note:</b> all Drop Target panels must be contained in a form.</p>
                ]]>
            </description>
          </attribute>

          <attribute>
            <name>dropValue</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 The drop value of this panel, for use in DnDEvents. This value can be a string or a value binding expression.
            </description>
          </attribute>

          <attribute>
            <name>dropListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The dropListener specifies a method on a backing bean that will accept DnDEvents. This value must be a
                method binding expression. This method will be called when a droppable is dropped or hovered on this panel
                unless masked.
            </description>
          </attribute>

          <attribute>
            <name>dropMask</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                <![CDATA[
                <p>Drop mask is used to prevent drop events from propagating to the server. For example if your backing bean
                is not interested in HOVER_START events then adding hover_start to the mask will stop the event from being sent.
                Multiple values are specified in a comma separated list.</p>
                <p>Possible values are. dropped,hover_start</p>
                ]]>
            </description>
          </attribute>

          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                 Effect for this panel
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

          <attribute>
                      <name>hoverclass</name>
                      <required>false</required>
                      <rtexprvalue>false</rtexprvalue>
                      <description>
                          <![CDATA[
                          <p>When a draggable is hovering over a drop target set the drop target class to be this value.</p>
                          ]]>
                      </description>
                    </attribute>

      </tag>

      <tag>
        <name>selectBooleanCheckbox</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectBooleanCheckboxTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders an HTML "input" element of type "checkbox".</p><p>Decode Behavior</p><ul><p>Obtain the <code>Map</code> from the "requestParameterMap"
          property of the <code>ExternalContext</code>.  If there is no
          entry in the <code>Map</code> for the "clientId" of this
          component, pass "false" to the <code>setSubmittedValue()</code>
          method of the component, which must be an instance of
          <code>EditableValueHolder</code>.  If there is an entry, and its
          value is equal, ignoring case and without quotes, to any of the
          Strings: "on", "yes" or "true" pass true to the
          <code>setSubmittedValue()</code> method of the component.</p></ul><p>Encode Behavior</p><ul><p>
          Render the clientId of the component as the value of the "name"
          attribute.  If the current value of the component is "true",
          output the "checked" attribute.  If the "styleClass" attribute is
          specified, render its value as the value of the "class"
          attribute.</p></ul>]]>
        </description>
        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default is <b>iceBooleanCheckbox</b> if enabled and
              <b>iceBooleanCheckbox-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>        
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>
        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
      </tag>
      <tag>
        <name>selectManyCheckbox</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectManyCheckboxTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[<p>Render an HTML checkbox list.</p><p><a name="decode">Decode Behavior</a></p><ul><p>See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#decodeMany">"Decode
          Behavior for UISelectMany Components"</a> section.</p></ul><p>Encode Behavior</p><ul><p>Render a "table" element.  If the "styleClass" is specified, render the 
          value of the "styleClass" attribute as the value of the "class" attribute 
          on the "table" element. If the "style", "border" attributes are specified,
          pass them thru.  If the "layout" attribute is specified, and its
          value is "pageDirection", render the children elements vertically,
          otherwise horizontally, in the table.  If any of the children are
          an instance of SelectItemGroup, render them as a nested table.
          Each of the children are ultimately rendered as follows.  Render
          a "label" element. Inside of the "label", render an "input" element
          of "type" "checkbox" for each child component.  As an exception to
          the general rules about how to handle the "id" attribute, render it
          as an attribute on the outer "table" element, the value of which is the 
          <code>clientId</code> of the component per the rules at the beginning 
          of this specification.The "id" attribute must not be output on each "input" 
          element. The value of the current SelectItem is rendered as the value of
          the "value" attribute.  If the value of the enclosing UISelectMany
          matches the current value, render "checked" as the value of the
          "checked" attribute.  If the current SelectItem.isDisabled()
          returns true, render "disabled" as the value of the "disabled"
          attribute.  Close out the "input" element and render the return
          value from SelectItem.getLabel().  Close out the "label" element
          and any other nested elements.  See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#options">"Rendering
          the option elements" </a> specification for
          <code>ListboxRenderer</code> for more detail on how to render the
          "option" elements in this renderer.</p></ul>]]>
          </description>
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>border</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width (in pixels) of the border to be drawn
              around the table containing the options list.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>layout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Orientation of the options list to be created.
              Valid values are "pageDirection" (list is laid
              out vertically), or "lineDirection" (list is
              laid out horizontally).  If not specified, the
              default value is "lineDirection".

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceCheckbox</b> if enabled and
              <b>iceCheckbox-dis</b> if disabled.
              ]]>

          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>
      </tag>
      <tag>
        <name>selectManyListbox</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectManyListboxTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[<p>Render an HTML option list.</p><p>Decode Behavior</p><p>This section documents the decode behavior for all renderers
          that handle <code>UISelectMany</code> or <code>UISelectOne</code>
          components.</p><ul><p><a name="decodeMany">Decode Behavior for
          <code>UISelectMany</code> components</a></p><ul><p>Obtain the <code>Map</code> from the
            "requestParameterValuesMap" property of the
            <code>ExternalContext</code>.  If the <code>Map</code> contains
            an entry for the "clientId" of the component, pass the value of
            the entry, cast to a <code>String []</code>, to the
            <code>setSubmittedValue()</code> method of the component, which
            must be an <code>EditableValueHolder</code>.  If the
            <code>Map</code> does not contain an entry, create an empty
            <code>String</code> array and call
            <code>setSubmittedValue()</code> with it.</p></ul><p><a name="decodeOne">Decode Behavior for
          <code>UISelectOne</code> components</a></p><ul><p>Obtain the <code>Map</code> from the "requestParameterMap"
          property of the <code>ExternalContext</code>.  If there is a
          <code>Map</code> entry for the "clientId" property of the
          component, pass it to the <code>setSubmittedValue()</code> method
          of the component.</p></ul><p>Encode Behavior</p><ul><p>Render an HTML "select" element. Render the clientId of
          the component as the value of the "name" attribute.  If the "styleClass" 
          attribute is specified, render its value as the value of the "class" 
          attribute on the "select" element.  If the component is a 
          <code>UISelectMany</code> instance, render "multiple" as the value of the 
          "multiple" attribute.  If the "size" attribute is specified, render its 
          value as the value of the "size" attribute.  Otherwise use the number of 
          items as the value of the "size" attribute.</p></ul><p><a name="option">Rendering the "option" elements</a></p><ul><p>The only valid children of this component are
          <code>UISelectItem</code> or <code>UISelectItems</code> instances.
          Iterate over the children of this component, and accrue a list of
          <code>javax.faces.model.SelectItem</code> instances.  If the
          current child is a <code>UISelectItem</code> create a
          <code>SelectItem</code>instance from its <code>itemValue,
          itemLabel</code> and <code>itemDescription</code> properties, add
          it to the list.  If the current child is a
          <code>UISelectItems</code> instance, call its
          <code>getValue()</code> method.  If the result is a
          <code>SelectItem</code> bean, add it to the list.  If the result
          is an array of <code>SelectItem</code> beans, add each one t othe
          list.  If the result is a <code>Collection</code> of
          <code>SelectItem</code> beans, add each one to the list.  If the
          result isa <code>Map</code>, create a <code>SelectItem</code> bean
          for each entry in the <code>Map</code> using the key as the label,
          the value as the value, and <code>null</code> as the description.
          Iterate over the list of <code>SelectItem</code> beans.  If the
          current element is a <code>SelectItemGroup</code>, render an
          "optgroup" element with a "label" attribute, the value of which is
          the "label" property from the current element, then call
          <code>getSelectItems()</code> and render each element as below.
          If the current element is not a <code>SelectItemGroup</code>,
          render an "option" element.  Follow the conversion rules in the
          spec to obtain a renderable <code>String</code> from the "value"
          property of the current element, render that as the value of the
          "value" atribute.  Now it is time to see if the current element is
          the selected value.  call its
          <code>getSubmittedValue()</code> method, casting the result to an
          <code>Object []</code>, otherwise the component must be a
          <code>UISelectOne</code> instance, call its
          <code>getSubmittedValue()</code> method and create an <code>Object
          []</code> around the result.  If the resultant array is non-null,
          we look in the array for a value that, when we pass the renderable
          value to its <code>equals()</code> method, it returns
          <code>true</code>, meaning the current element is selected.  If
          the resultant array is <code>null</code>, if the component is a
          <code>UISelectMany</code>, call its <code>getValue()</code>
          method.  If the result is a <code>List</code> obtain the values in
          the list as an array.  Otherwise, the component must be a
          <code>UISelectOne</code> instance.  Call its
          <code>getValue()</code> method, which must be an Object array.
          Look for an element in the resultant array that, 1. when we pass
          the renderable value to its <code>equals()</code> method, it
          returns <code>true</code> , or 2. if the renderable value is null,
          and there is a null element in the array, also conclude that the
          current element is selected.  Otherwise the current element is not
          selected.  Now, if the current value is selected, write out an
          HTML boolean property "selected".  If the current
          SelectItem.isDisabled() returns true, render "disabled" as the
          value of the "disabled" attribute.</p></ul></ul>]]>
          </description>
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
          <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>

        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Number of available options to be shown at all times.
            If not specified, all available options are shown.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default is <b>iceSelect</b> if enabled and
              <b>iceSelect-dis</b> if disabled.
              ]]>

          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>selectManyMenu</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectManyMenuTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Render an HTML option list.</p><p><a name="decode">Decode Behavior</a></p><ul><p>See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#decodeMany">"Decode
          Behavior for UISelectMany Components"</a> section.</p></ul><p>Encode Behavior</p><ul><p>Render an HTML "select" element.  Render the clientId of
          the component as the value of the "name" attribute.  If the "styleClass" 
          attribute is specified, render its value as the value of the "class" 
          attribute on the "select" element. If the component
          to be rendered is a UISelectMany, render "true" as the value of
          the "multiple" attribute.  Render "1" as the value of the "size"
          attribute.  See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#options">"Rendering the option
          elements" </a> specification for <code>ListboxRenderer</code> for
          more detail on how to render the "option" elements in this
          renderer.</p></ul>]]>
        </description>
    <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
         </attribute>        
        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default is <b>iceSelect</b> if enabled and
              <b>iceSelect-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>selectOneListbox</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectOneListboxTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[<p>Render an HTML option list.</p><p><a name="decode">Decode Behavior</a></p><ul><p>See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#decodeOne">"Decode
          Behavior for UISelectOne Components"</a> section.</p></ul><p>Encode Behavior</p><ul><p>Render an HTML "select" element.  Render the clientId of
          the component as the value of the "name" attribute.  If the "styleClass" 
          attribute is specified, render its value as the value of the "class" 
          attribute on the "select" element. If the component
          to be rendered is a UISelectMany, render "true" as the value of
          the "multiple" attribute.  If the "size" attribute is specified,
          render its value as the value of the "size" attribute.  Otherwise
          use the number of items as the value of the "size" attribute.  See
          the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#options">"Rendering the option
          elements" </a> specification for <code>ListboxRenderer</code> for
          more detail on how to render the "option" elements in this
          renderer.</p></ul>]]>
          </description>
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
          <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Number of available options to be shown at all times.
            If not specified, all available options are shown.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default is <b>iceSelect</b> if enabled and
              <b>iceSelect-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>selectOneMenu</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectOneMenuTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[<p>Render an HTML option list.</p><p><a name="decode">Decode Behavior</a></p><ul><p>See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#decodeOne">"Decode
          Behavior for UISelectOne Components"</a> section.</p></ul><p>Encode Behavior</p><ul><p>Render an HTML "select" element.  Render the clientId of the
          component as the value of the "name" attribute.  If the
          "styleClass" attribute is specified, render its value as the value
          of the "class" attribute on the "select" element. If the component
          to be rendered is a UISelectMany, render "true" as the value of
          the "multiple" attribute.  Use the number of items as the value of
          the "size" attribute.  See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#options">"Rendering
          the option elements" </a> specification for
          <code>ListboxRenderer</code> for more detail on how to render the
          "option" elements in this renderer.</p></ul>]]>
          </description>

          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
          <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            <![CDATA[ 
              The base name for all style classes. Default is <b>iceSelect</b> if enabled and
              <b>iceSelect-dis</b> if disabled.
              ]]>

          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>selectOneRadio</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.SelectOneRadioTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[<p>Render a set of html "input" elements of type
          "radio".</p><p><a name="decode">Decode Behavior</a></p><ul><p>See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#decodeOne">"Decode
          Behavior for UISelectOne Components"</a> section.</p></ul><p>Encode Behavior</p><ul><p>Render a "table" element. If the "styleClass" is specified, render the 
          value of the "styleClass" attribute as the value of the "class" attribute 
          on the "table" element. If the "style", "border" attributes are specified,
          pass them thru. If the "layout" attribute is specified, and its
          value is "pageDirection", render the children elements
          vertically, otherwise horizontally, in the table.  If any of the
          children are an instance of SelectItemGroup, render them as a
          nested table.  Render a "label" element.  Each of the children are
          ultimately rendered as an "input" element of "type" "radio". As an
          exception to the general rules about how to handle the "id" attribute, 
          render it as an attribute on the outer "table" element, the value of which 
          is the <code>clientId</code> of the component per the rules at the 
          beginning  of this specification.  The "id" attribute must not be
          output on each "input" element.  Output the value of the "label"
          attribute of the <code>SelectItem</code> after the "input"
          element.  If the value of the currently rendered child is equal to
          the value of the parent UISelectOne, render an appropriate HTML
          boolean value indicating "checked" for the enclosing "input".  If
          the current SelectItem.isDisabled() returns true, render
          "disabled" as the value of the "disabled" attribute.  See the <a href="javax.faces.SelectManyjavax.faces.Listbox.html#options">"Rendering the option
          elements" </a> specification for <code>ListboxRenderer</code> for
          more detail on how to render the "option" elements in this
          renderer.  Close out the "label" element. </p></ul>]]>
          </description>

          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>converter</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  Converter instance registered with this component.

              </description>
          </attribute>
          <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>border</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Width (in pixels) of the border to be drawn
              around the table containing the options list.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                          If user is in given role, this component will be rendered normally. If not, no hyperlink is
                          rendered but all nested tags (=body) are rendered.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>layout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Orientation of the options list to be created.
              Valid values are "pageDirection" (list is laid
              out vertically), or "lineDirection" (list is
              laid out horizontally).  If not specified, the
              default value is "lineDirection".

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default is <b>iceRadioBtn</b> if enabled and
              <b>iceRadioBtn-dis</b> if disabled.
              ]]>


          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>        
      </tag>
      <tag>
        <name>column</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.UIColumnTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders a UIComponent that represents a single column of data within a parent <code>UIData</code> component.</p>]]>
        </description>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.
          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <type>java.lang.String</type>
          <description>
            The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <type>java.lang.String</type>
          <description>
            The component identifier for the associated component
          </description>
        </attribute>
      </tag>


      <tag>
        <name>graphicImage</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.GraphicImageTag</tag-class>
        <body-content>JSP</body-content>
          <description>
              <![CDATA[Renders an HTML "img" element.  Render the clientId
          as the value of the "id" attribute.  Render the value of the
          component as the value of the "src" attribute, after passing it
          to the <code>getResourceUR()</code> method of the <code>ViewHandler</code>
          for this application, and passing the result
          through the <code>encodeResourceURL()</code> method of the
          <code>ExternalContext</code>.  If present, render the value of the
          alt attribute as the value of the "alt" attribute.  If the
          "styleClass" attribute is specified, render its value as the value
          of the "class" attribute.]]>
          </description>

          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>id</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  The component identifier for this component. This value must be
                  unique within the closest parent component that is a naming
                  container.

              </description>
          </attribute>
          <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>url</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Context-relative URL to retrieve the resource associated with
              this component.  This is an alias for the "value" property.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Alternate textual description of the
            element rendered by this component.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>height</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Override for the height of this image.

          </description>
        </attribute>
        <attribute>
          <name>ismap</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Flag indicating that this image is to be
            used as a server side image map.  Such an image
            must be enclosed within a hyperlink ("a").

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>longdesc</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            URI to a long description of the image
            represented by this element.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              <![CDATA[<p>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.<br/>
              
              The default class rendered as <b>iceGphImg</b>
              
              </p>
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>usemap</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            The name of a client side image map (an HTML "map"
            element) for which this element provides the image.

          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                            If user is in given role, this component will be rendered normally. If not, nothing is
                            rendered and the body of this tag will be skipped.

          </description>
        </attribute>
        <attribute>
          <name>width</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Override for the width of this image.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


      </tag>
      <tag>
        <name>inputHidden</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.InputHiddenTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders an HTML "input" element of type
          "hidden".</p><p>Decode Behavior</p><ul><p>See the decode description for the <a href="javax.faces.Inputjavax.faces.Text.html#encode">Input
          Text</a> renderer.</p></ul><p>Encode Behavior</p><ul><p>Render the clientId of the component as the value of the
          "name" attribute.  Render the current value of the component as
          the value of the "value" attribute.</p></ul>]]>
        </description>
        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component's value must be
              converted and validated immediately (that is, during
              Apply Request Values phase), rather than waiting
              until Process Validations phase.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
      </tag>
      <tag>
        <name>inputSecret</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.InputSecretTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders an HTML "input" element of "type" "password".</p><p>Decode Behavior</p><ul><p>See the decode description for the <a href="javax.faces.Inputjavax.faces.Text.html#encode">Input
          Text</a> renderer.</p></ul><p>Encode Behavior</p><ul><p>
          Render the clientId of the component as the value of the "name"
          attribute.  Render the current value of the component as the value
          of the "value" attribute, if and only if the "redisplay" component
          attribute is the string "true".  If the "styleClass" attribute is
          specified, render its value as the value of the "class"
          attribute.</p></ul>]]>
        </description>
          <attribute>
              <name>action</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  MethodBinding representing the application action to invoke when
                  this component is activated by the user. The expression must
                  evaluate to a public method that takes no parameters, and returns
                  a String (the logical outcome) which is passed to the
                  NavigationHandler for this application.

              </description>
          </attribute>
        <attribute>
          <name>enabledOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              If user is in given role, this component will be rendered normally. If not, the component will be
              in disabled state.
          </description>
        </attribute>
        <attribute>
          <name>renderedOnUserRole</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             If user is in given role, this component will be rendered normally. If not, nothing is
             rendered and the body of this tag will be skipped.
         </description>
        </attribute>        
          <attribute>
              <name>onclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onclick event
              </description>
          </attribute>
          <attribute>
              <name>ondblclickeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on ondblclick event
              </description>
          </attribute>
          <attribute>
              <name>onmousedowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousedown event
              </description>
          </attribute>
          <attribute>
              <name>onmouseupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseup event
              </description>
          </attribute>
          <attribute>
              <name>onmousemoveeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmousemove event
              </description>
          </attribute>
          <attribute>
              <name>onmouseovereffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseover event
              </description>
          </attribute>
          <attribute>
              <name>onmouseouteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onmouseout event
              </description>
          </attribute>
          <attribute>
              <name>onchangeeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onchange event
              </description>
          </attribute>
          <attribute>
              <name>onreseteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onreset event
              </description>
          </attribute>
          <attribute>
              <name>onsubmiteffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onsubmit event
              </description>
          </attribute>
          <attribute>
              <name>onkeypresseffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeypress event
              </description>
          </attribute>
          <attribute>
              <name>onkeydowneffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeydown event
              </description>
          </attribute>
          <attribute>
              <name>onkeyupeffect</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>
                  Effect invoked on onkeyup event
              </description>
          </attribute>


          <attribute>
              <name>actionListener</name>
              <required>false</required>
              <rtexprvalue>false</rtexprvalue>
              <description>

                  MethodBinding representing an action listener method that will be
                  notified when this component is activated by the user. The
                  expression must evaluate to a public method that takes an
                  ActionEvent parameter, with a return type of void.

              </description>
          </attribute>
        <attribute>
          <name>converter</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Converter instance registered with this component.

          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The component identifier for this component.  This value must be
              unique within the closest parent component that is a naming
              container.

          </description>
        </attribute>
        <attribute>
          <name>immediate</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Flag indicating that, if this component is activated by the user,
            notifications should be delivered to interested listeners and actions
            immediately (that is, during Apply Request Values phase) rather than
            waiting until Invoke Application phase. The extended inputSecret 
            component behaves like a commandButton or commandLink in this regard 
            and not like the standard inputSecret component.

          </description>
        </attribute>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.

          </description>
        </attribute>
        <attribute>
          <name>required</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that the user is required to provide a submitted
              value for this input component.

          </description>
        </attribute>
        <attribute>
          <name>validator</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a validator method that will be called
              during Process Validations to perform correctness checks on the
              value of this component.  The expression must evaluate to a public
              method that takes FacesContext, UIComponent, and Object parameters,
              with a return type of void.

          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The current value of this component.

          </description>
        </attribute>
        <attribute>
          <name>valueChangeListener</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              MethodBinding representing a value change listener method that will be
              notified when a new value has been set for this input component.  The
              expression must evaluate to a public method that takes a
              ValueChangeEvent parameter, with a return type of void.

          </description>
        </attribute>
        <attribute>
            <name>autocomplete</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>Passed through to root element.</description>
        </attribute>        
        <attribute>
          <name>accesskey</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Access key that, when pressed, transfers focus
              to this element.

          </description>
        </attribute>
        <attribute>
          <name>alt</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Alternate textual description of the
              element rendered by this component.

          </description>
        </attribute>
        <attribute>
          <name>dir</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Direction indication for text that does not inherit directionality.
              Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

          </description>
        </attribute>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
        <attribute>
          <name>lang</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Code describing the language used in the generated markup
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>maxlength</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The maximum number of characters that may
              be entered in this field.

          </description>
        </attribute>
        <attribute>
          <name>onblur</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus.

          </description>
        </attribute>
        <attribute>
          <name>onchange</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element loses focus
              and its value has been modified since gaining focus.

          </description>
        </attribute>
        <attribute>
          <name>onclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>ondblclick</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              double clicked over this element.

          </description>
        </attribute>
        <attribute>
          <name>onfocus</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when this element receives focus.

          </description>
        </attribute>
        <attribute>
          <name>onkeydown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeypress</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              pressed and released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onkeyup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a key is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousedown</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              pressed down over this element.

          </description>
        </attribute>
        <attribute>
          <name>onmousemove</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved within this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseout</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved away from this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseover</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              moved onto this element.

          </description>
        </attribute>
        <attribute>
          <name>onmouseup</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when a pointer button is
              released over this element.

          </description>
        </attribute>
        <attribute>
          <name>onselect</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Javascript code executed when text within this
              element is selected by the user.

          </description>
        </attribute>
        <attribute>
          <name>partialSubmit</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

                    Enable component to perform partial submit

          </description>
        </attribute>
        <attribute>
          <name>readonly</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this component will prohibit
              changes by the user.  The element may receive focus
              unless it has also been disabled.

          </description>
        </attribute>
        <attribute>
          <name>redisplay</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

            Flag indicating that any existing value
            in this field should be rendered when the
            form is created.  Because this is a potential
            security risk, password values are not
            displayed by default.

          </description>
        </attribute>
        <attribute>
          <name>size</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              The number of characters used to determine
              the width of this field.

          </description>
        </attribute>
        <attribute>
          <name>style</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              CSS style(s) to be applied when this component is rendered.

          </description>
        </attribute>
        <attribute>
          <name>styleClass</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceInputtext</b> if enabled and
              <b>iceInputtext-dis</b> if disabled.
              ]]>
          </description>
        </attribute>
        <attribute>
          <name>tabindex</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Position of this element in the tabbing order
              for the current document.  This value must be
              an integer between 0 and 32767.

          </description>
        </attribute>
        <attribute>
          <name>title</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Advisory title information about markup elements generated
              for this component.

          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

    The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>

          <attribute>
            <name>effect</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
                The Javascript Effect
            </description>
          </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

      </tag>



            <tag>
              <name>message</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.MessageTag</tag-class>
              <body-content>JSP</body-content>
              <description>
                <![CDATA[<p>Render a single message for a specific component.</p><p>Set-up for Rendering</p><ul><p>Obtain the "summary" and "detail" properties from
                  <code>UIMessage</code> component.  If not present, keep the
                  empty string as the value, respectively.  Obtain the first
                  <code>FacesMessage</code> to render from the component, using
                  the "for" property of the <code>UIMessage</code>.  This will be
                  the only message we render.  Obtain the severity style for this
                  message.  If the severity of the message is
                  <code>FacesMessage.SEVERITY_INFO</code>, the severity style
                  comes from the value of the "infoStyle" attribute.  If the
                  severity of the message is
                  <code>FacesMessage.SEVERITY_WARN</code>, the severity style
                  comes from the value of the "warnStyle" attribute, and so on for
                  each of the severities, <code>INFO, WARN, ERROR</code> and
                  <code>FATAL</code>.  The same rules apply for obtaining the
                  severity style class, but instead of "infoStyle, warnStyle", etc
                  use "infoClass, warnClass", etc.  Obtain the "style",
                  "styleClass" and "layout" attributes from the
                  <code>UIMessage</code> component.  If we have a "style"
                  attribute and a severity style attribute, use the severity style
                  attribute as the value of the "style" attribute.  If we have no
                  "style" attribute, but do have a severity style, use the
                  severity style as the value of the "style" attribute.  The same
                  precedence rules apply for the style class.</p></ul><p>Rendering</p><ul><p>For the message renderer, we only render
                one row, for the first message.  For the messages renderer, we
                render as many rows as we have messages.  If either of the "style"
                or "styleClass" attributes has a non-null value (as determined
                above), render a "span" element, outputting the value of the
                "style" attribute as the the value of the "style" attribute, and
                outputting the value of the "styleClass" attribute as the value of
                the "class" attribute on the "span" element.  If the
                <code>UIMessage</code> has a "tooltip" attribute with the value of
                "true", and the <code>UIMessage</code> has "showSummary" and
                "showDetail" properties with the value "true", if we haven't
                already written out the "span", output the "summary" as the value
                of the "title" attribute on the "span".  If we haven't already
                written out a "title" attribute, and "showSummary" is true, output
                the summary.  If "showDetail" is true, output the detail.  Close
                out the span if necessary.</p></ul>]]>
              </description>
              <attribute>
                <name>for</name>
                <required>true</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Client identifier of the component for which to display messages.

                </description>
              </attribute>
              <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>showDetail</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the detail portion of displayed messages
                    should be included.  Default value is "true".

                </description>
              </attribute>
              <attribute>
                <name>showSummary</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the summary portion of displayed messages
                    should be included.  Default value is "false".

                </description>
              </attribute>
              <attribute>
                <name>errorClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "ERROR".
                
                    <br/>The default class rendered as <b>iceMsgError</b>.
              </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>errorStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "ERROR".

                </description>
              </attribute>
              <attribute>
                <name>fatalClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "FATAL".
                    <br/>The default class rendered as <b>iceMsgFatal</b>.
              </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>fatalStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "FATAL".

                </description>
              </attribute>
              <attribute>
                <name>infoClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "INFO".
                    <br/>The default class rendered as <b>iceMsgInfo</b>.
              </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>infoStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "INFO".

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
              <![CDATA[<p>
                    Space-separated list of CSS style class(es) to be applied when
                    this element is rendered.  This value must be passed through
                    as the "class" attribute on generated markup.

                    <br/>The default class rendered as <b>iceMsg</b>.
              </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>tooltip</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the detail portion of the
                    message should be displayed as a tooltip.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>warnClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "WARN".
                    <br/>The default class rendered as <b>iceMsgWarn</b>.
              </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>warnStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "WARN".

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>
                <attribute>
                  <name>effect</name>
                  <required>false</required>
                  <rtexprvalue>false</rtexprvalue>
                  <description>
                      The Javascript Effect
                  </description>
                </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

            </tag>
            <tag>
              <name>messages</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.MessagesTag</tag-class>
              <body-content>JSP</body-content>
              <description>
                <![CDATA[<p>The same as for the Message renderer, but output all the
               messages.  If the value of the "layout" attribute is "table",
               render nested "table", "tr", and "td" elements, in that order,
               otherwise, don't render the table.  The component is a
               <code>UIMessages</code>, and there is no "for" attribute.
               Therefore, use either <code>null</code> to obtain the messages from
               the <code>FacesContext</code> or the empty string if the components
               "globalOnly" property is <code>true</code>.  If the layout was
               "table" close out the table elements.  </p>]]>
              </description>
              <attribute>
                <name>globalOnly</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating that only global messages (that is, messages not
                    associated with any client identifier) are to be displayed.
                    Default value is "false".

                </description>
              </attribute>
              <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>showDetail</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the detail portion of displayed messages
                    should be included.  Default value is "false".

                </description>
              </attribute>
              <attribute>
                <name>showSummary</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the summary portion of displayed messages
                    should be included.  Default value is "true".

                </description>
              </attribute>
              <attribute>
                <name>errorClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "ERROR".
                
                    <br/>The default class rendered as <b>iceMsgsError</b>.
              </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>errorStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "ERROR".

                </description>
              </attribute>
              <attribute>
                <name>fatalClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "FATAL".
                    <br/>The default class rendered as <b>iceMsgsFatal</b>.
              </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>fatalStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "FATAL".

                </description>
              </attribute>
              <attribute>
                <name>infoClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "INFO".
                    <br/>The default class rendered as <b>iceMsgsInfo</b>.
              </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>infoStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "INFO".

                </description>
              </attribute>
              <attribute>
                <name>layout</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The type of layout markup to use when rendering
                    error messages.  Valid values are "table" (an HTML
                    table) and "list" (an HTML list).  If not specified,
                    the default value is "list".

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

              <![CDATA[<p>
                    Space-separated list of CSS style class(es) to be applied when
                    this element is rendered.  This value must be passed through
                    as the "class" attribute on generated markup.

                    <br/>The default class rendered as <b>iceMsgs</b>.
              </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>tooltip</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether the detail portion of the
                    message should be displayed as a tooltip.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>warnClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

              <![CDATA[<p>
                    CSS style class to apply to any message
                    with a severity class of "WARN".
                    <br/>The default class rendered as <b>iceMsgsWarn</b>.
              </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>warnStyle</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to apply to any message
                    with a severity class of "WARN".

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>
                <attribute>
                  <name>effect</name>
                  <required>false</required>
                  <rtexprvalue>false</rtexprvalue>
                  <description>
                      The Javascript Effect
                  </description>
                </attribute>

                <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>


            </tag>
            <tag>
              <name>outputFormat</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.OutputFormatTag</tag-class>
              <body-content>JSP</body-content>
              <description>
                <![CDATA[<p>Render parameterized text.  Obtain the <code>style</code>
                and <code>styleClass</code> attributees from this component.  If either
                are present, render a "span" element.  Output the <code>styleClass</code>
                attribute (if present) as the value of the <code>class</code> attribute.
                Output the <code>style</code> attribute as the value of the
                <code>style</code> attribute.  Accrue a list of the values of all
                child <code>UIParameter</code> components of this component.  If there
                are one or more accumulated parameter values, convert the list of
                parameter values to an <code>Object</code> array, call
                <code>MessageFormat.format()</code>, passing the <code>value</code>
                of this component as the first argument, and the array of parameter
                values as the second argument, and render the result.  Otherwise,
                render the <code>value</code> of this component unmodified.</p>]]>
              </description>
              <attribute>
                <name>converter</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Converter instance registered with this component.

                </description>
              </attribute>
              <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>value</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The current value of this component.

                </description>
              </attribute>
              <attribute>
                <name>escape</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                  Flag indicating that characters that are sensitive
                  in HTML and XML markup must be escaped.  This flag
                  is set to "true" by default.

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
                <![CDATA[<p>
                    Space-separated list of CSS style class(es) to be applied when
                    this element is rendered.  This value must be passed through
                    as the "class" attribute on generated markup.
                    <br/> The default class would be rendered as <b>iceOutputFormat</b>.
                </p>]]>
                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>
            </tag>
            <tag>
              <name>outputLabel</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.OutputLabelTag</tag-class>
              <body-content>JSP</body-content>
              <description>
                Renders an HTML "label" element.  Render the current value
                of the component as label text if it is specified. If a "for" attribute is
                specified, find the component specified by the value of the "for"
                attribute, and render its client id as the value of the "for" attribute.
                If "styleClass" attribute is specified, render its value as the value
                of the "class" attribute.
              </description>
              <attribute>
                <name>converter</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Converter instance registered with this component.

                </description>
              </attribute>
              <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>value</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The current value of this component.

                </description>
              </attribute>
              <attribute>
                <name>accesskey</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Access key that, when pressed, transfers focus
                    to this element.

                </description>
              </attribute>
              <attribute>
                <name>dir</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Direction indication for text that does not inherit directionality.
                    Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

                </description>
              </attribute>
              <attribute>
                <name>for</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                  Client identifier of the component for which this element
                  is a label.

                </description>
              </attribute>
              <attribute>
                <name>lang</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Code describing the language used in the generated markup
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>onblur</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when this element loses focus.

                </description>
              </attribute>
              <attribute>
                <name>onclick</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    clicked over this element.

                </description>
              </attribute>
              <attribute>
                <name>ondblclick</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    double clicked over this element.

                </description>
              </attribute>
              <attribute>
                <name>onfocus</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when this element receives focus.

                </description>
              </attribute>
              <attribute>
                <name>onkeydown</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    pressed down over this element.

                </description>
              </attribute>
              <attribute>
                <name>onkeypress</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    pressed and released over this element.

                </description>
              </attribute>
              <attribute>
                <name>onkeyup</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    released over this element.

                </description>
              </attribute>
              <attribute>
                <name>onmousedown</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    pressed down over this element.

                </description>
              </attribute>
              <attribute>
                <name>onmousemove</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved within this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseout</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved away from this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseover</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved onto this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseup</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    released over this element.

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
                <![CDATA[<p>
                    Space-separated list of CSS style class(es) to be applied when
                    this element is rendered.  This value must be passed through
                    as the "class" attribute on generated markup.
                    <br/> The default class would be rendered as <b>iceOutputText</b>.
                </p>]]>

                </description>
              </attribute>
              <attribute>
                <name>tabindex</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Position of this element in the tabbing order
                    for the current document.  This value must be
                    an integer between 0 and 32767.

                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>
                <attribute>
                  <name>effect</name>
                  <required>false</required>
                  <rtexprvalue>false</rtexprvalue>
                  <description>
                      The Javascript Effect
                  </description>
                </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

            </tag>
            <tag>
              <name>outputLink</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.OutputLinkTag</tag-class>
              <body-content>JSP</body-content>
              <description>
                <![CDATA[Render an HTML "a" anchor element.  The value of the
                component is rendered as the value of the "href" attribute.  Any
                child UIParameter components are appended to the String to be
                output as the value of the "href" attribute as query parameters
                before rendering.  The entire "href" string must be passed through
                a call to the <code>encodeResourceURL()</code> method of the
                <code>ExternalContext</code>.  The name of the UIParameter goes on
                the left hand side, and the value of the UIParameter on the right
                hand side.  The name and the value must be URLEncoded.  Each
                UIParameter instance is separated by an ampersand, as dictated in
                the URL spec.  If the "styleClass" attribute is specified, render
                its value as the value of the "class" attribute.
                ]]>
              </description>
        <attribute>
          <name>disabled</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>

              Flag indicating that this element must never
              receive focus or be included in a subsequent
              submit.

          </description>
        </attribute>
                <attribute>
                    <name>onclickeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onclick event
                    </description>
                </attribute>
                <attribute>
                    <name>ondblclickeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on ondblclick event
                    </description>
                </attribute>
                <attribute>
                    <name>onmousedowneffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmousedown event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseupeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseup event
                    </description>
                </attribute>
                <attribute>
                    <name>onmousemoveeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmousemove event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseovereffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseover event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseouteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseout event
                    </description>
                </attribute>
                <attribute>
                    <name>onchangeeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onchange event
                    </description>
                </attribute>
                <attribute>
                    <name>onreseteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onreset event
                    </description>
                </attribute>
                <attribute>
                    <name>onsubmiteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onsubmit event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeypresseffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeypress event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeydowneffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeydown event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeyupeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeyup event
                    </description>
                </attribute>


                <attribute>
                <name>converter</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Converter instance registered with this component.

                </description>
              </attribute>
              <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>value</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The current value of this component.

                </description>
              </attribute>
              <attribute>
                <name>accesskey</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Access key that, when pressed, transfers focus
                    to this element.

                </description>
              </attribute>
              <attribute>
                <name>charset</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The character encoding of the resource designated
                    by this hyperlink.

                </description>
              </attribute>
              <attribute>
                <name>coords</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The position and shape of the hot spot on the screen
                    (for use in client-side image maps).

                </description>
              </attribute>
              <attribute>
                <name>dir</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Direction indication for text that does not inherit directionality.
                    Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).

                </description>
              </attribute>
              <attribute>
                <name>enabledOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                If user is in given role, this component will be rendered normally. If not, no hyperlink is
                                rendered but all nested tags (=body) are rendered.

                </description>
              </attribute>
              <attribute>
                <name>hreflang</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The language code of the resource designated
                    by this hyperlink.

                </description>
              </attribute>
              <attribute>
                <name>lang</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Code describing the language used in the generated markup
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>onblur</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when this element loses focus.

                </description>
              </attribute>
              <attribute>
                <name>onclick</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    clicked over this element.

                </description>
              </attribute>
              <attribute>
                <name>ondblclick</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    double clicked over this element.

                </description>
              </attribute>
              <attribute>
                <name>onfocus</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when this element receives focus.

                </description>
              </attribute>
              <attribute>
                <name>onkeydown</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    pressed down over this element.

                </description>
              </attribute>
              <attribute>
                <name>onkeypress</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    pressed and released over this element.

                </description>
              </attribute>
              <attribute>
                <name>onkeyup</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a key is
                    released over this element.

                </description>
              </attribute>
              <attribute>
                <name>onmousedown</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    pressed down over this element.

                </description>
              </attribute>
              <attribute>
                <name>onmousemove</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved within this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseout</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved away from this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseover</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    moved onto this element.

                </description>
              </attribute>
              <attribute>
                <name>onmouseup</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Javascript code executed when a pointer button is
                    released over this element.

                </description>
              </attribute>
              <attribute>
                <name>rel</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The relationship from the current document
                    to the anchor specified by this hyperlink.
                    The value of this attribute is a space-separated
                    list of link types.

                </description>
              </attribute>
              <attribute>
                <name>rev</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    A reverse link from the anchor specified
                    by this hyperlink to the current document.
                    The value of this attribute is a space-separated
                    list of link types.

                </description>
              </attribute>
              <attribute>
                <name>shape</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The shape of the hot spot on the screen
                    (for use in client-side image maps).  Valid
                    values are:  default (entire region); rect
                    (rectangular region); circle (circular region);
                    and poly (polygonal region).

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceOutputLink</b>. 
              ]]>
                </description>
              </attribute>
              <attribute>
                <name>tabindex</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Position of this element in the tabbing order
                    for the current document.  This value must be
                    an integer between 0 and 32767.

                </description>
              </attribute>
              <attribute>
                <name>target</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Name of a frame where the resource
                    retrieved via this hyperlink is to
                    be displayed.

                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>type</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The content type of the resource designated
                    by this hyperlink.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>

                <attribute>
                  <name>effect</name>
                  <required>false</required>
                  <rtexprvalue>false</rtexprvalue>
                  <description>
                      The Javascript Effect
                  </description>
                </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

            </tag>
            <tag>
              <name>outputText</name>
              <tag-class>com.icesoft.faces.component.ext.taglib.OutputTextTag</tag-class>
              <body-content>JSP</body-content>
                <description>
                    <![CDATA[
                    <p>If the "styleClass" or "style" attributes are
                    present, render a "span" element. If the "styleClass" attribute
                    is present, render its value as the value of the "class"
                    attribute. </p>
                    <p>If the "style" attribute is present, pass it thru. If
                    the "escape" attribute is not present, or it is present and its
                    value is "true" all angle brackets should be converted to the
                    ampersand xx semicolon syntax when rendering the value of the
                    "value" attribute as the value of the component.</p>
                    <p>If the "escape"
                    attribute is present and is "false" the value of the component
                    should be rendered as text without escaping.      </p>
                    ]]>
                </description>

                <attribute>
                    <name>onclickeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onclick event
                    </description>
                </attribute>
                <attribute>
                    <name>ondblclickeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on ondblclick event
                    </description>
                </attribute>
                <attribute>
                    <name>onmousedowneffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmousedown event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseupeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseup event
                    </description>
                </attribute>
                <attribute>
                    <name>onmousemoveeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmousemove event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseovereffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseover event
                    </description>
                </attribute>
                <attribute>
                    <name>onmouseouteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onmouseout event
                    </description>
                </attribute>
                <attribute>
                    <name>onchangeeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onchange event
                    </description>
                </attribute>
                <attribute>
                    <name>onreseteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onreset event
                    </description>
                </attribute>
                <attribute>
                    <name>onsubmiteffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onsubmit event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeypresseffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeypress event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeydowneffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeydown event
                    </description>
                </attribute>
                <attribute>
                    <name>onkeyupeffect</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>
                        Effect invoked on onkeyup event
                    </description>
                </attribute>


                <attribute>
                    <name>converter</name>
                    <required>false</required>
                    <rtexprvalue>false</rtexprvalue>
                    <description>

                        Converter instance registered with this component.

                    </description>
                </attribute>
                <attribute>
                <name>id</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The component identifier for this component.  This value must be
                    unique within the closest parent component that is a naming
                    container.

                </description>
              </attribute>
              <attribute>
                <name>rendered</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Flag indicating whether or not this component should be rendered
                    (during Render Response Phase), or processed on any subsequent
                    form submit.

                </description>
              </attribute>
              <attribute>
                <name>value</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    The current value of this component.

                </description>
              </attribute>
              <attribute>
                <name>escape</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                  Flag indicating that characters that are sensitive
                  in HTML and XML markup must be escaped.  This flag
                  is set to "true" by default.

                </description>
              </attribute>
              <attribute>
                <name>style</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    CSS style(s) to be applied when this component is rendered.

                </description>
              </attribute>
              <attribute>
                <name>styleClass</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>
            <![CDATA[ 
              The base name for all style classes. Default value is <b>iceOutputText</b>.
              ]]>


                </description>
              </attribute>
              <attribute>
                <name>title</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                    Advisory title information about markup elements generated
                    for this component.

                </description>
              </attribute>
              <attribute>
                <name>renderedOnUserRole</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

                                  If user is in given role, this component will be rendered normally. If not, nothing is
                                  rendered and the body of this tag will be skipped.

                </description>
              </attribute>
              <attribute>
                <name>binding</name>
                <required>false</required>
                <rtexprvalue>false</rtexprvalue>
                <description>

          The value binding expression linking this component to a property in a backing bean
                </description>
              </attribute>
                <attribute>
                  <name>effect</name>
                  <required>false</required>
                  <rtexprvalue>false</rtexprvalue>
                  <description>
                      The Javascript Effect
                  </description>
                </attribute>

        <attribute>
          <name>visible</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Set the visibility of this component. When false CSS style is set to display:none
          </description>
        </attribute>

            </tag>


    

        <!-- Output -->
    <tag>
        <name>outputDeclaration</name>
        <tag-class>com.icesoft.faces.component.outputdeclaration.OutputDeclarationTag</tag-class>
        <body-content>empty</body-content>
        <description><![CDATA[<p>The outputDeclaration component causes a DOCTYPE declaration to be placed at the beginning of the output document. <br>
For example,
<blockquote>
&lt;ice:outputDeclaration doctypeRoot="HTML" doctypePublic="-//W3C//DTD HTML 4.01 Transitional//EN" doctypeSystem="http://www.w3.org/TR/html4/loose.dtd" /&gt;<br>
</blockquote>
will insert the following at the beginning of the document
<blockquote>
&lt;!DOCCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" &gt;
</blockquote>
            ]]>
</description>
         <attribute><name>doctypeRoot</name>   <required>true</required>  <rtexprvalue>false</rtexprvalue><description>Indicates the root element of the XML document</description></attribute>
         <attribute><name>doctypePublic</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue><description>An identifier for the DTD without giving a specific location.</description></attribute>
        <attribute><name>doctypeSystem</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue><description>Indicates the URI reference to the DTD</description></attribute>
        <attribute><name>output</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue><description>Indicates the serialization format</description></attribute>
        <attribute><name>prettyPrinting</name>   <required>false</required>  <rtexprvalue>false</rtexprvalue><description>Prints elementes indented</description></attribute>

    </tag>


    <!-- ice style -->
     <tag>
         <name>outputStyle</name>
         <tag-class>com.icesoft.faces.component.style.OutputStyleTag</tag-class>
         <body-content>JSP</body-content>
         <description>
             <![CDATA[
            
             <p>The outputStyle component is used to link the desired ICEfaces theme CSS stylesheets into the page to style the
             ICEfaces Component Suite components.
             </p>
              <p>Inserting the outputStyle component into the HEAD region of a page will link both the default CSS stylesheet for
              the theme and optionally an additional stylesheet that alters the default styles to accommodate differences in 
              CSS rendering in various user-agents/browsers. </p>
             <p>The additional style sheet will have a different extension for each browser.p>
             <ul>
              <li>Internet Explorer < 7 = _ie.css</li>
              <li>Internet Explorer 7 = _ie7.css</li>
              <li>Safari = _safari.css</li>
              <li>Sun Studio Creator = _dt.css</li>
             </ul>
             <p>This extension replaces the .css value of the href attribute. So when href is 'xp.css' and the page is rendered in 
             Internet Explorer, an additional style sheet will be included called 'xp_ie.css'.</p>
             ]]>
         </description>
         <attribute>
          <name>href</name>
          <required>true</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
             <![CDATA[<p>
                  The href value of the link element that is rendered. An additional link ellement is rendered for internet explorer 
                  and Safari browsers. An additional style sheet is specifed when in design time in Studio Creator. 
                  The IE style sheet must end with '_ie.css', and the Safari style sheet must end with '_safari.css'.
                  Design Time is '_dt.css' For example if the href value is 'style.css' then the IE style sheet 
                  needs to be named 'style_ie.css'
                </p>
             ]]>
         </description>
         </attribute>

         <attribute>
             <name>id</name>
             <required>false</required>
             <rtexprvalue>false</rtexprvalue>
             <description>Every component may have an unique id. Automatically created if omitted.</description>
         </attribute>
         <attribute>
             <name>binding</name>
             <required>false</required>
             <rtexprvalue>false</rtexprvalue>
             <type>java.lang.String</type>
             <description>Component binding.</description>
         </attribute>

     </tag>


     <!-- Positioned Panel -->
     <tag>
         <name>panelPositioned</name>
         <tag-class>com.icesoft.faces.component.panelpositioned.PanelPositionedTag</tag-class>
         <body-content>JSP</body-content>
         <description>
             <![CDATA[

            <p>The Positioned Panel component is used to display multiple panels allowing the user to
swap panel positions.</p>
             ]]>
         </description>
         <attribute><name>var</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
        <attribute><name>value</name>
            <required>true</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
                 <attribute><name>style</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Passed through to root element. </description>
        </attribute>
         <attribute><name>styleClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>
            <![CDATA[<p>
              Space-separated list of CSS style class(es) to be applied when
              this element is rendered.  This value must be passed through
              as the "class" attribute on generated markup.
              <br/> The default class would be rendered as <b>icePosPnl</b>
            </p>]]>
            </description>
        </attribute>
        <attribute><name>listener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Listener, called when list is changed </description>
        </attribute>

        <attribute><name>overlap</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Either ‘vertical’ or ‘horizontal’. For floating sortables or horizontal lists, choose ‘horizontal’. Vertical lists should use ‘vertical’. default is vertical </description>
        </attribute>
         <attribute><name>constraint</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>   If set to ‘horizontal’ or ‘vertical’ the drag will be constrained to take place only horizontally or vertically. default is vertical</description>
        </attribute>
         <attribute><name>handle</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>The css class of a child node that is used to drag the item</description>
        </attribute>
         <attribute><name>hoverclass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description>The class of the list item being hovered over </description>
        </attribute>


           
           
     </tag>

 <tag>
        <name>rowSelector</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.RowSelectorTag</tag-class>
        <body-content>JSP</body-content>
        <description>Row Selelctor tag. When nested in Ice data tables enabled row selection</description>
         <attribute><name>value</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> True if row is selected </description>
        </attribute>
         <attribute><name>multiple</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> When true multiple rows can be selected </description>
        </attribute>
         <attribute><name>mouseOverClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> CSS class to apply when mouse is over the row </description>
        </attribute>
              <attribute><name>selectedClass</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> CSS class to apply when row is selected </description>
        </attribute>

                  <attribute><name>selectionListener</name>
            <required>false</required>
            <rtexprvalue>false</rtexprvalue>
            <description> Listener method to call with a RowSelectorEvent when a row is selected </description>
        </attribute>
    </tag>
    <!--<tag>
        <name>slider</name>
        <tag-class>com.icesoft.faces.component.slider.SliderTag</tag-class>
        <body-content>JSP</body-content>
        <description>Slider Tag</description>
    </tag>-->

      <tag>
        <name>columns</name>
        <tag-class>com.icesoft.faces.component.ext.taglib.UIColumnsTag</tag-class>
        <body-content>JSP</body-content>
        <description>
          <![CDATA[<p>Renders a UIComponent that represents a single column of data within a parent <code>UIData</code> component.</p>]]>
        </description>
        <attribute>
          <name>rendered</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Flag indicating whether or not this component should be rendered
              (during Render Response Phase), or processed on any subsequent
              form submit.
          </description>
        </attribute>
        <attribute>
          <name>binding</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <type>java.lang.String</type>
          <description>
            The value binding expression linking this component to a property in a backing bean
          </description>
        </attribute>
        <attribute>
          <name>id</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <type>java.lang.String</type>
          <description>
            The component identifier for the associated component
          </description>
        </attribute>
        <attribute>
          <name>value</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              The current value of this component.
          </description>
        </attribute>      
        <attribute>
          <name>var</name>
          <required>false</required>
          <rtexprvalue>false</rtexprvalue>
          <description>
              Name of a request-scope attribute which represents the current column.
          </description>
        </attribute>
      </tag>
</taglib>
