<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns="http://www.bindows.net/IVBindowsSchema"
           targetNamespace="http://www.bindows.net/IVBindowsSchema"
           elementFormDefault="qualified"
           xmlns:iv="http://www.infiview.net/infiview"
  >

  <xs:import namespace="http://www.infiview.net/infiview"
             schemaLocation="ComplexSchemaValidation19_2.xsd"/>

  <xs:element name="Application">
    <xs:complexType>
      <xs:choice minOccurs="1" maxOccurs="unbounded">
        <xs:element name="SplashScreen" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="Theme" minOccurs="0" maxOccurs="unbounded"/>

        <xs:element name="Window" minOccurs="1" maxOccurs="1">
          <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
              <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
              <xs:element ref="iv:InfiView" minOccurs="0" maxOccurs="1"/>
              <!--<xs:element ref="iv:InfiView" minOccurs="0" maxOccurs="unbounded"/>-->
              <!--<xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>-->
            </xs:choice>
            <xs:attributeGroup ref="ApplicationWindowAttributes"/>
          </xs:complexType>
          <!--<xs:complexType>-->
          <!--<xs:choice minOccurs="0" maxOccurs="unbounded">-->
          <!--<xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>-->
          <!--<xs:element name="InfiView">-->
          <!--<xs:complexType>-->
          <!--<xs:choice minOccurs="0" maxOccurs="unbounded">-->
          <!--<xs:group ref="iv:InfiViewComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>-->
          <!--<xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>-->
          <!--</xs:choice>-->
          <!--<xs:attributeGroup ref="ComponentAttributes"/>-->
          <!--<xs:attributeGroup ref="iv:InfiViewAttributes"/>-->
          <!--</xs:complexType>-->
          <!--</xs:element>-->
          <!--</xs:choice>-->
          <!--<xs:attributeGroup ref="ApplicationWindowAttributes"/>-->
          <!--</xs:complexType>-->

        </xs:element>

        <xs:element name="Resources" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:choice maxOccurs="unbounded" minOccurs="0">
              <xs:element name="Script">
                <xs:complexType mixed="true">
                  <xs:attributeGroup ref="ScriptAttributes"/>
                </xs:complexType>
              </xs:element>

              <xs:element name="Package">
                <xs:complexType>
                  <xs:annotation>
                    <xs:documentation>A package which will be loaded before the rest of the ADF is parsed.</xs:documentation>
                  </xs:annotation>
                  <xs:attributeGroup ref="PackageAttributes"/>
                </xs:complexType>
              </xs:element>

            </xs:choice>
          </xs:complexType>
        </xs:element>
      </xs:choice>
      <xs:attributeGroup ref="ApplicationAttributes"/>
    </xs:complexType>
  </xs:element>


  <xs:attributeGroup name="PackageAttributes">
    <xs:annotation>
      <xs:documentation>Loads a Bindows package or script before parsing the rest of the ADF (including &lt;Script&gt; tags).
      </xs:documentation>
    </xs:annotation>
    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>The location of the package script file (relative to Bindows)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="name" type="PackageTypes">
      <xs:annotation>
        <xs:documentation>The name of the package</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:attributeGroup>

  <xs:simpleType name="PackageTypes">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Loaders"/>
      <xs:enumeration value="OlapGrid"/>
      <xs:enumeration value="Charting"/>
      <xs:enumeration value="WebService2"/>
      <xs:enumeration value="Accessibility"/>
      <xs:enumeration value="Animation"/>
      <xs:enumeration value="Gauge2"/>
      <xs:enumeration value="InfiView"/>
    </xs:restriction>
  </xs:simpleType>


  <xs:element name="AbstractChart">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for charts that are to be used with
        BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChart" substitutionGroup="AbstractChart"/>

  <xs:attributeGroup name="AbstractChartAttributes">

    <xs:attributeGroup ref="AbstractChartBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractChart2">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for charts that are to be used with
        BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChart2" substitutionGroup="AbstractChart2"/>

  <xs:attributeGroup name="AbstractChart2Attributes">

    <xs:attributeGroup ref="AbstractChartBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractChartBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for BiAbstractChart
        and BiAbstractChart2. All the charts
        in BiGraph and BiGraph2
        extend either BiAbstractChart or
        BiAbstractChart2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChartBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChartBase" substitutionGroup="AbstractChartBase"/>

  <xs:attributeGroup name="AbstractChartBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractChartSection">
    <xs:annotation>
      <xs:documentation>
        Used as base class for marker, column rect and pie chart section. These
        are used to create the visual presentation for the data points of a chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChartSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChartSection" substitutionGroup="AbstractChartSection"/>

  <xs:attributeGroup name="AbstractChartSectionAttributes">

    <xs:attributeGroup ref="AbstractChartSectionBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractChartSection2">
    <xs:annotation>
      <xs:documentation>
        Used as base class for the column rectangles in BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChartSection2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChartSection2" substitutionGroup="AbstractChartSection2"/>

  <xs:attributeGroup name="AbstractChartSection2Attributes">

    <xs:attributeGroup ref="AbstractChartSectionBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractChartSectionBase">
    <xs:annotation>
      <xs:documentation>
        Used as base class for marker, column rect and pie chart section. These
        are used to create the visual presentation for the data points of a chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractChartSectionBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractChartSectionBase" substitutionGroup="AbstractChartSectionBase"/>

  <xs:attributeGroup name="AbstractChartSectionBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="strokeOpacity">
      <xs:annotation>
        <xs:documentation>The stroke opacity for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The stroke color for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillOpacity">
      <xs:annotation>
        <xs:documentation>The fill opacity for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The fill color for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor2">
      <xs:annotation>
        <xs:documentation>The alternate fill color used when fill type is gradient</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillType">
      <xs:annotation>
        <xs:documentation>The fill type used when painting the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillAngle">
      <xs:annotation>
        <xs:documentation>The fill angle used when painting the chart.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerType">
      <xs:annotation>
        <xs:documentation>The marker type for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerVisible">
      <xs:annotation>
        <xs:documentation>Whether markers are visible for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="explode">
      <xs:annotation>
        <xs:documentation>The amount to move the pie chart section from the center (percentage of radius)</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Border">
    <xs:annotation>
      <xs:documentation>BiAbstractGauge2Border is the base class of all gauge2 borders
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2BorderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Border" substitutionGroup="AbstractGauge2Border"/>

  <xs:attributeGroup name="AbstractGauge2BorderAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Cap">
    <xs:annotation>
      <xs:documentation>This the base class of all caps
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2CapAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Cap" substitutionGroup="AbstractGauge2Cap"/>

  <xs:attributeGroup name="AbstractGauge2CapAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Filler">
    <xs:annotation>
      <xs:documentation>This the base class of all fillers, fillers is used for coloring the background of gauge2 objects
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2FillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Filler" substitutionGroup="AbstractGauge2Filler"/>

  <xs:attributeGroup name="AbstractGauge2FillerAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractGauge2GradientFiller">
    <xs:annotation>
      <xs:documentation>This class is the base class of all gradient fillers.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2GradientFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2GradientFiller" substitutionGroup="AbstractGauge2GradientFiller"/>

  <xs:attributeGroup name="AbstractGauge2GradientFillerAttributes">

    <xs:attributeGroup ref="AbstractGauge2FillerAttributes"/>

    <xs:attribute name="color1" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The color1 that the filler is going to use.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="color2" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The color2 that the filler is going to use.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="opacity1" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The opacity1 that the filler is going to use for color1.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="opacity2" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The opacity2 that the filler is going to use for color2.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="xpos" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The the x position of the center of the radial filling.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ypos" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The the y position of the center of the radial filling.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="highLightCenter" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Center of the highlight of the ring in percent. 0 being at the inner radius, 100
          at the outer radius.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="thickness" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Thickness of the "ring" in percent.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Range">
    <xs:annotation>
      <xs:documentation>This class is the base class of all gauge2 ranges. A gauge2 range contains the "ticks" and "scales" and it can also
        contain "borders".
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2RangeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Range" substitutionGroup="AbstractGauge2Range"/>

  <xs:attributeGroup name="AbstractGauge2RangeAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Scale">
    <xs:annotation>
      <xs:documentation>This class is the base class of all scales
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2ScaleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Scale" substitutionGroup="AbstractGauge2Scale"/>

  <xs:attributeGroup name="AbstractGauge2ScaleAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>

    <xs:attribute name="labelColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Color of the label printing the scale values</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labelSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Size of the label printing the scale values</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="numValSteps" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Number of steps between values</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="startVal" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The start value</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endVal" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The end value</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="postString" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - String that is printed before values.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="preString" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - String that is printed after values.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractGauge2ScaleSection">
    <xs:annotation>
      <xs:documentation>This is the base class for all scale sections
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2ScaleSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2ScaleSection" substitutionGroup="AbstractGauge2ScaleSection"/>

  <xs:attributeGroup name="AbstractGauge2ScaleSectionAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>

    <xs:attribute name="startVal" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The start value of the sacle section</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endVal" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The end value of the sacle section</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractGauge2Ticks">
    <xs:annotation>
      <xs:documentation>This class is the base class of all ticks classes
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2TicksAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2Ticks" substitutionGroup="AbstractGauge2Ticks"/>

  <xs:attributeGroup name="AbstractGauge2TicksAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>

    <xs:attribute name="tickLength" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The length of each tick.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="numTickSteps" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Number of steps between ticks i.e. 10 steps gives you 11 ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractGauge2ValueMarker">
    <xs:annotation>
      <xs:documentation>This is the base class of all value markers inBiGauge2 i.e.BiGauge2RadialNeedle
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGauge2ValueMarkerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGauge2ValueMarker" substitutionGroup="AbstractGauge2ValueMarker"/>

  <xs:attributeGroup name="AbstractGauge2ValueMarkerAttributes">

    <xs:attributeGroup ref="Gauge2ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AbstractGrid">
    <xs:annotation>
      <xs:documentation>The abstract base class for the grid and the
        tree.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGridAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGrid" substitutionGroup="AbstractGrid"/>

  <xs:attributeGroup name="AbstractGridAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="allowInlineFind" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When true, typing a word will select the first matching item.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showRowHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the row headers on the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rowHeadersWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the row headers that can be shown when using a grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rowHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of each row in the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnCount" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of columns to show in the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - An array containing the widths of the columns.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnOrders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - An array containing the orders of the columns. A value of
          [2, 0, 1] means that the third column should be displayed left most
          and the second column right most.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnAligns" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - An array containing the text aligns for the columns.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnNames" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - An array containing the names for
          the columns. The names are used for the text on the column header.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnSortTypes" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - An array containg the sort types for the columns. Valid values can
          be found in the documentation for the BiGridColumn
          sortType.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="iconColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The column to show the icon on.
          Setting this to -1 (or a value greater than the column count) removes
          the icons.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fitColumnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true the columns will be sized horizontally so that they fill the grid viewport
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="liveResize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is set to true the column size in the grid body is
          updated as the user resizes the headers. If this is false the
          column size in the body is only updated as the user finishes the
          resize of the column header.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the headers on the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="headersHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of the headers.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="multipleSelection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to allow multiple selection.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiSelectionModel - This handles the selection of the rows in the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onbeforesort" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the sort happens. Call
          preventDefault
          to prevent the sorting.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onsort" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires after the grid has been sorted.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="AbstractGridRow">
    <xs:annotation>
      <xs:documentation>The base class for the rows and
        nodes in a grid
        or a tree.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractGridRowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractGridRow" substitutionGroup="AbstractGridRow"/>

  <xs:attributeGroup name="AbstractGridRowAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="backColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The background color name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="foreColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The foreground color name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage /BiUri / String - The image to use as icon on the row. The icon supports bothBiImage (or
          other objects with getIconHtml) as well as a string/uri for backwards compat
          and more lightweight
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the grid row is selected or not.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AbstractLoader">
    <xs:annotation>
      <xs:documentation>This abstract class defines the minimal interface for supporting loading
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AbstractLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAbstractLoader" substitutionGroup="AbstractLoader"/>

  <xs:attributeGroup name="AbstractLoaderAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="async" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to load the text file asynchronously</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="supportsSync" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the loader supports loading the file synchronously</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the file has been loaded</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="AccordionButton">
    <xs:annotation>
      <xs:documentation>This button component is a internal part of BiAccordionPage
        and is used to expand the page.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AccordionButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAccordionButton" substitutionGroup="AccordionButton"/>

  <xs:attributeGroup name="AccordionButtonAttributes">

    <xs:attributeGroup ref="ButtonAttributes"/>

    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Returns whether the parent BiAccordionPage is the
          currently expanded page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AccordionPage">
    <xs:annotation>
      <xs:documentation>This class represents the pages inside a BiAccordionPane.
        A accordion page has a BiAccordionButton placed directly
        above its content, this button is used to set the page to be the only page in the parent
        BiAccordionPane to be shown.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AccordionPageAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAccordionPage" substitutionGroup="AccordionPage"/>

  <xs:attributeGroup name="AccordionPageAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text to show on the page button</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The icon to show on the page button</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="contentPane" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The content of the page</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AccordionPane">
    <xs:annotation>
      <xs:documentation>This class is used for creating accordion controls. A accordion control contains
        one or more BiAccordionPage. Each accordion page also
        has a BiAccordionButton that is shown above the
        page and when the button is clicked the page is shown.
        Pages are oriented vertically from top to bottom and can either be statically shown or animated.

        The property animationSpeed (a) alters the speed (s) in proportion to the animated
        page height (h), using the following formula h2 = h1 - h1 / a, every 0.05 s.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AccordionPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAccordionPane" substitutionGroup="AccordionPane"/>

  <xs:attributeGroup name="AccordionPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="animated" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the pages are animated or not</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="animationSpeed" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Float - Animation speed (1 - infinite) where 1 is the same as setting animated to false.
          Default value is 1.4
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiAccordionPage - The currently selected accordion button.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Adf">
    <xs:annotation>
      <xs:documentation>This class handles the loading and interpretation of the Application
        Definition File (ADF).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AdfAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAdf" substitutionGroup="Adf"/>

  <xs:attributeGroup name="AdfAttributes">

    <xs:attributeGroup ref="XmlLoaderAttributes"/>

    <xs:attribute name="caption" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The desired caption for the application window</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="autoNameMapping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true any XML object that has an id attribute will create a
          global reference to the object created from this XML element. This property
          is mapped to the xmlResourceParser as well as the resource
          loader used to load the resources.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AnimationRange">
    <xs:annotation>
      <xs:documentation>Defines a value range, used by BiComponentAnimation, when animating.
        You specify a start and an end value that will be animated.
        You also specify the duration/time, in ms, that it should take to animate the value range.
        There are several different acceleration behaviors/types that you can choose from.
        BiAnimationRange has the ability to progress (displace) the current value, within the animation range.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AnimationRangeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAnimationRange" substitutionGroup="AnimationRange"/>

  <xs:attributeGroup name="AnimationRangeAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="startValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Lower boundry of the value range.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Upper boundry of the value range.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The acceleration type/behavior for this value range.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="time" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Desired duration of this value range, measured in milliseconds.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="curValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The current position/value inside the value range.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:attributeGroup name="ApplicationAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="progressStatus" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the progress status text shown while loading</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accessibilityMode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - This property can be used to tell whether the application should be in an
          accessibility mode. This does not really do anything and it is up to the
          components and implementations to make sure of this.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accessibilityDescription" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This property can be used to popup an alert with a description about the
          application when the application is in accessibility mode. This is useful
          if the user needs to be informed about something to be able to use the
          application.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="autoNameMapping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true any XML object that has an id attribute will create a
          global reference to the object created from this XML element. This property
          is mapped to the xmlResourceParser as well as the resource
          loader used to load the resources.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="focusOnLoad" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to try to focus the window when the application loads</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="inactivityTimeout" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - When this is set the application will fire an event
          called inactive. The value of this is the number of minutes before
          the inactive is fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="defaultPackages" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The default packages to load. This needs to be set before the loading
          actually starts. To do this you can use an attribute in the Application tag
          in your ADF or set this in the HTML file hosting your application.
          If you just want to add a few packages then use a Package tag in your Resources
          section of the ADF.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this wizard pane.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondispose" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires just before the application is disposed.
          This allows you to clean up your main program
          before closing the application window.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onprogressstatus" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the progress status has changed.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onresourcesready" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired after the Bindows markup has been
          handled but before the main method is called.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when everything has been loaded
          and initialized. This is called after the main
          method has been called.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:attributeGroup name="ApplicationWindowAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="caption" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The title text on the application window</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="acceptButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default accept button. If this is set
          then the action
          event is dispatched from the accept button when the enter key
          is pressed. This does not have to be a
          BiButton, any
          BiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cancelButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default cancel button. If this is set
          then the action
          event is dispatched from the cancel button. This does not have to
          be aBiButton, anyBiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="glassPaneVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to hide or show the glass pane. The glass pane is shown automatically when using dialogs.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="globalCursor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Setting the global cursor will make the mouse pointer use the
          given cursor for all the components and thus overriding the
          cursor property of the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="allowBrowserContextMenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Decides whether the browser context menu should be shown by default.
          If this is set to true you can still prevent the
          browser context menu from being shown by calling preventDefault on the event object
          used in the contextmenu
          event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Area">
    <xs:annotation>
      <xs:documentation>This class represents an area with a given left, top, width and height
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AreaAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiArea" substitutionGroup="Area"/>

  <xs:attributeGroup name="AreaAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="left" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The left position of the area</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="top" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The top position of the area</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the area</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="height" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of the area</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="AreaCollection">
    <xs:annotation>
      <xs:documentation>This collection containsBiArea objects

        This implements the same interface asBiSelectionItemCollection
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AreaCollectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAreaCollection" substitutionGroup="AreaCollection"/>

  <xs:attributeGroup name="AreaCollectionAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="AttachedComponentModel">
    <xs:annotation>
      <xs:documentation>This class is used to handleBiComponent objects insideBiTreeView andBiOlapGrid. An
        attached component will be positioned at the same place as the cell it is
        attached to and have the same size as that cell.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="AttachedComponentModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiAttachedComponentModel" substitutionGroup="AttachedComponentModel"/>

  <xs:attributeGroup name="AttachedComponentModelAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>


  </xs:attributeGroup>

  <xs:element name="BarChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a bar chart for the given series.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="BarChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBarChart" substitutionGroup="BarChart"/>

  <xs:attributeGroup name="BarChartAttributes">

    <xs:attributeGroup ref="ColumnChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="BarChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a bar chart for the given series. This is used
        with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="BarChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBarChart2" substitutionGroup="BarChart2"/>

  <xs:attributeGroup name="BarChart2Attributes">

    <xs:attributeGroup ref="ColumnChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="Base64">
    <xs:annotation>
      <xs:documentation>This class is used to represent base 64 encoded data
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Base64Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBase64" substitutionGroup="Base64"/>

  <xs:attributeGroup name="Base64Attributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="base64" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the base 64 encoded data</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the plain text data (the decoded base 64 data)</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Border">
    <xs:annotation>
      <xs:documentation>
        This class is used to describe a border for a component. The border
        consists of three properties; width, style and color. Supported styles
        are: none - No border is drawn, regardless of the width. dotted dashed solid double groove ridge inset outset
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="BorderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBorder" substitutionGroup="Border"/>

  <xs:attributeGroup name="BorderAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="leftWidth">
      <xs:annotation>
        <xs:documentation>The left border width</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightWidth">
      <xs:annotation>
        <xs:documentation>The right border width</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="topWidth">
      <xs:annotation>
        <xs:documentation>The top border width</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottomWidth">
      <xs:annotation>
        <xs:documentation>The bottom border width</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="leftStyle">
      <xs:annotation>
        <xs:documentation>The left border style</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightStyle">
      <xs:annotation>
        <xs:documentation>The right border style</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="topStyle">
      <xs:annotation>
        <xs:documentation>The top border style</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottomStyle">
      <xs:annotation>
        <xs:documentation>The bottom border style</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="leftColor">
      <xs:annotation>
        <xs:documentation>The left border color</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightColor">
      <xs:annotation>
        <xs:documentation>The right border color</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="topColor">
      <xs:annotation>
        <xs:documentation>The top border color</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottomColor">
      <xs:annotation>
        <xs:documentation>The bottom border color</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width">
      <xs:annotation>
        <xs:documentation>The width (in pixels) of the border on all sides</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="style">
      <xs:annotation>
        <xs:documentation>The style of the border on all sides</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="color">
      <xs:annotation>
        <xs:documentation>The color of the border on all sides</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Box">
    <xs:annotation>
      <xs:documentation>This layout component places its children from left to right for the horizontal
        box and from top to bottom for the vertical box. This is a fairly advanced
        layout component that takes preferred, minimum and maximum size of the children
        into account. It also takes margins into account and it uses margin collapsing
        so that two adjacent children share the larger margin.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="BoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBox" substitutionGroup="Box"/>

  <xs:attributeGroup name="BoxAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="orient" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The orientation to layout the children. Valid values are "horizontal" and
          "vertical". When set to "horizontal", rightToLeft is taken into account.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The align property decides how to size and position the children. This
          describes the size and position in the orthogonal direction of the
          box orientation. For a
          horizontal box this describes the height and top position and for a vertical
          layout this describes the width and left position
          Valid values are:
          stretch
          start
          center
          end
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="pack" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes how to layout the controls when there are no flexing children
          and there is any remaining space.

          Valid values are:
          start
          center
          end
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="BrowserCheck">
    <xs:annotation>
      <xs:documentation>This class is used to identify the browser that the user is using.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="BrowserCheckAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiBrowserCheck" substitutionGroup="BrowserCheck"/>

  <xs:attributeGroup name="BrowserCheckAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Button">
    <xs:annotation>
      <xs:documentation>A button that can contain both text and an icon
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiButton" substitutionGroup="Button"/>

  <xs:attributeGroup name="ButtonAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user presses the button (either
          using the mouse or the keyboard)
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Calendar">
    <xs:annotation>
      <xs:documentation>This class represents a calendar control
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CalendarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCalendar" substitutionGroup="Calendar"/>

  <xs:attributeGroup name="CalendarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - Getter for the maximum selectable date.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - Getter for the maximum selectable date.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showYearButtons" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the buttons that allow you to go to next or previous year
          in the caption
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMonthButtons" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the buttons that allow you to go to next or previous month
          in the caption
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showCaption" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the caption or not</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scaleFonts" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to resize the font in the day labels and days
          when calendar is resized.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="currentDate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The date describing the currently shown month. To get the selected date(s)
          use selectedDate(s)
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dateFormatSymbols" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDateFormatSymbols - The object providing the date picker with the symbols needed to display
          localized strings
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedDate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The selected date.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedDates" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date[] - These are the selected dates. In case multiple selection is used then use
          this instead of selectedDate
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the selection changes</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user clicks on a day</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="CalendarSelectionModel">
    <xs:annotation>
      <xs:documentation>This selection model is used withBiCalendar and the items in the model
        are Javascript date objects. Two dates are considered equal if they are
        representing the same date (in other words the time of the day is ignored).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CalendarSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCalendarSelectionModel" substitutionGroup="CalendarSelectionModel"/>

  <xs:attributeGroup name="CalendarSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>

    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The minimum selectable date</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The maximum selectable date</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartArea">
    <xs:annotation>
      <xs:documentation>
        This class represents the area where the charts inside a graph are displayed.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartAreaAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartArea" substitutionGroup="ChartArea"/>

  <xs:attributeGroup name="ChartAreaAttributes">

    <xs:attributeGroup ref="ChartAreaBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartArea2">
    <xs:annotation>
      <xs:documentation>
        This is the chart area used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartArea2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartArea2" substitutionGroup="ChartArea2"/>

  <xs:attributeGroup name="ChartArea2Attributes">

    <xs:attributeGroup ref="ChartAreaBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartAreaBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for BiChartArea
        and BiChartArea2.
        The chart area is the part of the graph that contains the charts.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartAreaBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartAreaBase" substitutionGroup="ChartAreaBase"/>

  <xs:attributeGroup name="ChartAreaBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The background color of the
          chart area
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor2">
      <xs:annotation>
        <xs:documentation>The alternate color of the
          chart area (used when fill type is gradient)
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillOpacity">
      <xs:annotation>
        <xs:documentation>The background color opacity of the
          chart area
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillType">
      <xs:annotation>
        <xs:documentation>
          The type of the fill. Valid values are:
          solid
          gradient
          gradientradial
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillAngle">
      <xs:annotation>
        <xs:documentation>The angle of the gradient</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The border color of the
          chart area
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strokeOpacity">
      <xs:annotation>
        <xs:documentation>The border opacity of the
          chart area
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartCategory">
    <xs:annotation>
      <xs:documentation>
        This class is used to describe the categories of the data for a
        graph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartCategoryAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartCategory" substitutionGroup="ChartCategory"/>

  <xs:attributeGroup name="ChartCategoryAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="title">
      <xs:annotation>
        <xs:documentation>The title of the category</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartCategoryAxis">
    <xs:annotation>
      <xs:documentation>
        This class handles the drawing of the category axis for a
        BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartCategoryAxisAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartCategoryAxis" substitutionGroup="ChartCategoryAxis"/>

  <xs:attributeGroup name="ChartCategoryAxisAttributes">

    <xs:attributeGroup ref="ChartCategoryAxisBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartCategoryAxis2">
    <xs:annotation>
      <xs:documentation>
        This class handles the drawing of the category axis for a
        BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartCategoryAxis2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartCategoryAxis2" substitutionGroup="ChartCategoryAxis2"/>

  <xs:attributeGroup name="ChartCategoryAxis2Attributes">

    <xs:attributeGroup ref="ChartCategoryAxisBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartCategoryAxisBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base calss for BiChartCategoryAxis
        and BiChartCategoryAxis2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartCategoryAxisBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartCategoryAxisBase" substitutionGroup="ChartCategoryAxisBase"/>

  <xs:attributeGroup name="ChartCategoryAxisBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="majorTickInterval">
      <xs:annotation>
        <xs:documentation>
          The distance between the major ticks. Setting this to null makes
          the tick interval automatic, which means that the tick interval is decided by
          looking at the data of the charts.
          This value needs to be an integer.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorTickInterval">
      <xs:annotation>
        <xs:documentation>
          The distance between the minor ticks. Setting this to null makes
          the tick interval automatic, which means that the tick interval is decided by
          looking at the data of the charts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMajorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showLabels">
      <xs:annotation>
        <xs:documentation>Whether to show the labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="axisBetweenCategories">
      <xs:annotation>
        <xs:documentation>
          When this is true the data points, the labels and the value axis are
          placed between the major ticks. When false the data points, the labels
          and the value axis are placed on the major ticks. The default is
          true and therefore the first value will not be placed on
          the value axis.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fontSize">
      <xs:annotation>
        <xs:documentation>
          The font size (in pixels) for the labels of the axis.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartGridLines">
    <xs:annotation>
      <xs:documentation>
        This component is used to display the grid lines for
        BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartGridLinesAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartGridLines" substitutionGroup="ChartGridLines"/>

  <xs:attributeGroup name="ChartGridLinesAttributes">

    <xs:attributeGroup ref="ChartGridLinesBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartGridLines2">
    <xs:annotation>
      <xs:documentation>
        This component is used to display the grid lines for
        BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartGridLines2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartGridLines2" substitutionGroup="ChartGridLines2"/>

  <xs:attributeGroup name="ChartGridLines2Attributes">

    <xs:attributeGroup ref="ChartGridLinesBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartGridLinesBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for BiChartGridLines
        and BiChartGridLines2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartGridLinesBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartGridLinesBase" substitutionGroup="ChartGridLinesBase"/>

  <xs:attributeGroup name="ChartGridLinesBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="showMajorValue">
      <xs:annotation>
        <xs:documentation>Whether to show the major value grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinorValue">
      <xs:annotation>
        <xs:documentation>Whether to show the minor value grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMajorCategory">
      <xs:annotation>
        <xs:documentation>Whether to show the major category grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinorCategory">
      <xs:annotation>
        <xs:documentation>Whether to show the minor category grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="majorValueStrokeColor">
      <xs:annotation>
        <xs:documentation>The color of the major value grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorValueStrokeColor">
      <xs:annotation>
        <xs:documentation>The color of the minor value grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="majorCategoryStrokeColor">
      <xs:annotation>
        <xs:documentation>The color of the major category grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorCategoryStrokeColor">
      <xs:annotation>
        <xs:documentation>The color of the minor category grid lines</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartLegend">
    <xs:annotation>
      <xs:documentation>
        The legend component is used to show a list of the titles of the series
        or categories depending on the chart type.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartLegendAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartLegend" substitutionGroup="ChartLegend"/>

  <xs:attributeGroup name="ChartLegendAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="fontSize">
      <xs:annotation>
        <xs:documentation>
          The font size (in pixels) of the labels inside the legend.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartLegendLabel">
    <xs:annotation>
      <xs:documentation>
        A special lable used for the items in the chart
        legend
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartLegendLabelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartLegendLabel" substitutionGroup="ChartLegendLabel"/>

  <xs:attributeGroup name="ChartLegendLabelAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="legendFor">
      <xs:annotation>
        <xs:documentation>
          The object used for the text and the icon for the label. This object
          needs to have the methods getTitle() (See for example
          title for BiAbstractChart)
          and getIconHtml(oLabel) (See for example
          getIconHtml for BiImage).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartMouseEvent">
    <xs:annotation>
      <xs:documentation>
        This event is used for mouse events that are specific for a data point
        inside a graph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartMouseEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartMouseEvent" substitutionGroup="ChartMouseEvent"/>

  <xs:attributeGroup name="ChartMouseEventAttributes">

    <xs:attributeGroup ref="MouseEventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartPoint">
    <xs:annotation>
      <xs:documentation>
        This class is used to describe how to display a data point in the graph.
        Each point is bound to a series and a category.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartPointAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartPoint" substitutionGroup="ChartPoint"/>

  <xs:attributeGroup name="ChartPointAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="strokeOpacity">
      <xs:annotation>
        <xs:documentation>The stroke opacity for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The stroke color for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillOpacity">
      <xs:annotation>
        <xs:documentation>The fill opacity for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The fill color for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor2">
      <xs:annotation>
        <xs:documentation>The alternate fill color used when fill type is gradient</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillType">
      <xs:annotation>
        <xs:documentation>The fill type used when painting the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillAngle">
      <xs:annotation>
        <xs:documentation>The fill angle used when painting the section of the chart this point descibes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerType">
      <xs:annotation>
        <xs:documentation>The marker type for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerVisible">
      <xs:annotation>
        <xs:documentation>Whether markers are visible for the section of the chart this point descibes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="explode">
      <xs:annotation>
        <xs:documentation>The amount to move the pie chart section from the middle</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartPresentation">
    <xs:annotation>
      <xs:documentation>
        This class is used to define the presentation attributes for a chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartPresentationAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartPresentation" substitutionGroup="ChartPresentation"/>

  <xs:attributeGroup name="ChartPresentationAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="strokeOpacity">
      <xs:annotation>
        <xs:documentation>The stroke opacity for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The stroke color for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The fill color for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillOpacity">
      <xs:annotation>
        <xs:documentation>The fill opacity for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor2">
      <xs:annotation>
        <xs:documentation>The alternate fill color used when fill type is gradient</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillType">
      <xs:annotation>
        <xs:documentation>The fill type used when painting the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillAngle">
      <xs:annotation>
        <xs:documentation>The fill angle used when painting the chart.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerType">
      <xs:annotation>
        <xs:documentation>The marker type for the line chart. Valid values are
          circle
          square
          trianle
          diamond
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="markerVisible">
      <xs:annotation>
        <xs:documentation>Whether markers are visible for the chart</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="explode">
      <xs:annotation>
        <xs:documentation>The amount to move the pie chart sections from the middle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="barSpacing">
      <xs:annotation>
        <xs:documentation>
          This is the relative distance between the bars or columns of different categories.
          1 means that the distance is the same as the width/height of the column/bar.
          0 means that there is no spacing.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartPresentationManager">
    <xs:annotation>
      <xs:documentation>
        This class is used to find the properties for different visual aspects of
        of the graph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartPresentationManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartPresentationManager" substitutionGroup="ChartPresentationManager"/>

  <xs:attributeGroup name="ChartPresentationManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartSeries">
    <xs:annotation>
      <xs:documentation>
        This describes a series of values that is used with the graph
        control. Each series has a unique id and every value of the series
        belongs to a certain category.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartSeriesAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartSeries" substitutionGroup="ChartSeries"/>

  <xs:attributeGroup name="ChartSeriesAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="title">
      <xs:annotation>
        <xs:documentation>The title of the series</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="values">
      <xs:annotation>
        <xs:documentation>
          The values in the series. This is the same order as the order of
          the categories. If a value for a certain category is missing the
          value for that is null in the array.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ChartValueAxis">
    <xs:annotation>
      <xs:documentation>
        This class handles the drawing of the value axis for a
        graph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartValueAxisAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartValueAxis" substitutionGroup="ChartValueAxis"/>

  <xs:attributeGroup name="ChartValueAxisAttributes">

    <xs:attributeGroup ref="ChartValueAxisBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartValueAxis2">
    <xs:annotation>
      <xs:documentation>
        This class handles the drawing of the value axis for a
        BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartValueAxis2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartValueAxis2" substitutionGroup="ChartValueAxis2"/>

  <xs:attributeGroup name="ChartValueAxis2Attributes">

    <xs:attributeGroup ref="ChartValueAxisBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ChartValueAxisBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for BiChartValueAxis
        and BiChartValueAxis2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ChartValueAxisBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiChartValueAxisBase" substitutionGroup="ChartValueAxisBase"/>

  <xs:attributeGroup name="ChartValueAxisBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="showMajorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showLabels">
      <xs:annotation>
        <xs:documentation>Whether to show the labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fontSize">
      <xs:annotation>
        <xs:documentation>
          The font size (in pixels) for the labels of the axis.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="majorTickInterval">
      <xs:annotation>
        <xs:documentation>
          The distance between the major ticks. Setting this to null makes
          the tick interval automatic, which means that the tick interval is decided by
          looking at the data of the charts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorTickInterval">
      <xs:annotation>
        <xs:documentation>
          The distance between the minor ticks. Setting this to null makes
          the tick interval automatic, which means that the tick interval is decided by
          looking at the data of the charts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum">
      <xs:annotation>
        <xs:documentation>
          The max value of the value axis. Setting this to null makes
          the max value automatic, which means that the max value is decided by
          looking at the data of the charts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum">
      <xs:annotation>
        <xs:documentation>
          The min value of the value axis. Setting this to null makes
          the min value automatic, which means that the min value is decided by
          looking at the data of the charts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="CheckBox">
    <xs:annotation>
      <xs:documentation>Represents a check box control
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CheckBoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCheckBox" substitutionGroup="CheckBox"/>

  <xs:attributeGroup name="CheckBoxAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the check box</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the check box is checked or not. When this is changed the
          change event is fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user presses the button (either
          using the mouse or the keyboard)
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the checked property is
          changed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="CheckBoxMenuItem">
    <xs:annotation>
      <xs:documentation>This class is used for a menu item that displays a check box to the left
        of the text.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CheckBoxMenuItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCheckBoxMenuItem" substitutionGroup="CheckBoxMenuItem"/>

  <xs:attributeGroup name="CheckBoxMenuItemAttributes">

    <xs:attributeGroup ref="MenuItemAttributes"/>

    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the item.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the item is checked or not.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the checked property changes</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Circle">
    <xs:annotation>
      <xs:documentation>This class represents the shape of a Circle.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CircleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCircle" substitutionGroup="Circle"/>

  <xs:attributeGroup name="CircleAttributes">

    <xs:attributeGroup ref="ShapeAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ColorPicker">
    <xs:annotation>
      <xs:documentation>This dialog allows the user to select a predefined color or define his
        own color.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ColorPickerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiColorPicker" substitutionGroup="ColorPicker"/>

  <xs:attributeGroup name="ColorPickerAttributes">

    <xs:attributeGroup ref="DialogAttributes"/>

    <xs:attribute name="rgbString" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The rgb string ("rgb(255,255,255)") describing the selected color.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rgb" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The rgb triplet describing the selected color.
          The rgb triplet is an object with r (0 - 255), g (0 - 255) and b (0 - 255) fields
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="hsl" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The hsl triplet describing the selected color.
          The hsl triplet is an object with h (0 - 360), s (0 - 1) and l (0 - 1) fields
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this color picker. If this is set to null
          then the static string bundle forBiColorPicker is used
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event fires continiously when the user changes the color.
          If you want to know when the user closes the dialog use the
          dialogresult
          event inherited from the BiDialog.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ColumnChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a column chart for the given series

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ColumnChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiColumnChart" substitutionGroup="ColumnChart"/>

  <xs:attributeGroup name="ColumnChartAttributes">

    <xs:attributeGroup ref="AbstractChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ColumnChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a column chart for the given series

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ColumnChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiColumnChart2" substitutionGroup="ColumnChart2"/>

  <xs:attributeGroup name="ColumnChart2Attributes">

    <xs:attributeGroup ref="AbstractChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="ColumnChartSection">
    <xs:annotation>
      <xs:documentation>
        This class handles the components used to show the rectangles for a
        column chart.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ColumnChartSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiColumnChartSection" substitutionGroup="ColumnChartSection"/>

  <xs:attributeGroup name="ColumnChartSectionAttributes">

    <xs:attributeGroup ref="AbstractChartSectionAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ColumnChartSection2">
    <xs:annotation>
      <xs:documentation>
        This class handles the components used to show the rectangles for a
        column chart.
        This is used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ColumnChartSection2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiColumnChartSection2" substitutionGroup="ColumnChartSection2"/>

  <xs:attributeGroup name="ColumnChartSection2Attributes">

    <xs:attributeGroup ref="AbstractChartSection2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="ComboBox">
    <xs:annotation>
      <xs:documentation>This class represents a combo box.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ComboBoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiComboBox" substitutionGroup="ComboBox"/>

  <xs:attributeGroup name="ComboBoxAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="sortType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets built in sort method to use to sort the combobox items, this
          property is only used in the absence of a custom sort method.
          Valid settings are: (seeBiSort for more details)
          string caseInsensitiveString number date - Uses the native JS Date type
          To get better control over the sorting, set the sortFunction property
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortFunction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - Compare function used to sort combobox items. The function
          takes two arguments and returns a number (just like the normal
          comparison function used when sorting arrays in JavaScript).
          If this property is not set, it uses the predefined
          functions set by the sortType property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedItem" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComboBoxItem - The selected combo box item. If no item is selected this will be null.
          When this changes the change event fires.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the currently selected item. -1 if none.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - This is the userValue of the selected combo box item.
          If no item is selected then this returns null.
          When setting this, the first item with the given user value will be selected.
          If no item has this value the selection will not change.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - Deprecated. Use userValue instead.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="editable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the text field can be edited</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dropDownVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the combo box is displaying its drop-down list.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dropDownWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The desired width of the drop-down list.
          The width of the drop-down is always greater than or equal to the width of the combo box.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text shown in the combo box.
          This can be used to find the text that the user is currently typing into the text field of the combo box.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="validator" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - A function that is used to validate the text</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="invalidMessage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - A string that can be used to describe why the input is invalid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataTextField" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the column to use as the data for the text property of the combo box items.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataUserValueField" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the column to use as the data for the userValue property of the combo box items.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onactivechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the active item changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedItem changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondatabind" type="xs:string">
      <xs:annotation>
        <xs:documentation>Called after the component has been data bound</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ontextchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the text changes in the text field of the combo box. To get the new text use the text property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ComboBoxItem">
    <xs:annotation>
      <xs:documentation>This class represents an item in theBiComboBox.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ComboBoxItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiComboBoxItem" substitutionGroup="ComboBoxItem"/>

  <xs:attributeGroup name="ComboBoxItemAttributes">

    <xs:attributeGroup ref="ListItemAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Command">
    <xs:annotation>
      <xs:documentation>
        Command objects can be used to make several user interface components
        execute the command when they are invoked. Components that use the command
        object will be synchronized with the properties of the command. For example,
        if a button has a disabled command the button will also be disabled.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CommandAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCommand" substitutionGroup="Command"/>

  <xs:attributeGroup name="CommandAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="enabled">
      <xs:annotation>
        <xs:documentation>
          Whether the command is enabled or not
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="checked">
      <xs:annotation>
        <xs:documentation>
          The checked state of the command. This is usually used to synchronize
          the checked property of the components using this command (such as
          BiRadioButton,
          BiCheckBox and others).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue">
      <xs:annotation>
        <xs:documentation>
          The user value of the command. This is usually used to synchronize
          the user values of the components using this command (such as
          BiRadioGroup and
          BiComboBox).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="shortcut">
      <xs:annotation>
        <xs:documentation>
          The keyboard shortcut used to execute the command. The format for
          the shortcut is:
          Ctrl+Shift+Alt+k
          You can also use the static fields of BiKeyboardEvent
          for describing the key codes:

          Shift+Del
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="keyCode">
      <xs:annotation>
        <xs:documentation>
          This gives a bit more detail than the shortcut property because
          there are cases where there is no name for the key. Use shortcut
          whenever possible and fall back on keyCode when needed. If keyCode
          is provided only the modifiers from the shortcut is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onexecute" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This is fired when the command is executed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onenabledchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This is fired when the enabled property is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncheckedchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This is fired when the checked property is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onuservaluechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This is fired when the userValue property is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onshortcutchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This is fired when the shortcut property is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Component">
    <xs:annotation>
      <xs:documentation>This is the core class for all visual components in Bindows.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
        <!--<xs:group ref="iv:ElementsAllowedExternally"/>-->
      </xs:choice>
      <xs:attributeGroup ref="ComponentAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiComponent" substitutionGroup="Component"/>

  <xs:attributeGroup name="ComponentAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="parent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - Returns the parent component. This is the component that the
          current component was added to. If the current component has not
          been added to any component this returns null. If the real
          parent component is anonymous then this returns the first non anonymous
          ancestor.
          When setting this the component is added last to the new parent. If you set
          this to null the component is removed from its current parent
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="children" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent[] - The components added to the current component. This does not include anonymous
          children.
          When setting this all the old children are first removed and disposed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="foreColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The foreground color name. The supported color names follows CSS2.1</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="backColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The background color name. The supported color names follows CSS2.1</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="zIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The z index of the component. A higher z index means that the component will
          cover components with lower z index and therefore appear to be closer to
          the user.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="visible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the component is visible or not. Note that all the ancestors must be
          visible for the component to be actually shown. Use isVisible to
          check that the component is shown.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cursor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the cursor to show when the mouse pointer is over the component.
          This is any valid CSS2 cursor name.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="backgroundImage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI of the image file to use as background image.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="opacity" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the opacity for the component. Any child component inside the
          component will also become transparent. The value should be a
          number between 0 and 1 where 1 means totally opaque and 0 invisible.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="left" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The left position relative to the parent inner edge.
          When using get the return value is always a number
          representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="right" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The right position relative to the parent inner edge. When using
          right a width should also be set. When using get the
          return value is always a number representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="top" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The top position relative to the parent inner edge.
          When using get the return value is always a number
          representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottom" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The bottom position relative to the parent inner edge. When using
          bottom a height should also be set. When using get the
          return value is always a number representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the component. When using get the return value is
          always a number representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="height" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of the component. When using get the return value is
          always a number representing the pixel value.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="preferredWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired width of the component. This is usually the
          size of the content plus the borders.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="preferredHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired height of the component. This is usually the
          size of the content plus the borders.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimumWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired minimum width of the component. This does not
          limit the size but is used by some components as a layout hint.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximumWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired maximum width of the component. This does not
          limit the size but is used by some components as a layout hint.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimumHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired minimum height of the component. This does not
          limit the size but is used by some components as a layout hint.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximumHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Returns the desired maximum height of the component. This does not
          limit the size but is used by some components as a layout hint.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="border" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiBorder - The border property describes how to paint the border on the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="marginLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The left margin for the component. Margins are used by some layout managers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="marginRight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The right margin for the component. Margins are used by some layout managers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="marginTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The top margin for the component. Margins are used by some layout managers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="marginBottom" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The bottom margin for the component. Margins are used by some layout managers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clipLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is the clip left value. When this is set the shown region of the component
          starts this many pixels from the left.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clipTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is the clip top value. When this is set the shown region of the component
          starts this many pixels from the top.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clipWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is the width of the shown region when the component is clipped.
          A value of null means the entire (remaining) width is shown.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clipHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is the height of the shown region when the component is clipped.
          A value of null means the entire (remaining) height is shown.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="overflow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Describes how to handle content that is too large to fit inside
          the component. hidden - The content is clipped auto - Scroll bars are shown as needed scroll - Scroll bars are always shown. Even
          if there
          is enough room for the content inside the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="overflowX" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes how to handle content that is too large to fit inside
          the component. This only covers the horizontal overflow. hidden - The content is clipped auto - Scroll bars are shown as needed
          scroll - Scroll bars are always shown. Even if there
          is enough room for the content inside the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="overflowY" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes how to handle content that is too large to fit inside
          the component. This only covers the vertical overflow hidden - The content is clipped auto - Scroll bars are shown as needed
          scroll - Scroll bars are always shown. Even if there
          is enough room for the content inside the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the content relative to the view port of the component. This
          is the distance the view port has scrolled horizontally.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the content relative to the view port of the component. This
          is the distance the view port has scrolled vertically.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="tabIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Setting this to less than 0 prevents the component from becoming
          focusable. The tab index is used to tell in what order to focus
          the components when naviagting between components using the tab key.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="hideFocus" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to hide the dotted outline that the OS usually draws around focused
          components.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="focused" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If the component can be focused then this makes the component
          focused (if set to true). If the component was focused
          and this is set to false then the component is blurred.
          Changing this fires the focus
          and blur events (depending on the
          previous state).
          A disabled component cannot recieve focus.
          To be able to recieve focus the tabIndex
          must be greater or equal to 0.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="focusManager" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiFocusManager - The focus manager that handles focus inside the component. This is usually
          null forBiComponent and the focus is usually handled by some
          ancestor.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="canSelect" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether textual content is selectable</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="enabled" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the component is enabled or not. When this is changed the
          component fires the enabledchanged event.
          A disabled component cannot recieve focus.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="capture" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - This is true when the component is set to capture all mouse events even if
          the mouse pointer is outside the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accessKey" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The key, in combination with the Alt key, that will activate the component.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="contextMenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiMenu - If set then this is the menu that will be shown
          when the user right clicks (or uses some other UI mechanism) to bring up
          a context menu. Set this to null when no contex menu
          is desired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="name" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name does not have any real meaning except that it can be useful to
          identify the component
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toolTip" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiToolTip - Sets the tool tip to show when the user hovers the component.
          Setting this to null prevents a tooltip from beeing shown (unless
          toolTipText is set.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toolTipText" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets the tool tip text to show when the user hovers the component.
          This allows a simple plain text tool tip to be shown. This property
          is preferred over the toolTip property when the extra
          functionality provided by the BiToolTip
          instance is not needed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightToLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Describes whether the component should be be layed out to support
          locales using right-to-left fonts. If this is set to null
          then the rightToLeft property for the parent component
          is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="command" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiCommand - Commands are used to make more than one component trigger the
          same action. Commands also synchronize different properties on
          the components using the command.BiComponent only synchronizes
          the enabled property with the command. Sub classes
          that have a value property usually synchronizes that as well.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dropDataTypes" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The data type that are supported when dropping on the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cssClassName" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The CSS class name for the element representing the component.
          This should be used with caution since in some cases this might give unrespected results.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="appearance" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets the appearance on the component. This allows a theme to do custom
          styling of the component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onresize" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when a created component
          changes its size.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onenabledchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the enabled
          property is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncreate" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the component has been
          created and inserted into the document. When it is
          fired it is quaranteed that the component has been
          inserted into a application
          window and at that time it has a visual representation.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onlosecapture" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired if the component has taken
          the capture but for some reason lost it.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onscroll" type="xs:string">
      <xs:annotation>
        <xs:documentation>When the user scrolls the component scroll
          events are continuously fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfocus" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the component becomes focused.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfocusin" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the component becomes focused.
          This event is fired before the focus event
          and unlike the focus event it bubbles up
          to the parent component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfocusout" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the component loses focus. This
          event is fired before the blur event and
          unlike the blur event it bubbles up to the
          parent component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onblur" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired by a focused compinent when it loses focus.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onkeydown" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired by the component when it is focused
          and the user presses down a key on the keyboard. This event
          then bubbles up to ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onkeypress" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is continuously fired by the component when it
          is focused and the user holds down a key on the keyboard.
          This event then bubbles up to ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onkeyup" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired by the component when it is focused
          and the user releases a key on the keyboard. This event
          then bubbles up to ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onclick" type="xs:string">
      <xs:annotation>
        <xs:documentation>When the user clicks on a component it fires this event.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncontextmenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user wants to show the context
          menu. This is usually done by right clicking on the component
          but can be done in several different ways depending on the
          users operating system. This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondblclick" type="xs:string">
      <xs:annotation>
        <xs:documentation>When the user double clicks on a component it fires this event.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmousedown" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the user presses down a mouse button on a
          component. This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmousemove" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the user moves the mouse and the pointer
          is over the current component. This event bubbles to the
          ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmouseout" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the mouse pointer leaves the component.
          relatedTarget
          can be used to find the component that was entered.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmouseover" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the mouse pointer enters a component.
          relatedTarget
          can be used to find the component that was left.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmouseup" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the user releases a mouse button on the
          component. This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmousewheel" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user scrolls the mouse wheel over the
          component. This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragstart" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user starts to drag a component.
          Call startDrag
          on the event object to initiate a drag'n drop session.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragover" type="xs:string">
      <xs:annotation>
        <xs:documentation>When doing drag'n drop this is fired when the user drags over
          the component. This is similar to mouseover except
          that it only happens on valid drop targets during a drag'n drop
          sessions. The relatedTarget points to the component
          of the drag'n drop session that was left (if any).
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragout" type="xs:string">
      <xs:annotation>
        <xs:documentation>When doing drag'n drop this is fired when the mouse pointer
          leaves the component. This is similar to mouseout
          except that it only happens on valid drop targets during a
          drag'n drop sessions. The relatedTarget points to the component
          of the drag'n drop session that was entered (if any).
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragmove" type="xs:string">
      <xs:annotation>
        <xs:documentation>When doing drag'n drop this is fired when the mouse pointer
          moves over the component. This is similar to mousemove
          except that it only happens on valid drop targets during a
          drag'n drop sessions.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragdrop" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the user drops something on the component.
          This is only fired by valid drop targets for the drag'n drop
          session. The relatedTarget points to the source
          of the drag'n drop session.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondragend" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired on the component that the user started the drag on
          when the drag and drop session ends. If the drag'n drop was
          successful then the relatedTarget is the component
          where the drag'n drop started. If the drag'n drop failed the
          relatedTarget
          is null.
          This event bubbles to the ancestors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ComponentAnimation">
    <xs:annotation>
      <xs:documentation>This class is the basis for all animations. Typically you don't work with this class directly, but
        instead use one of it's subclasses. You will need to use some methods here, common to all animations.
        Such as start and stop for example.
        If you want to create a completely new type of animation, however you need to be aware of the specifics
        of this class.BiComponentAnimation generates values in a specified range a certain number of times per second.
        This is useded to drive the value of properties to create animation. It is possible to have several
        different value ranges which each can have various properties like speed and acceleration behavior.
        Predefined acceleration curves exist to simulate acceleration and deceleration.
        To animate, you create aBiComponentAnimation object and setup parameters as needed. You then
        registerBiComponents with it. When you start the animation, all registeredBiComponents will
        be animated in the same way. If you need different animation behaviors for differentBiComponents
        you will have to create differentBiComponentAnimation objects with different properties.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ComponentAnimationAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiComponentAnimation" substitutionGroup="ComponentAnimation"/>

  <xs:attributeGroup name="ComponentAnimationAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="frameRate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number : Current frame rate, Frames Per Second. - Current frame rate.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="looping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Turns looping on.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="autoStart" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If animation should start automatically once the first component is added.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="generator" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiFpsGenerator - Accesses the frame generator that drives the animation.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onanimationend" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the animation has played through completely.
          Once per loop iteration if looping is active.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onframeprogression" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired upon every new frame</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="CssLoader">
    <xs:annotation>
      <xs:documentation>This class loads and executes a CSS file
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="CssLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiCssLoader" substitutionGroup="CssLoader"/>

  <xs:attributeGroup name="CssLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI (location) of the file to load. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the file has been loaded</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="DataColumn">
    <xs:annotation>
      <xs:documentation>This class represents a data column of a data
        table.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DataColumnAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDataColumn" substitutionGroup="DataColumn"/>

  <xs:attributeGroup name="DataColumnAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="dataType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the type that values in this column has.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="defaultValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The default value for items in this column. This may be
          used by the BiDataRow.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="DataRow">
    <xs:annotation>
      <xs:documentation>This class represents a row in aBiDataTable.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DataRowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDataRow" substitutionGroup="DataRow"/>

  <xs:attributeGroup name="DataRowAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="DataSet">
    <xs:annotation>
      <xs:documentation>This class represents a data set. A data set contains
        tables, which
        consists of columns and
        rows.

        @option
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DataSetAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDataSet" substitutionGroup="DataSet"/>

  <xs:attributeGroup name="DataSetAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>


  </xs:attributeGroup>

  <xs:element name="DataSetDataModel">
    <xs:annotation>
      <xs:documentation>This is a data model forBiTreeView that takes aBiDataSet as the data
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DataSetDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDataSetDataModel" substitutionGroup="DataSetDataModel"/>

  <xs:attributeGroup name="DataSetDataModelAttributes">

    <xs:attributeGroup ref="TreeViewDataModelAttributes"/>

    <xs:attribute name="dataSet" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDataSet/BiDataSetTable - The data set to use as the data for the model</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondatastructurechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired after a major
          data structure change
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforedatastructurechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event happens before
          the data has actually changed. This
          happens before datastructurechanged
          event and the old data is still available.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="DataTable">
    <xs:annotation>
      <xs:documentation>This class represents a data table inside a data set. A data table
        consists of columns and
        rows.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DataTableAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDataTable" substitutionGroup="DataTable"/>

  <xs:attributeGroup name="DataTableAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="DateFormat">
    <xs:annotation>
      <xs:documentation>This class is used to format and parse dates. It is based on the Java class
        SimpleDateFormat.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DateFormatAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDateFormat" substitutionGroup="DateFormat"/>

  <xs:attributeGroup name="DateFormatAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="dateFormatSymbols" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDateFormatSymbols - The date format symbols used to define how to parse and format strings and
          dates
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="pattern" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The pattern to use when formatting and parsing</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="localizedPattern" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The pattern using localized pattern characters</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="lenient" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true parsing will try to parse the string even
          though it does not correctly match the given pattern. For example it will
          try to use the Javascript Date parse method.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="DateFormatSymbols">
    <xs:annotation>
      <xs:documentation>A class that provides locale specific date strings and date patterns. The
        specific strings to use are provided by a staticBiStringBundle. This calss
        is based on the Java class
        DateFormatSymbols.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DateFormatSymbolsAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDateFormatSymbols" substitutionGroup="DateFormatSymbols"/>

  <xs:attributeGroup name="DateFormatSymbolsAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="amPmStrings" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the am pm strings</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="eras" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing strings representing the eras berfore and after
          year zero.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="localePatternChars" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is a string the localized pattern charaters. This allows the pattern
          to use other characters than the default to identify the different parts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="months" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the full month names</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="shortMonths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the short month names</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="weekdays" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the weekday names</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="shortWeekdays" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the short weekday names</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="datePatterns" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the short and long date pattern</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="timePatterns" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the short and long time pattern</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dateTimePatterns" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - This is an array containing the short and long date time pattern</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="firstWeekday" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The weekday that starts the week. 0 is Sunday and 6 is Saturday. Setting this
          to 1 means that Monday starts the week just like in ISO.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="redWeekdays" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The days of the week that are considered red. 0 is Sunday and 6 is Saturday. Setting this
          to [0] means that Sundays will be considered red days.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightToLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Returns whether right to left should be used for this language</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="DatePicker">
    <xs:annotation>
      <xs:documentation>This component provides a text field where one can write a date and a popup
        containing aBiCalendar that allows one to pick a date.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DatePickerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDatePicker" substitutionGroup="DatePicker"/>

  <xs:attributeGroup name="DatePickerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - Getter for the maximum selectable date.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - Getter for the minimum selectable date.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedDate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The selected date</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dateFormat" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDateFormat - The object describing how to parse and format dates</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dropDownVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the calendar part is visible or not</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text shown in the text field part of the date picker. Setting
          this causes the text to be parsed and this might trigger a change
          event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="validator" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - A function that is used to validate the text</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="invalidMessage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - A string that can be used to describe why the input is invalid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ontextchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the text in the text field
          is changed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the user clicks to select
          a date or when the enter key is pressed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the selecetd date changes</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the calendar is shown.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onhide" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the calendar is hidden.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="DesktopPane">
    <xs:annotation>
      <xs:documentation>A special container that can be used to add internal
        windows to. The desktop pane has a
        window manager that provides some
        extra features for the windows inside the desktop pane.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DesktopPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDesktopPane" substitutionGroup="DesktopPane"/>

  <xs:attributeGroup name="DesktopPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Dialog">
    <xs:annotation>
      <xs:documentation>This class is used for dialog windows. Dialog windows are internal windows
        that require immediate attention. Dialog windows are modal to the application.
        Example usage: var confirm = newBiDialog("Are you sure");
        // add components to the dialog
        confirm.addEventListener("dialogresult", this.doSomething, this);
        confirm.setVisible(true);
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DialogAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDialog" substitutionGroup="Dialog"/>

  <xs:attributeGroup name="DialogAttributes">

    <xs:attributeGroup ref="WindowAttributes"/>

    <xs:attribute name="dialogResult" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The value set by the dialog before it is closed. the dialogResult should be
          set by the content of the dialog before it is closed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="defaultFocusedComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - This allows you to set the component that should be focused when the dialog
          is shown. If null then the acceptButton is used for this.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="centered" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - This property decides whether to automatically center the dialog when it
          is shown
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondialogresult" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is called when the dialog is
          closed (or hidden). This is the main event
          to use with dialogs since it is fired when
          the user closes it or selects a value in it.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="DockPanel">
    <xs:annotation>
      <xs:documentation>This layout component position and sizes its children using docking guidelines.
        The children are laid out from first child to last and after a child has
        been docked to one edge the following child will be docked to remaining
        available space. Once a child sets its docking hint to "fill", the following
        will not be shown.
        To define that side the child should be docked at a so called attached property
        is used. This is a static method on theBiDockPanel. There exists a Bindows
        markup shortcut for setting these properties
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DockPanelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDockPanel" substitutionGroup="DockPanel"/>

  <xs:attributeGroup name="DockPanelAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="DragAndDropManager">
    <xs:annotation>
      <xs:documentation>This class is used to manage the drag and drop system
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DragAndDropManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDragAndDropManager" substitutionGroup="DragAndDropManager"/>

  <xs:attributeGroup name="DragAndDropManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="action" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The desired action to use for the drag and drop session</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dragIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:oComp :BiComponent The component to show - The component to use as the icon next to the cursor when doing
          drag
          and drop. When this is set to null images are shown that represents the
          action
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="DragEvent">
    <xs:annotation>
      <xs:documentation>This event is used in drag and drop sesssions
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DragEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDragEvent" substitutionGroup="DragEvent"/>

  <xs:attributeGroup name="DragEventAttributes">

    <xs:attributeGroup ref="MouseEventAttributes"/>

    <xs:attribute name="dragIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component to use as the icon next to the pointer</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="DrawAnchor">
    <xs:annotation>
      <xs:documentation>This class defines static properties that represent the anchoring locations for link lines.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DrawAnchorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDrawAnchor" substitutionGroup="DrawAnchor"/>

  <xs:attributeGroup name="DrawAnchorAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="DrawLine">
    <xs:annotation>
      <xs:documentation>This class represents a link line.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="DrawLineAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiDrawLine" substitutionGroup="DrawLine"/>

  <xs:attributeGroup name="DrawLineAttributes">

    <xs:attribute name="foreColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The color of this line.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="hoverColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The color of this line when the cursor is moved over it.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="startArrowStyle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The style of the start arrow for this line.
          Accepted values are:- circle, arrow, none
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endArrowStyle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The style of the end arrow for this line.
          Accepted values are:- circle, arrow, none
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of this line.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="type" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The type of this line.
          Accepted values are:- dotted, dashed, solid
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Event">
    <xs:annotation>
      <xs:documentation>The event class is the core class describing the event objects passed
        around in an event.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="EventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiEvent" substitutionGroup="Event"/>

  <xs:attributeGroup name="EventAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="EventManager">
    <xs:annotation>
      <xs:documentation>This is the core class for the UI event system. Attach this to a browser
        window object to forward browser events to the correct component.
        There is usually no need to use this class. It is created as needed by the
        core components
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="EventManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiEventManager" substitutionGroup="EventManager"/>

  <xs:attributeGroup name="EventManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="allowBrowserContextMenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to allow the browser's default context menu</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="captureComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that currently has the mouse capture. It is
          better to call setCapture
          on the component directly.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="EventTarget">
    <xs:annotation>
      <xs:documentation>This class provides the functionality to add and remove event listeners
        as well as dispatch events. When an event is dispatched the listeners
        are notified.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="EventTargetAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiEventTarget" substitutionGroup="EventTarget"/>

  <xs:attributeGroup name="EventTargetAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

  </xs:attributeGroup>

  <xs:element name="FlowPanel">
    <xs:annotation>
      <xs:documentation>This layout component flows its children from left to right and wraps to
        the next row when no more children can fit on the current row. This
        layout component uses the preferred size and it also takes margins into
        account and uses margin collapsing so that two adjacent children share the
        larger margin.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FlowPanelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFlowPanel" substitutionGroup="FlowPanel"/>

  <xs:attributeGroup name="FlowPanelAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The align property decides how to size and position the children. This
          describes the size and position in the in the ortogonal direction of the
          box orientation. For a
          horizontal box this describes the height and top position and for a vertical
          layout this describes the width and left position
          Valid values are:
          stretch
          start
          center
          end
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="vAlign" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The vAlign property decides how to position the lines of children if there
          is any remaining vertical space.
          Valid values are:
          start/top
          center
          end/bottom
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="baselineAlign" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The baseline align describes how to do the vertical align of the items on
          a row. This can be set for individual children as well using the attached
          property.
          Valid values are:
          start/top
          center
          end/bottom
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="wrap" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to wrap the children to a new line if there isn't enough space to
          put them all on the same line.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="FocusElementWrapper">
    <xs:annotation>
      <xs:documentation>This class is used when tabbing between Bindows components and plain HTML
        elements. It creates an interface that is a subset ofBiComponent with the
        required method needed to work with theBiFocusManager
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FocusElementWrapperAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFocusElementWrapper" substitutionGroup="FocusElementWrapper"/>

  <xs:attributeGroup name="FocusElementWrapperAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="focused" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If the component can be focused then this makes the component
          focused (if set to true). If the component was focused
          and this is set to false then the component is blurred.
          Changing this fires the focus
          and blur events (depending on the
          previous state).
          A disabled component cannot recieve focus.
          To be able to recieve focus the tabIndex
          must be greater or equal to 0.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="FocusEvent">
    <xs:annotation>
      <xs:documentation>This class describes event objects used in focus events.
        The focusin and focusout events bubble by default,
        focus and blur do not.
        All mouse events bubble by default. This means that once all the
        event listeners have been notified the event propagates to the parent
        BiComponent. To prevent the event to
        bubble to the parent call
        stopPropagation() on the event object.
        The currently supported events by BiComponent
        are: focus blur focusin focusout
        The order these events occur, when a focused component is left and another
        focused component takes the focus, is the following: focusout focusin blur focus
        This object should not be created by the user. It is created as needed by the event system.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FocusEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFocusEvent" substitutionGroup="FocusEvent"/>

  <xs:attributeGroup name="FocusEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="FocusManager">
    <xs:annotation>
      <xs:documentation>This class handles the focus management in Bindows
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FocusManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFocusManager" substitutionGroup="FocusManager"/>

  <xs:attributeGroup name="FocusManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Font">
    <xs:annotation>
      <xs:documentation>
        This class is used with BiLabel to provide
        the font style information.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FontAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFont" substitutionGroup="Font"/>

  <xs:attributeGroup name="FontAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="size">
      <xs:annotation>
        <xs:documentation>The font size (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bold">
      <xs:annotation>
        <xs:documentation>Whether to use bold</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="italic">
      <xs:annotation>
        <xs:documentation>Whether to use italic</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="underline">
      <xs:annotation>
        <xs:documentation>Whether to underline the text</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="strikeout">
      <xs:annotation>
        <xs:documentation>Whether to line through the text</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="name">
      <xs:annotation>
        <xs:documentation>The name of the font. A comma seprated list also works</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="FpsGenerator">
    <xs:annotation>
      <xs:documentation>Frame generation engine, used for animation.
        Each animation can have it's ownBiFpsGenerator or it can use the globalBiFpsGenerator.
        Different animations can share the global generator, which saves system resources.
        Use the factory method, instead of the constructor, to get the global generator.
        The frame generator generates FrameProgressionEvents a certain
        number of times per second, as specified by the framerate.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FpsGeneratorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFpsGenerator" substitutionGroup="FpsGenerator"/>

  <xs:attributeGroup name="FpsGeneratorAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="frameRate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the frame rate.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onframeprogression" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired upon every new frame</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="FrameProgressionEvent">
    <xs:annotation>
      <xs:documentation>Event that denotifies a new frame during animation.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="FrameProgressionEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiFrameProgressionEvent" substitutionGroup="FrameProgressionEvent"/>

  <xs:attributeGroup name="FrameProgressionEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge">
    <xs:annotation>
      <xs:documentation>
        This control displays a gauge.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge" substitutionGroup="Gauge"/>

  <xs:attributeGroup name="GaugeAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="minimumAngle">
      <xs:annotation>
        <xs:documentation>The angle where the minimum value is located</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximumAngle">
      <xs:annotation>
        <xs:documentation>The angle where the minimum value is located</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="majorTickInterval">
      <xs:annotation>
        <xs:documentation>The distance between the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorTickInterval">
      <xs:annotation>
        <xs:documentation>The distance between the minor ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labelInterval">
      <xs:annotation>
        <xs:documentation>The difference between the labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="warningValue">
      <xs:annotation>
        <xs:documentation>This shows a red section on the gauge between the warning value and the maximum value</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showLabels">
      <xs:annotation>
        <xs:documentation>Whether to show the text labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMajorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the major ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinorTicks">
      <xs:annotation>
        <xs:documentation>Whether to show the minor ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showWarningSection">
      <xs:annotation>
        <xs:documentation>Whether to show the red section between the warning value and the maximum value</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum">
      <xs:annotation>
        <xs:documentation>The maximum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum">
      <xs:annotation>
        <xs:documentation>The minimum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value">
      <xs:annotation>
        <xs:documentation>The value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="plate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugePlate - The plate of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minorTicks" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugeMinorTicks - The minor ticks of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="majorTicks" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugeMajorTicks - The major ticks of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="needle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugeNeedle - The needle of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="title" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugeTitle - The title of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labels" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiGaugeLabels - The labels of the gauge</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2">
    <xs:annotation>
      <xs:documentation>The gauge2 class, encapsulating the gauge2 structure
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2" substitutionGroup="Gauge2"/>

  <xs:attributeGroup name="Gauge2Attributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="coordWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Coord width is the inner coord vertical max value</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="coordHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Coord width is the inner coord horizontal max value</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2BasicCap">
    <xs:annotation>
      <xs:documentation>This class creates a basic round cap
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2BasicCapAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2BasicCap" substitutionGroup="Gauge2BasicCap"/>

  <xs:attributeGroup name="Gauge2BasicCapAttributes">

    <xs:attributeGroup ref="AbstractGauge2CapAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2CircularBorder">
    <xs:annotation>
      <xs:documentation>This class creates an circular border.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2CircularBorderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2CircularBorder" substitutionGroup="Gauge2CircularBorder"/>

  <xs:attributeGroup name="Gauge2CircularBorderAttributes">

    <xs:attributeGroup ref="AbstractGauge2BorderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2Component">
    <xs:annotation>
      <xs:documentation>This class is the base of all classes residing inside aBiGauge2Group
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2ComponentAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2Component" substitutionGroup="Gauge2Component"/>

  <xs:attributeGroup name="Gauge2ComponentAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2Group">
    <xs:annotation>
      <xs:documentation>BiGauge2Group representing the main gauge2 vector graphic group
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2GroupAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2Group" substitutionGroup="Gauge2Group"/>

  <xs:attributeGroup name="Gauge2GroupAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2ImageBorder">
    <xs:annotation>
      <xs:documentation>This class creates an image border
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2ImageBorderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2ImageBorder" substitutionGroup="Gauge2ImageBorder"/>

  <xs:attributeGroup name="Gauge2ImageBorderAttributes">

    <xs:attributeGroup ref="AbstractGauge2BorderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2Label">
    <xs:annotation>
      <xs:documentation>This class is used for creating labels
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LabelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2Label" substitutionGroup="Gauge2Label"/>

  <xs:attributeGroup name="Gauge2LabelAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="centerX" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The centerX property represents the x coordinate of the center of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="centerY" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The centerY property represents the y coordinate of the center of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text shown on the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labelSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The label size</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2LinearGradientFiller">
    <xs:annotation>
      <xs:documentation>This class creates a radial linear fill of theBiGauge2Component.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LinearGradientFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2LinearGradientFiller" substitutionGroup="Gauge2LinearGradientFiller"/>

  <xs:attributeGroup name="Gauge2LinearGradientFillerAttributes">

    <xs:attributeGroup ref="AbstractGauge2GradientFillerAttributes"/>

    <xs:attribute name="angle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The angle of the linear filler</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2LinearNeedle">
    <xs:annotation>
      <xs:documentation>This class creates a linear needle.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LinearNeedleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2LinearNeedle" substitutionGroup="Gauge2LinearNeedle"/>

  <xs:attributeGroup name="Gauge2LinearNeedleAttributes">

    <xs:attributeGroup ref="AbstractGauge2ValueMarkerAttributes"/>

    <xs:attribute name="angle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The angle of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="needlePosition" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="needleBase" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The base width of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="needleHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2LinearRange">
    <xs:annotation>
      <xs:documentation>This class creates a radial range. The child "ticks" and "scales" inherits the angle.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LinearRangeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2LinearRange" substitutionGroup="Gauge2LinearRange"/>

  <xs:attributeGroup name="Gauge2LinearRangeAttributes">

    <xs:attributeGroup ref="AbstractGauge2RangeAttributes"/>

    <xs:attribute name="angle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Angle of the lineear range.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2LinearScale">
    <xs:annotation>
      <xs:documentation>This class is used for creating linear scales
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LinearScaleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2LinearScale" substitutionGroup="Gauge2LinearScale"/>

  <xs:attributeGroup name="Gauge2LinearScaleAttributes">

    <xs:attributeGroup ref="AbstractGauge2ScaleAttributes"/>

    <xs:attribute name="labelSpace" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The space between labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labelPosition" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the labels</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="angle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The angle of the scale</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2LinearTicks">
    <xs:annotation>
      <xs:documentation>This class layout it's ticks in radial manner depeding on radius, start angle and end angle
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2LinearTicksAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2LinearTicks" substitutionGroup="Gauge2LinearTicks"/>

  <xs:attributeGroup name="Gauge2LinearTicksAttributes">

    <xs:attributeGroup ref="AbstractGauge2TicksAttributes"/>

    <xs:attribute name="angle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Angle of the line on wich the ticks will be placed</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="tickSpace" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The space between ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2PlainColorFiller">
    <xs:annotation>
      <xs:documentation>This class creates a plain color filler
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2PlainColorFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2PlainColorFiller" substitutionGroup="Gauge2PlainColorFiller"/>

  <xs:attributeGroup name="Gauge2PlainColorFillerAttributes">

    <xs:attributeGroup ref="AbstractGauge2FillerAttributes"/>

    <xs:attribute name="color" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The color that the filler is going to use.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RadialGradientFiller">
    <xs:annotation>
      <xs:documentation>This class creates a radial gradient fill of theBiGauge2Component.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RadialGradientFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RadialGradientFiller" substitutionGroup="Gauge2RadialGradientFiller"/>

  <xs:attributeGroup name="Gauge2RadialGradientFillerAttributes">

    <xs:attributeGroup ref="AbstractGauge2GradientFillerAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Gauge2RadialNeedle">
    <xs:annotation>
      <xs:documentation>This class creates a radial needle
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RadialNeedleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RadialNeedle" substitutionGroup="Gauge2RadialNeedle"/>

  <xs:attributeGroup name="Gauge2RadialNeedleAttributes">

    <xs:attributeGroup ref="AbstractGauge2ValueMarkerAttributes"/>

    <xs:attribute name="outerRadius" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Outer radius of the needle.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="innerRadius" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Inner radius of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="innerWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:EDIT_THIS - The inner width of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="outerWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:EDIT_THIS - The outer width of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The value of the needle.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RadialRange">
    <xs:annotation>
      <xs:documentation>This class creates a radial range. The child "ticks" and "scales" inherits the start- and end angles.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RadialRangeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RadialRange" substitutionGroup="Gauge2RadialRange"/>

  <xs:attributeGroup name="Gauge2RadialRangeAttributes">

    <xs:attributeGroup ref="AbstractGauge2RangeAttributes"/>

    <xs:attribute name="startAngle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The startAngle of the range, this angle is where the radial range starts.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endAngle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The endAngle of the range, this angle is where the radial range ends.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RadialScaleSection">
    <xs:annotation>
      <xs:documentation>This class creates a radius scale
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RadialScaleSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RadialScaleSection" substitutionGroup="Gauge2RadialScaleSection"/>

  <xs:attributeGroup name="Gauge2RadialScaleSectionAttributes">

    <xs:attributeGroup ref="AbstractGauge2ScaleSectionAttributes"/>

    <xs:attribute name="radius" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The radius</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RadialTicks">
    <xs:annotation>
      <xs:documentation>This class layout it's ticks in radial maner depeding on radius, start angle and end angle
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RadialTicksAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RadialTicks" substitutionGroup="Gauge2RadialTicks"/>

  <xs:attributeGroup name="Gauge2RadialTicksAttributes">

    <xs:attributeGroup ref="AbstractGauge2TicksAttributes"/>

    <xs:attribute name="startAngle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The start angle of the ticks</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endAngle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The end angle of the ticks.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="radius" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The radius of the circle on wich the ticks is placed.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RectangularBorder">
    <xs:annotation>
      <xs:documentation>This class creates a rectangular border
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RectangularBorderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RectangularBorder" substitutionGroup="Gauge2RectangularBorder"/>

  <xs:attributeGroup name="Gauge2RectangularBorderAttributes">

    <xs:attributeGroup ref="AbstractGauge2BorderAttributes"/>

    <xs:attribute name="rotation" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The rotation angle of the rectangular border</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Gauge2RingGradientFiller">
    <xs:annotation>
      <xs:documentation>This class creates a radial gradient fill of theBiGauge2Component.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Gauge2RingGradientFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGauge2RingGradientFiller" substitutionGroup="Gauge2RingGradientFiller"/>

  <xs:attributeGroup name="Gauge2RingGradientFillerAttributes">

    <xs:attributeGroup ref="AbstractGauge2GradientFillerAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GaugeLabels">
    <xs:annotation>
      <xs:documentation>
        This component is used to show the labels (the tick labels) for a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeLabelsAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeLabels" substitutionGroup="GaugeLabels"/>

  <xs:attributeGroup name="GaugeLabelsAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GaugeMajorTicks">
    <xs:annotation>
      <xs:documentation>
        This component is used to show the major ticks for a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeMajorTicksAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeMajorTicks" substitutionGroup="GaugeMajorTicks"/>

  <xs:attributeGroup name="GaugeMajorTicksAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GaugeMinorTicks">
    <xs:annotation>
      <xs:documentation>
        This component is used to show the minor ticks for a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeMinorTicksAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeMinorTicks" substitutionGroup="GaugeMinorTicks"/>

  <xs:attributeGroup name="GaugeMinorTicksAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GaugeNeedle">
    <xs:annotation>
      <xs:documentation>
        This component is used to show the needle of a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeNeedleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeNeedle" substitutionGroup="GaugeNeedle"/>

  <xs:attributeGroup name="GaugeNeedleAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The stroke color of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The fill color of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value">
      <xs:annotation>
        <xs:documentation>The value of the needle</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GaugePlate">
    <xs:annotation>
      <xs:documentation>
        This component is used to the plate (the background circle) for a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugePlateAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugePlate" substitutionGroup="GaugePlate"/>

  <xs:attributeGroup name="GaugePlateAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="strokeColor">
      <xs:annotation>
        <xs:documentation>The color of the stroke (edge) of the plate</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fillColor">
      <xs:annotation>
        <xs:documentation>The fill color of the plate</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GaugeSection">
    <xs:annotation>
      <xs:documentation>
        This component is used to show a section for a gauge.
        A guage can have several sections and these are usually used to split
        the gaguge values into logical value ranges.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeSection" substitutionGroup="GaugeSection"/>

  <xs:attributeGroup name="GaugeSectionAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="startValue">
      <xs:annotation>
        <xs:documentation>
          The start value of the section
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endValue">
      <xs:annotation>
        <xs:documentation>
          The end value of the section
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="color">
      <xs:annotation>
        <xs:documentation>The color of the section</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GaugeTitle">
    <xs:annotation>
      <xs:documentation>
        This component is used to show the title for a gauge
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GaugeTitleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGaugeTitle" substitutionGroup="GaugeTitle"/>

  <xs:attributeGroup name="GaugeTitleAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Graph">
    <xs:annotation>
      <xs:documentation>
        This is the container used with graphs. The graph component contains
        other components for the axes, legend, charts and more.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GraphAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGraph" substitutionGroup="Graph"/>

  <xs:attributeGroup name="GraphAttributes">

    <xs:attributeGroup ref="GraphBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Graph2">
    <xs:annotation>
      <xs:documentation>
        This is a simpler graph control than BiGraph.
        BiGraph2 works in Mozilla but it is a bit
        more limited. For example, BiGraph2 does
        not support line charts nor pie charts. Gradient fills are ignored
        by BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Graph2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGraph2" substitutionGroup="Graph2"/>

  <xs:attributeGroup name="Graph2Attributes">

    <xs:attributeGroup ref="GraphBaseAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GraphBase">
    <xs:annotation>
      <xs:documentation>
        This is the abstract base class for BiGraph
        and BiGraph2. If Mozilla support is needed
        use BiGraph2. If line chart and/or pie chart
        is needed then use BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GraphBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGraphBase" substitutionGroup="GraphBase"/>

  <xs:attributeGroup name="GraphBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="autoScale">
      <xs:annotation>
        <xs:documentation>
          Allows you turn off the automatic scaling of the graph
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fontSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number -
          Sets the font size for the legend and axes. If autoScale
          is true then this does not apply.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="series" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiChartSeries[] - This is an array containing the series used for the data of the graph.
          After this property is changed the graph component needs to be updated.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="categories" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiChartCategory[] - This is an array containing the categories used for the data of the graph.
          After this property is changed the graph component needs to be updated.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="points" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiChartPoint[] - This is an array containing the points used for the data of the graph.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="chartType">
      <xs:annotation>
        <xs:documentation>
          The type of the chart. Available types are:
          bar
          column
          grid
          line
          pie
          percentagestackedbar
          percentagestackedcolum
          stackedbar
          stackedcolumn
          grid
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onpointclick" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user clicks on a point in the graph</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointcontextmenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user right clicks on a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointdblclick" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user double clicks on a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmousedown" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user presses down the mouse button on a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmousemove" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user moves the mouse over a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmouseout" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          Fires when the mouse pointer leaves a point
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmouseover" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          Fires when the mouse pointer enters a point
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmouseup" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the releases the mouse button on a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onpointmousewheel" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user scrolls the mouse wheel over a point</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="GraphContentArea">
    <xs:annotation>
      <xs:documentation>This component is used as a container for the graph content
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GraphContentAreaAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGraphContentArea" substitutionGroup="GraphContentArea"/>

  <xs:attributeGroup name="GraphContentAreaAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Grid">
    <xs:annotation>
      <xs:documentation>This component is used to display a grid (table, column list). A grid
        can show headers for both the columns and the rows. A grid also supports
        selection of whole rows as well as of individual cells.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid" substitutionGroup="Grid"/>

  <xs:attributeGroup name="GridAttributes">

    <xs:attributeGroup ref="AbstractGridAttributes"/>

    <xs:attribute name="selectionMode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets the selection mode. Allowed values are "cell" and "row".</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataSource" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDataSet /BiDataTable - The object to use as the data source. This can be a either a
          BiDataTable or aBiDataSet (in which case the first table is used).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="currentDataPage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the current data page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataPageSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount of rows to show at one time from the data source.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected row/cell changes</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondatabind" type="xs:string">
      <xs:annotation>
        <xs:documentation>Called after the component has been data bound</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Grid2">
    <xs:annotation>
      <xs:documentation>This component is a special case ofBiTreeView which has an interface which
        is similar toBiGrid
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Grid2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid2" substitutionGroup="Grid2"/>

  <xs:attributeGroup name="Grid2Attributes">

    <xs:attributeGroup ref="TreeViewAttributes"/>

    <xs:attribute name="columnCount" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of columns in the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnNames" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The text to show on the headers of the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The widths of the columns of the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnOrders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The order of the columns. This an array containing the indexes of the
          columns.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the headers for the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showRowHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the row headers for the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showGridLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show grid lines between the cells in the grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Grid2Cell">
    <xs:annotation>
      <xs:documentation>This is used for the cells in aBiGrid2Row row
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Grid2CellAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid2Cell" substitutionGroup="Grid2Cell"/>

  <xs:attributeGroup name="Grid2CellAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="data" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The data that is associated with the cell</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Grid2DataModel">
    <xs:annotation>
      <xs:documentation>This data model is to be used withBiGrid2. It uses theBiGrid2Row and
        BiGrid2Cell to provide the data
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Grid2DataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid2DataModel" substitutionGroup="Grid2DataModel"/>

  <xs:attributeGroup name="Grid2DataModelAttributes">

    <xs:attributeGroup ref="TreeViewDataModelAttributes"/>

    <xs:attribute name="treeView" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiGrid2 - The tree view the data model is acting on</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onrowcountchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event happens after
          the number of rows has changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Grid2Row">
    <xs:annotation>
      <xs:documentation>This class is used as the data for rows in theBiGrid2 component
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Grid2RowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid2Row" substitutionGroup="Grid2Row"/>

  <xs:attributeGroup name="Grid2RowAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Grid2ViewManager">
    <xs:annotation>
      <xs:documentation>This class is a special view manager to be used withBiGrid2
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Grid2ViewManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGrid2ViewManager" substitutionGroup="Grid2ViewManager"/>

  <xs:attributeGroup name="Grid2ViewManagerAttributes">

    <xs:attributeGroup ref="TreeViewViewManagerAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridCell">
    <xs:annotation>
      <xs:documentation>This class represents a cell in a grid row.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridCellAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridCell" substitutionGroup="GridCell"/>

  <xs:attributeGroup name="GridCellAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="data" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The data associated with the cell</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="backColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The background color name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="foreColor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The foreground color name</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the cell is selected or not. This should not be set when
          the selection mode for the grid is set to row selection.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridChart">
    <xs:annotation>
      <xs:documentation>
        This class is used to display a grid containing the values in a graph.
        Each series in the graph is shown as a row
        in the grid and each point is shown as a cell.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridChart" substitutionGroup="GridChart"/>

  <xs:attributeGroup name="GridChartAttributes">

    <xs:attributeGroup ref="GridAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridChartCell">
    <xs:annotation>
      <xs:documentation>
        This class is used to display a cell in a grid chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridChartCellAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridChartCell" substitutionGroup="GridChartCell"/>

  <xs:attributeGroup name="GridChartCellAttributes">

    <xs:attributeGroup ref="GridCellAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridChartRow">
    <xs:annotation>
      <xs:documentation>
        This class is used to display a row in a grid chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridChartRowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridChartRow" substitutionGroup="GridChartRow"/>

  <xs:attributeGroup name="GridChartRowAttributes">

    <xs:attributeGroup ref="GridRowAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridColumn">
    <xs:annotation>
      <xs:documentation>This class is used to describe columns forBiGrid andBiTree.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridColumnAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridColumn" substitutionGroup="GridColumn"/>

  <xs:attributeGroup name="GridColumnAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The alignment of the content inside the column.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="name" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the column. This is the same as the text shown on
          the header.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the column.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="indentColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Whether the current column is the indent column in the grid.
          This is ignored when using the columns for a non tree.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="iconColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Whether the current column is the icon column in the grid.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="visible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the column is visible or not.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The type of the data in the column. This is used to decide how
          to sort the data in the column. Built in support for the following
          types: string caseInsensitiveString number date - Uses the native JS Date type
          To get better control over the sorting create a subclass that
          overrides the sortFunction getter.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridDataModel">
    <xs:annotation>
      <xs:documentation>This data model takes an array of arrays containing the text for a grid. This data model is to be used
        withBiTreeView
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridDataModel" substitutionGroup="GridDataModel"/>

  <xs:attributeGroup name="GridDataModelAttributes">

    <xs:attributeGroup ref="TreeViewDataModelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridHeader">
    <xs:annotation>
      <xs:documentation>This represents a header cell for the
        headers of a
        grid or a tree.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridHeaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridHeader" substitutionGroup="GridHeader"/>

  <xs:attributeGroup name="GridHeaderAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="resizable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the user can resize the current header.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the user can click on the header to sort by that column.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="movable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the user can move the current header.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ascending" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true a down arrow is shown as the icon
          of the header. When false an up arrow and when
          null no icon is shown.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ascendingIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The icon to use for the sort arrow when sorting ascendingly</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="descendingIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The icon to use for the sort arrow when sorting descendingly</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridHeaderCorner">
    <xs:annotation>
      <xs:documentation>This component is used to paint the upper left corner of the headers
        in case both row headers and column headers are visible for a grid.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridHeaderCornerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridHeaderCorner" substitutionGroup="GridHeaderCorner"/>

  <xs:attributeGroup name="GridHeaderCornerAttributes">

    <xs:attributeGroup ref="GridHeaderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridHeaderFiller">
    <xs:annotation>
      <xs:documentation>This component is used to fill the headers
        in case the widths of the header cells do not cover the entire width of
        the headers.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridHeaderFillerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridHeaderFiller" substitutionGroup="GridHeaderFiller"/>

  <xs:attributeGroup name="GridHeaderFillerAttributes">

    <xs:attributeGroup ref="GridHeaderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridHeaders">
    <xs:annotation>
      <xs:documentation>This class represents the headers for a grid
        or a tree.
        The headers contain several header cells.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridHeadersAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridHeaders" substitutionGroup="GridHeaders"/>

  <xs:attributeGroup name="GridHeadersAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="fitColumnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true the column widths are distributed so that the fill the
          width of the grid
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnCount" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of columns in the header</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The widths of the cell headers in the headers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnOrders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The order in which the cell headers should be displayed in. A
          value of [2,0,1] means that the third cell comes first,
          then comes the first cell and last the second.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the column that should show the sort arrow.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ascending" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If this is true then the sorting should be done
          ascending, if false descending and if null
          no sort. This is also reflected on the ascending property for the
          header this applies to.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="oncolumnwidthschanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the column widths are changed. This happens when either
          the user has finished resized a column or the column widths are
          changed through script.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncolumnorderschanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the column orders are changed. This happens when either
          the user has reordered the columns or the order is
          changed through script.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onsortcolumnchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the sort column is changed. This happens when either
          the user has clicks on a sortable column or the sort column is
          changed through script.
          Note that when the user clicks on the currently sorted column this
          event is not fired. Instead the ascendingchanged event
          is triggered because the sorting is changed from ascending to
          descending or the other way around.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onascendingchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the ascending property changes. This happens when either
          the user clicks on a column header cell that is already sorted or
          this property is changed through script.
          Note that if the ascending property changed due to
          a change of the sortColumn this event is not fired.
          This is by design to prevent preformance issues.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncolumnwidthschanging" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the column widths are changing. This happens when
          the user is resizing a column.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="GridPanel">
    <xs:annotation>
      <xs:documentation>This layout component positions and sizes its children in a simple grid where
        the columns and rows are decided using string patterns much
        like the way the rows and cols attribute for HTML framesets decides the
        size and position of the frames.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridPanelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridPanel" substitutionGroup="GridPanel"/>

  <xs:attributeGroup name="GridPanelAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="hGap" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The horizontal gap between the columns</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="vGap" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The vertical gap between the rows</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cols" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is a string representing the column widths. It is a comma seperated
          string of column sizes. See the remarks for more info.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rows" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is a string representing the row heights. It is a comma seperated
          string of row sizes. See the remarks for more info.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridPanel2">
    <xs:annotation>
      <xs:documentation>BiGridPanel2 is a layout component based onBiGridPanel.
        It works similair to a html table. A layout is created by
        adding rows and cells to the Panel. Cells and rows can have
        padding, colspan, rowspan, alignment etc. Defaults can also
        be set on the grid panel itself.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridPanel2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridPanel2" substitutionGroup="GridPanel2"/>

  <xs:attributeGroup name="GridPanel2Attributes">

    <xs:attributeGroup ref="GridPanelAttributes"/>

    <xs:attribute name="cellPadding" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Padding for cells in the grid. Individual rows and cells can override this.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Horizontal alignment for cells in the grid. Individual rows and cells can
          override this.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="valign" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Vertical alignment for cells in the grid. Individual rows and cells can
          override this.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridPanel2Cell">
    <xs:annotation>
      <xs:documentation>A cell in aBiGridPanel2Cell
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridPanel2CellAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridPanel2Cell" substitutionGroup="GridPanel2Cell"/>

  <xs:attributeGroup name="GridPanel2CellAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="cellPadding" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Padding for a cell.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="contentComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - Component in the cell.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stretch" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:string - How the content component should be stretched.
          Possible settings are:
          none, both, horizontal, vertical
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="parent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiGridPanel2Row - The row this cell was added to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="colSpan" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - ColSpan of the cell. The cell will span colspan number of columns horizontally.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rowSpan" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Rowspan of a cell. The cell spans rowspan number of rows vertically.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The horizontal alignment of the cell. Possible values are:
          left
          center
          right
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="valign" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The vertical alignment of the cell. Possible values are:
          top
          center
          middle
          bottom
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="preferredWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The preferred width of the cell. Defaulted to the preferredWidth
          of the content component, plus any padding it needs.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="preferredHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Preferred height of the cell. Defaults to preferredHieght of the
          content component plus padding it needs.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridPanel2Row">
    <xs:annotation>
      <xs:documentation>A row of cells in aBiGridPanel2
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridPanel2RowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridPanel2Row" substitutionGroup="GridPanel2Row"/>

  <xs:attributeGroup name="GridPanel2RowAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="cellPadding" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Padding for cells in the row. Individual cells can override this.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The horizontal alignment for cells in the row. Individual cells can
          override this. SeeBiGridPanel2Cell for specific settings.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="valign" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The vertical alignment for cells in the row. Individual cells can
          override this. SeeBiGridPanel2Cell for settings.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GridRow">
    <xs:annotation>
      <xs:documentation>This class represents the rows inBiGrid. Each row contains
        cells that contains the text to show for
        the column.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridRowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridRow" substitutionGroup="GridRow"/>

  <xs:attributeGroup name="GridRowAttributes">

    <xs:attributeGroup ref="AbstractGridRowAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridRowHeaders">
    <xs:annotation>
      <xs:documentation>This component is used to paint the grid row headers for a grid.
        The component asks the BiGridRow for the HTML
        for each item by calling getRowHeaderHtml.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridRowHeadersAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridRowHeaders" substitutionGroup="GridRowHeaders"/>

  <xs:attributeGroup name="GridRowHeadersAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="GridSelectionModel">
    <xs:annotation>
      <xs:documentation>This class handles the selection of rows
        or cells in a grid.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GridSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGridSelectionModel" substitutionGroup="GridSelectionModel"/>

  <xs:attributeGroup name="GridSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>

    <xs:attribute name="selectionMode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The grid selection model supports both selection entire rows
          and individual grid cells. Valid values are:
          row
          cell
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GroupBox">
    <xs:annotation>
      <xs:documentation>This class is used for creating group boxes. A group box is a container
        with a border and possibly a title at the top.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GroupBoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGroupBox" substitutionGroup="GroupBox"/>

  <xs:attributeGroup name="GroupBoxAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="groupBoxTitle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiGroupBoxTitle - This property points to theBiGroupBoxTitle component which handles the title
          of the group box.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="titlePosition" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The position of the title. Valid values are: left center right</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets the text of the title. Setting this to null removes the title.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="GroupBoxTitle">
    <xs:annotation>
      <xs:documentation>This component is used with theBiGroupBox to handle the title.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="GroupBoxTitleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiGroupBoxTitle" substitutionGroup="GroupBoxTitle"/>

  <xs:attributeGroup name="GroupBoxTitleAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="titlePosition" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The position of the title. Valid values are: left center right</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="HashTable">
    <xs:annotation>
      <xs:documentation>This is a basci implementation of a hash table. It works around a known
        bug in IE/JScript that causes IE to leak memory when using Objects as hashes
        in javascript
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="HashTableAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiHashTable" substitutionGroup="HashTable"/>

  <xs:attributeGroup name="HashTableAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="HBox">
    <xs:annotation>
      <xs:documentation>This is a horizontalBiBox where components are laid out from left to right
        (or right to left if rightToLeft
        is true).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="HBoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiHBox" substitutionGroup="HBox"/>

  <xs:attributeGroup name="HBoxAttributes">

    <xs:attributeGroup ref="BoxAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Iframe">
    <xs:annotation>
      <xs:documentation>
        This component allows usage of an HTML 4 iframe element. This allows
        any document/file that is supported by the platform to be shown inside a
        component.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="IframeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiIframe" substitutionGroup="Iframe"/>

  <xs:attributeGroup name="IframeAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiUri -
          The URI to the file to show inside the frame. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          Happens when the iframe is loaded. Note that this might fire more
          often than one might expect so be sure to check that you really
          want your code run when the event is fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Image">
    <xs:annotation>
      <xs:documentation>This class is used for showing images.
        Supported image types are GIF, JPEG and PNG (including support for 32-bit RGBA).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImageAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImage" substitutionGroup="Image"/>

  <xs:attributeGroup name="ImageAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="alt" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The alternate text which is read out instead of the image when Bindows is
          in accessibility mode.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The location of the image file. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the image loads. Note that the image file may be
          loaded before the constructor finishes and you should not only
          rely on this event but also use loaded property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onerror" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the image failed to load.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ImageLoader">
    <xs:annotation>
      <xs:documentation>This class loads an image file to memory
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImageLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImageLoader" substitutionGroup="ImageLoader"/>

  <xs:attributeGroup name="ImageLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI (location) of the file to load. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the file has been loaded</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ImageMap">
    <xs:annotation>
      <xs:documentation>This class emulates the classic image map found in HTML.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImageMapAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImageMap" substitutionGroup="ImageMap"/>

  <xs:attributeGroup name="ImageMapAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ImageMapArea">
    <xs:annotation>
      <xs:documentation>This class represents a particular area on an image map.

        This class supports the following events:-
        mousemove
        mousedown
        mouseover
        mouseout
        click
        contextmenu
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImageMapAreaAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImageMapArea" substitutionGroup="ImageMapArea"/>

  <xs:attributeGroup name="ImageMapAreaAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="cursor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The cursor to show when the mouse hovers over this area</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ImageMapEvent">
    <xs:annotation>
      <xs:documentation>This type of event is fired when UI events (mousemove, mousedown, etc) are fired on
        the image that is associated with an image map.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImageMapEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImageMapEvent" substitutionGroup="ImageMapEvent"/>

  <xs:attributeGroup name="ImageMapEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ImagePreloader">
    <xs:annotation>
      <xs:documentation>
        This class handles preloading of an image. There will never be more than
        one instance of this class per image URI. So if there already exists a
        preloader for the given URI that will be returned.
        Since there might be other objects dependent on the current instance it
        is not a good idea to call dispose on the instance object. Disposal is
        handled by the system.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImagePreloaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImagePreloader" substitutionGroup="ImagePreloader"/>

  <xs:attributeGroup name="ImagePreloaderAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the image file loads</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onerror" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires if the image file fails to load</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ImagePreloaderManager">
    <xs:annotation>
      <xs:documentation>
        A singleton class that handles the BiImagePreloader
        instances

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ImagePreloaderManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiImagePreloaderManager" substitutionGroup="ImagePreloaderManager"/>

  <xs:attributeGroup name="ImagePreloaderManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="InlineComponent">
    <xs:annotation>
      <xs:documentation>This class is used to create components that can be used in the
        inline flow of the HTML document hosting the application.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="InlineComponentAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiInlineComponent" substitutionGroup="InlineComponent"/>

  <xs:attributeGroup name="InlineComponentAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="inlineId" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the id that the HTML element acting as the container is
          having. Don't change this after the component has been added
          to the application window.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="InlineEditModel">
    <xs:annotation>
      <xs:documentation>This class is used to handle inline editing in aBiTreeView and aBiOlapGrid.
        This class provides editing by using one attached component at a time.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="InlineEditModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiInlineEditModel" substitutionGroup="InlineEditModel"/>

  <xs:attributeGroup name="InlineEditModelAttributes">

    <xs:attributeGroup ref="AttachedComponentModelAttributes"/>

    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The value of the currently editing cell</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onbeforeshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is dispatched before the editing
          component is added to theBiTreeView component
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the value of the
          currently editing cell has changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforehide" type="xs:string">
      <xs:annotation>
        <xs:documentation>This happens before the editing component is
          hidden. If the default action is prevented here
          the component is not removed from the tree view
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onhide" type="xs:string">
      <xs:annotation>
        <xs:documentation>When the editing component has been removed/hidden.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="IpField">
    <xs:annotation>
      <xs:documentation>This component is used to enter an IPv4 address. The control consists of different text fields
        for the different parts of the address.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="IpFieldAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiIpField" substitutionGroup="IpField"/>

  <xs:attributeGroup name="IpFieldAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="ip" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The IP address that is shown in the IP field.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the enter key is pressed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the IP field is blurred
          and the text has changed since the IP field got
          focus.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfieldchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the active field of the
          component changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ontextchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the text has changed.
          This happens when the user in some way changes
          the text inside the IP field. This event
          is fired continiously as the user types.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oninvalidinput" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired if an invalid character is typed or
          invalid text is pasted into the IP field.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Json">
    <xs:annotation>
      <xs:documentation>This class is used to serialize and deserialize javascript objects from and
        to a JSON string. JSON stands for JavaScript Notation Format and you can find
        more information at http://json.org.
        When serializing objects we check if the object has a serialize
        method and if so we use that instead.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="JsonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiJson" substitutionGroup="Json"/>

  <xs:attributeGroup name="JsonAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="JsonLoader">
    <xs:annotation>
      <xs:documentation>Loads a JSON file and returns the javascript object that the JSON file
        describes.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="JsonLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiJsonLoader" substitutionGroup="JsonLoader"/>

  <xs:attributeGroup name="JsonLoaderAttributes">

    <xs:attributeGroup ref="TextLoaderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="KeyboardEvent">
    <xs:annotation>
      <xs:documentation>
        This class describes event object used in keyboard events.
        All keyboard events bubble by default. This means that once all the
        event listeners have been notified the event propagates to the parent
        BiComponent. To prevent the event to
        bubble to the parent call
        stopPropagation() on the event object.
        The currently supported keyboard events by BiComponent
        are: keydown keypress keyup
        This object should not be created by the user. It is created as needed by the event system.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="KeyboardEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiKeyboardEvent" substitutionGroup="KeyboardEvent"/>

  <xs:attributeGroup name="KeyboardEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="L10nLoader">
    <xs:annotation>
      <xs:documentation>This class handles the loading and interpretation of localization templates files.
        This loader search for language specific template file i.e..
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="L10nLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiL10nLoader" substitutionGroup="L10nLoader"/>

  <xs:attributeGroup name="L10nLoaderAttributes">

    <xs:attributeGroup ref="XmlLoaderAttributes"/>

    <xs:attribute name="language" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The desired language, otherwise the browser language is used.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="defaultLanguage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The desired default language. The default langugae will be used if no localization template file can
          be found using the language property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="prefix" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Prefix of the localization template files, the loader will search for files named</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="L10nString">
    <xs:annotation>
      <xs:documentation>This class converts a localization template to a string.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="L10nStringAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiL10nString" substitutionGroup="L10nString"/>

  <xs:attributeGroup name="L10nStringAttributes">

    <xs:attribute name="name" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String : The localization template name - Sets the localization template name.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Label">
    <xs:annotation>
      <xs:documentation>
        This class is used to show text

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LabelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLabel" substitutionGroup="Label"/>

  <xs:attributeGroup name="LabelAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="text">
      <xs:annotation>
        <xs:documentation>The plain text shown on the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="html">
      <xs:annotation>
        <xs:documentation>The HTML text shown on the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="mnemonic">
      <xs:annotation>
        <xs:documentation>A character used to give UI hints about the access key for the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="font" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiFont - This is used to describe how to paint the text on the label.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="labelFor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiComponent - If this is set then focusing on the current label moves the focus to another component
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="wrap">
      <xs:annotation>
        <xs:documentation>Whether to wrap the text if the label is not wide enough</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingLeft">
      <xs:annotation>
        <xs:documentation>The left padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingRight">
      <xs:annotation>
        <xs:documentation>The right padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingTop">
      <xs:annotation>
        <xs:documentation>The top padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingBottom">
      <xs:annotation>
        <xs:documentation>The bottom padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align">
      <xs:annotation>
        <xs:documentation>
          The text alignment. Valid values are: left right center justify
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="verticalAlign">
      <xs:annotation>
        <xs:documentation>
          NOT IMPLEMENTED
          The vertical text alignment. Valid values are: top middle bottom
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:BiImage - The icon image to show on the label. Note that changing
          the image object does not update the label icon. You'll have to
          set the icon property to update the label icon.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="iconPosition">
      <xs:annotation>
        <xs:documentation>
          The position of the icon relative to the text. Valid values are: left right top bottom
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="iconTextGap">
      <xs:annotation>
        <xs:documentation>The gap between the icon and the text (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Launcher">
    <xs:annotation>
      <xs:documentation>This class can be used to create a launcher for launching Bindows applications
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LauncherAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLauncher" substitutionGroup="Launcher"/>

  <xs:attributeGroup name="LauncherAttributes">

    <xs:attribute name="reuseWindow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to reuse a previously opened window. If you want to launch
          the new application in the current window set newWindow to
          false.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="newWindow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to launch the application in a new window</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rootPath" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The path where Bindows resides. This is usually the path where bimain.html
          can be found.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="adfPath" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The path to the ADF file.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="adfName" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The ADF name is taken from the ADF path</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="arguments" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The arguments to pass to the main method of the ADF</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="target" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The target name of the window or frame to open the application in. If this is ""
          or null the ADF name will be used instead. If reuseWindow
          is false then this property will be ignored.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accessibilityMode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - This property can be used to tell whether the application should be in an
          accessibility mode.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="focusOnLoad" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to try to focus the window when the application loads</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Line">
    <xs:annotation>
      <xs:documentation>ABiLine contains screen coordinates. It can be used to store eg. a line.
        This class is used in animation.
        Storage is implemented as a stack where you add points at the end.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LineAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLine" substitutionGroup="Line"/>

  <xs:attributeGroup name="LineAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="LineChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a line chart for the given series

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LineChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLineChart" substitutionGroup="LineChart"/>

  <xs:attributeGroup name="LineChartAttributes">

    <xs:attributeGroup ref="AbstractChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="LineMarker">
    <xs:annotation>
      <xs:documentation>
        This class handles the components used to show the markers for a
        line chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LineMarkerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLineMarker" substitutionGroup="LineMarker"/>

  <xs:attributeGroup name="LineMarkerAttributes">

    <xs:attributeGroup ref="AbstractChartSectionAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Link">
    <xs:annotation>
      <xs:documentation>This class represents the relationship between two components that are to be linked by a link line.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LinkAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLink" substitutionGroup="Link"/>

  <xs:attributeGroup name="LinkAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="startComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The first ("left") component that is part of this link.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The second ("right") component that is part of this link.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="line" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDrawLine - The line used to link the components.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="startAnchor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The anchor point on startComponent which line anchors to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endAnchor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The anchor point on endComponent which line anchors to.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="direction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The direction of this link.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="LinkManager">
    <xs:annotation>
      <xs:documentation>This class is a component that holds linked components. It also manages the links involved with these components.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LinkManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLinkManager" substitutionGroup="LinkManager"/>

  <xs:attributeGroup name="LinkManagerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="List">
    <xs:annotation>
      <xs:documentation>This is a list component that can contain BiListItem
        objects. It uses the normal object model and can therefore be extended and
        used just like any other component. The only limitation is that the the direct
        children should only be of type BiListItem
        and the size and position of these should not be changed.
        The list uses a BiListSelectionModel
        that handles the selection.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ListAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiList" substitutionGroup="List"/>

  <xs:attributeGroup name="ListAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="allowInlineFind" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When true, typing a word will select the first matching item.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Used to decide how to sort the list items. It is used when calling sort()
          if the sortFunction property has not been set to a function.
          If the list items has its userValue property set, it has precedence over its
          text property in being the value that is compared
          Built in support for the following
          types: string (default) caseInsensitiveString number date - Uses the native JS Date type
          To get better control over the sorting, define a function and set
          the sortFunction property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortFunction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - Sets a property which is a function used to compare two listItems.
          This function should take two arguments and return a
          number (just like the normal comparison function used when sorting
          arrays in JavaScript). If this property is not set, it uses the predefined
          functions set by the sortType property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - This is the userValue of
          the first selected list item.
          If no item is selected then this returns null.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiListSelectionModel - This handles the selection of the items in the list</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="multipleSelection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the list supports multiple selection</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataTextField" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the column to use as the data for the text property
          of the BiListItems.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataUserValueField" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The name of the column to use as the data for the userValue
          property of the BiListItems.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataSource" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDataTable /BiDataSet - The object to use as the data source. This can be a either a
          BiDataTable or a
          BiDataSet (in which case the
          first table is used).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataPageSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount of rows to show at one time from the data source.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="currentDataPage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the current data page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected items change</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondatabind" type="xs:string">
      <xs:annotation>
        <xs:documentation>Called after the component has been data bound</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ListItem">
    <xs:annotation>
      <xs:documentation>This class is used for the items in a list
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ListItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiListItem" substitutionGroup="ListItem"/>

  <xs:attributeGroup name="ListItemAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="visible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the item is visible or not. Note that all the ancestors must be
          visible for the component to be actually shown. Use isVisible to
          check that the item is shown.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the item is selected or not</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the list item. This is not the text on the item. To
          change the text use the text
          property.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the item is double
          clicked or when enter is pressed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ListSelectionModel">
    <xs:annotation>
      <xs:documentation>This class handles the selection for lists
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ListSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiListSelectionModel" substitutionGroup="ListSelectionModel"/>

  <xs:attributeGroup name="ListSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="LoadManager">
    <xs:annotation>
      <xs:documentation>This singleton class is used to keep track of loading of resources
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LoadManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLoadManager" substitutionGroup="LoadManager"/>

  <xs:attributeGroup name="LoadManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="loadPerDomain" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is is the number of requests that can be loaded at the same time from
          the same domain
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="LocationAnimator">
    <xs:annotation>
      <xs:documentation>Animates the location ofBiComponents to create movement.
        This class has a repository of motion paths. A motion path is created by setting start and end
        screen coordinates. Objects will be animated between these in a straight line.
        Motion paths are stored in a stack where the first motion path, called the default motion path,
        is created upon construction.
        The default motion path can be changed and modified dynamically via getter/setter function,
        whereas additional motion paths can only be either added or removed. For each motion path you have
        independent control over speed and acceleration algorithms.
        By pushing more motion paths onto the stack you can make the object animate around multiple
        positions on the screen and create complex movement.
        To animate a component, you create the animator object and add componen(s) to it, then start the animation.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="LocationAnimatorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiLocationAnimator" substitutionGroup="LocationAnimator"/>

  <xs:attributeGroup name="LocationAnimatorAttributes">

    <xs:attributeGroup ref="ComponentAnimationAttributes"/>

    <xs:attribute name="fromX" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Starting point's X position measured in pixels.
          Modifies the default motion path, that components will be animated between.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromY" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Starting point's Y position measured in pixels.
          Modifies the default motion path, that components will be animated between.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toX" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Ending point's X position measured in pixels.
          Modifies the default motion path, that components will be animated between.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toY" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Ending point's Y position measured in pixels.
          Modifies the default motion path, that components will be animated between.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Changes the acceleration type for the default motion path.
          Use one of the acceleration constants defined inBiComponentAnimation
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="speed" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number/String - Changes the speed of the default motion path.
          Time measured in milliseconds it should take to complete
          the animation of the default motion path.
          It Could also be a string with the following values:
          slowest, slow, normal, fast, fastest
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="type" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets both the speed and the acceleration type for the animation.
          Can be either: "normal" or "smooth"
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - Instead of using absolute window positions, you can position the animation relative
          another components position. By setting the from-component you specify anotherBiComponent
          whos location will be used for the animation's start state.
          If the from-component's location or size is changed, the animation
          will update dynamically. By default the top left corner of the from-component will be this
          animation's start x/y.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - Instead of using absolute window positions, you can position the animation relative
          another components position. By setting the to-component you specify anotherBiComponent
          whos location will be used for the animation's target state.
          If the to-component's location or size is changed, the animation
          will update dynamically. By default the top left corner of the to-component will be this
          animation's end x/y.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation start y position relative to either a from-component, if set. Otherwise
          top relates to the browser's viewport. Setting top cancels bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation end y position relative to either a to-component, if set. Otherwise
          top relates to the browser's viewport. Setting top cancels bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation start x position relative to either a from-component, if set. Otherwise
          left relates to the browser's viewport. Setting left cancels right.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation end x position relative to either a to-component, if set. Otherwise
          left relates to the browser's viewport. Setting left cancels right.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromBottom" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation start y position relative to either a from-component, if set. Otherwise
          bottom relates to the browser's viewport. Setting bottom cancels top.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toBottom" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation end y position relative to either a to-component, if set. Otherwise
          bottom relates to the browser's viewport. Setting bottom cancels top.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromRight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation start x position relative to either a from-component, if set. Otherwise
          right relates to the browser's viewport. Setting right cancels left.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toRight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the animation end x position relative to either a to-component, if set. Otherwise
          right relates to the browser's viewport. Setting right cancels left.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Math">
    <xs:annotation>
      <xs:documentation>Collection of static functions used in various math operations.
        Used heavily in the animation library for example.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MathAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMath" substitutionGroup="Math"/>

  <xs:attributeGroup name="MathAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Menu">
    <xs:annotation>
      <xs:documentation>This class represents a menu. Menus can be filled with menu items by
        addingBiMenuItem objects.
        The content model for the menu is very similiar to the content model for
        BiComponent but there are slight differences.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MenuAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMenu" substitutionGroup="Menu"/>

  <xs:attributeGroup name="MenuAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="visible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Shows or hides the menu</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="left" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets or gets the left position of the menu relative to the screen</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="top" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets or gets the top position of the menu relative to the screen</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="width" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the menu</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="height" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The heightof the menu</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightToLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Describes whether the component should be be layed out to support
          locales using right-to-left fonts. If this is set to null
          then the rightToLeft property for the parent component
          is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the menu is shown</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforeshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the menu is shown.
          This is a good place to change the content of the menu to reflect the
          component causing the menu to be shown
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onhide" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the menu is hidden</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="MenuBar">
    <xs:annotation>
      <xs:documentation>This class is used to display a menu bar
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MenuBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMenuBar" substitutionGroup="MenuBar"/>

  <xs:attributeGroup name="MenuBarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="MenuButton">
    <xs:annotation>
      <xs:documentation>This class is used for displaying the buttons of a menu bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MenuButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMenuButton" substitutionGroup="MenuButton"/>

  <xs:attributeGroup name="MenuButtonAttributes">

    <xs:attributeGroup ref="MenuItemAttributes"/>


  </xs:attributeGroup>

  <xs:element name="MenuItem">
    <xs:annotation>
      <xs:documentation>Represents a menu item for a menu.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MenuItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMenuItem" substitutionGroup="MenuItem"/>

  <xs:attributeGroup name="MenuItemAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The plain text to show on the menu item</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="html" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The html text to show on the menu item</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The icon image to show on the menu item. Note that changing
          the image object does not update the label icon. You'll have to
          set the icon property to update the label icon. The size of the icon
          of the menu item is currently fixed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="mnemonic" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - A character used to give UI hints about the access key for the menu label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="subMenu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiMenu - The menu that should be opened as a sub menu when the current menu is selected.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="visible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Shows or hides the menu item</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="enabled" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the component is enabled or not. When this is changed the
          component fires the enabledchanged event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="shortcutText" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The shortcut text is shown on the menu to give the user a hint about
          keyboard shortcuts. Setting this on the menu just adds the text. It
          does not set up the keyboard shortcut.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toolTipText" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text to show as a tool tip for the menu item.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fired when the menu item is clicked or invoked using the keyboard</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onenabledchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the enabled property is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="MenuSeparator">
    <xs:annotation>
      <xs:documentation>This class is used to display a separator inside a menu
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MenuSeparatorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMenuSeparator" substitutionGroup="MenuSeparator"/>

  <xs:attributeGroup name="MenuSeparatorAttributes">

    <xs:attributeGroup ref="MenuItemAttributes"/>


  </xs:attributeGroup>

  <xs:element name="MouseEvent">
    <xs:annotation>
      <xs:documentation>This class describes event objects used in mouse events.
        All mouse events bubble by default. This means that once all the
        event listeners have been notified the event propagates to the parent
        BiComponent. To prevent the event to
        bubble to the parent call
        stopPropagation() on the event object.
        The currently supported events by BiComponent
        are: mousedown mouseup click dblclick contextmenu - this one is a bit tricky since it might also be dispatched when the user presses
        the context menu key on their keyboard mouseover mouseout mousemove mousewheel
        When a user double clicks on a component the order of the mouse events is
        the following: mousedown mouseup click mousedown mouseup click dblclick
        This object should not be created by the user. It is created as needed by the event system.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MouseEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMouseEvent" substitutionGroup="MouseEvent"/>

  <xs:attributeGroup name="MouseEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="MoveHandle">
    <xs:annotation>
      <xs:documentation>This component can be used to allow another component to become movable
        using the mouse. The component can be used as a move handle for the
        component to move. It can also be used without adding it to another
        component by manually calling startMove in a mouse down
        event handler.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="MoveHandleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiMoveHandle" substitutionGroup="MoveHandle"/>

  <xs:attributeGroup name="MoveHandleAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="continuousLayout" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Indicates that the ghost must be used to be a visual indicator for the duration of the move
          operation.
          Once complete, the original component's location will be updated accordingly.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ghost" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that should be visually updated if continuousLayout is set to false.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="handleFor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that the handle should be a move handle for.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="moveDirection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The direction the component can be moved. Possible values are: vertical horizontal both.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onbeforemove" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires continually during the moving of the component. Call
          preventDefault
          on the event object to prevent the new location from being applied.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmove" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires continually during the moving of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmoveend" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the movement is ended.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onmovestart" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired before the movement is started. To prevent this
          from being moved call preventDefault
          on the event object.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Object">
    <xs:annotation>
      <xs:documentation>This is the core class of all Bindows classes. This class provides
        some useful methods over the standard Javascript Object.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ObjectAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiObject" substitutionGroup="Object"/>


  <xs:attributeGroup name="ObjectAttributes">

    <xs:attribute name="id" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - An identifier for the object. Be careful when changing this because
          it might have undesired side effects.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userData" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - Allows custom data to be stored on the object. Although Javascript
          allows custom fields to be added to any object this property makes
          this a bit more consistent.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="properties" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - Allows you to set multiple properties at once. setProperties takes a hash
          of name/value pairs as its argument and sets the properties using setProperty
          sample: myObj.setProperties( { property1:'value1', property2:'value2' } )
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ObjectLoader">
    <xs:annotation>
      <xs:documentation>This class is used to encapsulate an object created from XML markup in a
        loader object. The loader can be used to create several objects from the same
        XML node. Each time the load() method is called a new object is created from
        the node. The method getComponentById() will be added to the created objects and
        can be used to obtain child components with. The last created object is stored
        in the object property of the loader.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ObjectLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiObjectLoader" substitutionGroup="ObjectLoader"/>

  <xs:attributeGroup name="ObjectLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="node" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:XMLElement - This is the XML element describing the object.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="autoNameMapping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true any XML object that has an id attribute will create a
          global reference to the object created from this XML element.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="OlapGrid">
    <xs:annotation>
      <xs:documentation>This class is used to display an OLAP Grid
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGrid" substitutionGroup="OlapGrid"/>

  <xs:attributeGroup name="OlapGridAttributes">

    <xs:attributeGroup ref="TreeViewBaseAttributes"/>

    <xs:attribute name="allowHeaderSelection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiOlapGridSelectionModel - Whether clicking on a dimension header also selects the rows/column of the
          header.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="canReorganizeDimensions" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true the user can reorganize the dimensions using drag and drop
          TODO: Document what events are fired when the reorg should happen
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondimensiondrop" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when a dimension
          of the current grid is dropped
          on another dimension. This can
          only happen if canReorganizeDimensions
          is true
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="OlapGridCellInfo">
    <xs:annotation>
      <xs:documentation>This represents information about a cell in the OLAP grid. This information
        describes if a cell is part of the header and more.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridCellInfoAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridCellInfo" substitutionGroup="OlapGridCellInfo"/>

  <xs:attributeGroup name="OlapGridCellInfoAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="header" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the cell is part of the header</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="body" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the cell is part of the body</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="row" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - What row the cell is part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="column" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - What column the cell is part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dimension" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The dimension the axis header cell is part of. If the cell is part of the
          body then this is null.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="axis" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The axis the cell is part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="axisPosition" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The axis position is the start position of the axis header cell</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="quadrant" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is used to tell what part of the OLAP grid the cell belongs to</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="OlapGridDataModel">
    <xs:annotation>
      <xs:documentation>This defines the interface that is needed for a data model for aBiOlapGrid.
        This actually implements a dummy data model. Extend this class to create
        more useful data models. *
        All methods in this data model can be safely overriden without calling the super
        class since there are no side effects in any of the methods.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridDataModel" substitutionGroup="OlapGridDataModel"/>

  <xs:attributeGroup name="OlapGridDataModelAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OlapGridDragEvent">
    <xs:annotation>
      <xs:documentation>This event is used for events related to some drag and drop inside the OLAP grid.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridDragEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridDragEvent" substitutionGroup="OlapGridDragEvent"/>

  <xs:attributeGroup name="OlapGridDragEventAttributes">

    <xs:attributeGroup ref="DragEventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OlapGridDropMarker">
    <xs:annotation>
      <xs:documentation>This component is used to draw a drop marker on top/inside an OLAP grid
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridDropMarkerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridDropMarker" substitutionGroup="OlapGridDropMarker"/>

  <xs:attributeGroup name="OlapGridDropMarkerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OlapGridResizeOutline">
    <xs:annotation>
      <xs:documentation>This component is used as an overlay above the column that is currently being
        resized
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridResizeOutlineAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridResizeOutline" substitutionGroup="OlapGridResizeOutline"/>

  <xs:attributeGroup name="OlapGridResizeOutlineAttributes">

    <xs:attributeGroup ref="ResizeHandleAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OlapGridSelectionModel">
    <xs:annotation>
      <xs:documentation>Selection model forBiOlapGrid.

        This selection model contains of selected areas (BiArea). An area consists
        of a left, top, width and height propertty. Two selected areas may overlap
        so be careful when trying to get all selected cells.

        The selectedItems collection is aBiAreaCollection
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridSelectionModel" substitutionGroup="OlapGridSelectionModel"/>

  <xs:attributeGroup name="OlapGridSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OlapGridStateManager">
    <xs:annotation>
      <xs:documentation>A simple class that is used internally with theBiOlapGrid to keep track
        of active and hover cell
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridStateManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridStateManager" substitutionGroup="OlapGridStateManager"/>

  <xs:attributeGroup name="OlapGridStateManagerAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="active" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiOlapGridCellInfo - The active cell info</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onhoverchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>When the user hovers over a different part
          of the OLAP grid
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondropoverchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the user is doing drag and drop
          and the cell that the user is over changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="OlapGridViewManager">
    <xs:annotation>
      <xs:documentation>This class handles the visual properties of aBiOlapGrid
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapGridViewManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapGridViewManager" substitutionGroup="OlapGridViewManager"/>

  <xs:attributeGroup name="OlapGridViewManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="showGridLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show grid lines between the cells in the OLAP grid</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the scroll left to the view manager so that the view manager can figure
          out what column to start at
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the scroll top to the view manager so that the view manager can figure
          out what row to start at
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="axisOnTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - This is used to tell which axis is to be shown as the column headers and
          which to be shown as the row headers. A value of 0 means that the first
          axis should be shown at the top.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cellMinimumWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The minimum width a cell might have. This is used when the user resizes a
          colum. Setting this does not update the exisiting columns.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cellMinimumHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The minimum height a cell might have. This is used when the user resizes a
          row. Setting this does not update the exisiting rows.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="OlapStateEvent">
    <xs:annotation>
      <xs:documentation>This class is used when the interactive state of the OLAP grid changes
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OlapStateEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOlapStateEvent" substitutionGroup="OlapStateEvent"/>

  <xs:attributeGroup name="OlapStateEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="OpacityAnimator">
    <xs:annotation>
      <xs:documentation>Animates the opacity ofBiComponents to create various visual effects.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OpacityAnimatorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOpacityAnimator" substitutionGroup="OpacityAnimator"/>

  <xs:attributeGroup name="OpacityAnimatorAttributes">

    <xs:attributeGroup ref="ComponentAnimationAttributes"/>

    <xs:attribute name="type" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Setups common values (speed, acceleration type and loop mode) for default opacity animations.
          Possible values are: pulsate, blink, fadeIn, fadeOut
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minOpacity" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Float - Limits how transparent the animated objects are allowed to be.
          0.0 completely transparent, 1.0 completely opaque
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="speed" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number/String - Sets the duration, in milliseconds, of one animation cycle (some animation types use two
          cycles).
          The following string constants are also allowed:
          slowest, slow, normal, fast, fastest
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="OptionPane">
    <xs:annotation>
      <xs:documentation>This class is used to layout default dialog controls. Normally this class
        is not used directly but one of the static methods are used to create
        new dialogs.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OptionPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOptionPane" substitutionGroup="OptionPane"/>

  <xs:attributeGroup name="OptionPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="initialValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - This is used to define which of the options that
          should be treated as the default acceptButton.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="acceptButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default accept button. If this is set
          then the action
          event is dispatched from the accept button when the enter key
          is pressed. This does not have to
          be a BiButton, any
          BiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cancelButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default cancel button. If this is set
          then the action
          event is dispatched from the cancel button. This does not have to
          be a BiButton, any
          BiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - Sets the value of the option pane. This is used as the
          dialogResult
          when the option pane is used with a dialog.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="inputComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - This allows an input component to be shown below the message
          component. This is created when creating input dialogs.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this option pane. If this is set to null
          then the static string bundle forBiOptionPane is used
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="OrderedIterator">
    <xs:annotation>
      <xs:documentation>This is an ordered iterator that allows you to add items ordered by an index.
        The items are ordered based on the index and finding and removing an item
        based on its index is done in constant time. Inserting an item is in worst
        case O(n) (where n is the number of items in the iterator).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="OrderedIteratorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiOrderedIterator" substitutionGroup="OrderedIterator"/>

  <xs:attributeGroup name="OrderedIteratorAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="PasswordField">
    <xs:annotation>
      <xs:documentation>A text field where the entered text is masked.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PasswordFieldAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPasswordField" substitutionGroup="PasswordField"/>

  <xs:attributeGroup name="PasswordFieldAttributes">

    <xs:attributeGroup ref="TextFieldAttributes"/>


  </xs:attributeGroup>

  <xs:element name="PercentageStackedBarChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a percentage stacked bar chart for the given series.
        A percentage stacked bar chart stacks the columns from the different series next to each
        other and the value of the columns is expressed in percentage so all values
        from the same category add up to 100%.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PercentageStackedBarChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPercentageStackedBarChart" substitutionGroup="PercentageStackedBarChart"/>

  <xs:attributeGroup name="PercentageStackedBarChartAttributes">

    <xs:attributeGroup ref="PercentageStackedColumnChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="PercentageStackedBarChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a percentage stacked bar chart for the given series.
        A percentage stacked bar chart stacks the columns from the different series next to each
        other and the value of the columns is expressed in percentage so all values
        from the same category add up to 100%.
        This is used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PercentageStackedBarChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPercentageStackedBarChart2" substitutionGroup="PercentageStackedBarChart2"/>

  <xs:attributeGroup name="PercentageStackedBarChart2Attributes">

    <xs:attributeGroup ref="PercentageStackedColumnChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="PercentageStackedColumnChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a percentage stacked column chart for the given series.
        A percentage stacked column chart stacks the columns from the different series on top of each
        other and the value of the columns is expressed in percentage so all values
        from the same category add up to 100%.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PercentageStackedColumnChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPercentageStackedColumnChart" substitutionGroup="PercentageStackedColumnChart"/>

  <xs:attributeGroup name="PercentageStackedColumnChartAttributes">

    <xs:attributeGroup ref="ColumnChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="PercentageStackedColumnChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a percentage stacked column chart for the given series.
        A percentage stacked column chart stacks the columns from the different series on top of each
        other and the value of the columns is expressed in percentage so all values
        from the same category add up to 100%.
        This is used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PercentageStackedColumnChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPercentageStackedColumnChart2" substitutionGroup="PercentageStackedColumnChart2"/>

  <xs:attributeGroup name="PercentageStackedColumnChart2Attributes">

    <xs:attributeGroup ref="ColumnChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="PieChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a pie chart for the given series

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PieChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPieChart" substitutionGroup="PieChart"/>

  <xs:attributeGroup name="PieChartAttributes">

    <xs:attributeGroup ref="AbstractChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="PieChartSection">
    <xs:annotation>
      <xs:documentation>
        This class handles the components used to show the rectangles for a
        pie chart.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PieChartSectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPieChartSection" substitutionGroup="PieChartSection"/>

  <xs:attributeGroup name="PieChartSectionAttributes">

    <xs:attributeGroup ref="AbstractChartSectionAttributes"/>

    <xs:attribute name="radius">
      <xs:annotation>
        <xs:documentation>The size of the radius (0-1)
          where 1 means that it will take up the entire available size
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="explode">
      <xs:annotation>
        <xs:documentation>The distance to move the sectio from the
          center (0-1, percentage of available size).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="startAngle">
      <xs:annotation>
        <xs:documentation>The angle given in radians
          where the pie chart section starts.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="endAngle">
      <xs:annotation>
        <xs:documentation>The angle given in radians
          where the pie chart section ends.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Point">
    <xs:annotation>
      <xs:documentation>Simple class that describes a location of Point on a plane.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PointAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPoint" substitutionGroup="Point"/>

  <xs:attributeGroup name="PointAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Polygon">
    <xs:annotation>
      <xs:documentation>This class represents a convex polygon. In a convex polygon,
        no two sides may intersect more than once (at their endpoints),
        and no vertex may be the intersection point of more than two
        sides.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PolygonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPolygon" substitutionGroup="Polygon"/>

  <xs:attributeGroup name="PolygonAttributes">

    <xs:attributeGroup ref="ShapeAttributes"/>

    <xs:attribute name="vertices" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiPoint[] - The vertices of this polygon</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Popup">
    <xs:annotation>
      <xs:documentation>A popup is a component that is displayed on top of all other components
        and is not limited by the parent components view port.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PopupAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPopup" substitutionGroup="Popup"/>

  <xs:attributeGroup name="PopupAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="screenLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position relative to the screen. Note that this can be both set and get
          for popups.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="screenTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position relative to the screen. Note that this can be both set and get
          for popups.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clientLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position relative to the browser client area. Note that this can be both
          set and get for popups.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="clientTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position relative to the browser client area. Note that this can be both
          set and get for popups.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="opaque" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to make the popup opaque. An opaque popup will not let plugins and
          other windowed controls show through. However, there is a price to this. This
          is achieved using an internal iframe and this makes the popup heavier and
          slower.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="autoHide" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to let the system decide when to hide the popup. Setting this to
          false gives you better control but it also requires you to
          handle the closing of the popup.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="allowOffScreen" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to allow the popup to be positioned off screen</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onbeforeshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the popup is shown. This is a good
          place to change the content of the popup and
          set the preferred size if the default preferred
          size is not wanted
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onshow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the popup is shown</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onhide" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the popup is hidden</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="PopupManager">
    <xs:annotation>
      <xs:documentation>This singleton class manages the BiPopup
        objects.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PopupManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPopupManager" substitutionGroup="PopupManager"/>

  <xs:attributeGroup name="PopupManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="useOpaquePopups" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to make popup opaque by default. An opaque popup will not let plugins
          and other windowed controls show through. However, there is a price to this.
          This is achieved using an internal iframe and this makes the popup heavier and
          slower.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="PrintFrame">
    <xs:annotation>
      <xs:documentation>BiPrintFrame is a helper class for printing any data from within a Bindows
        application. It takes a Uri to a template file and a object containing named
        strings as arguments and parses the template before sending it to the printer.

        A template is typically an HTML document containing customizable tags used as
        placeholders for data. The parser function being used can be easily extended to
        handle more complex data, e.g. tables etc.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="PrintFrameAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiPrintFrame" substitutionGroup="PrintFrame"/>

  <xs:attributeGroup name="PrintFrameAttributes">

    <xs:attributeGroup ref="IframeAttributes"/>

    <xs:attribute name="textParser" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTextParser - The Parser used for generating parsed content.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ProgressBar">
    <xs:annotation>
      <xs:documentation>
        This component is used to show a progress bar.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ProgressBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiProgressBar" substitutionGroup="ProgressBar"/>

  <xs:attributeGroup name="ProgressBarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="maximum">
      <xs:annotation>
        <xs:documentation>The maximum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum">
      <xs:annotation>
        <xs:documentation>The minimum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value">
      <xs:annotation>
        <xs:documentation>The value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This event is fired when the maximum, minimum
          or maximum properties are changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="RadioButton">
    <xs:annotation>
      <xs:documentation>Represents a radio button control. A radio button control can have two
        states; checked and unchecked. These are represented by the
        checked property.
        Once a radio button is checked clicking it again will not uncheck it. To
        uncheck a radio button another radio button in the same
        radio group must be checked.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RadioButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRadioButton" substitutionGroup="RadioButton"/>

  <xs:attributeGroup name="RadioButtonAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the radio button.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the radio button is checked or not. When this is changed
          the change event is fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="group" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiRadioGroup - The group that the radio button should be part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the user presses the button (either using
          the mouse or the keyboard)
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the checked is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="RadioButtonMenuItem">
    <xs:annotation>
      <xs:documentation>This class is used for a menu item that displays a radio button to the left
        of the text. To group different radio button menu items into a radio group
        use theBiRadioGroup class in the same way it would be used for normal
        radio buttons.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RadioButtonMenuItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRadioButtonMenuItem" substitutionGroup="RadioButtonMenuItem"/>

  <xs:attributeGroup name="RadioButtonMenuItemAttributes">

    <xs:attributeGroup ref="MenuItemAttributes"/>

    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the item.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the item is checked or not</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="group" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiRadioGroup - The group that the radio button menu item should be part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the checked change</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="RadioGroup">
    <xs:annotation>
      <xs:documentation>This class is used in conjunction with radio
        buttons to ensure only one buttons is checked.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RadioGroupAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRadioGroup" substitutionGroup="RadioGroup"/>

  <xs:attributeGroup name="RadioGroupAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiRadioButton - This is the radio button that is checked</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="enabled" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the radio group is enabled or not. Setting this also
          sets the enabled property on the radio buttons.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - This is the user value of the checked radio button in this radio
          group. Setting this checks the first item that has this value.
          If no item has this value the setting will have no effect.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="command" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiCommand - When the radio group has a command the enabled and
          userValue are synchronized with the command.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the selected radio button is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="RangeModel">
    <xs:annotation>
      <xs:documentation>This class represents a range model that has a minumum, maximum, value and
        an extent. This class is used by theBiProgressBar,BiScrollBar,BiSlider and
        BiSpinner classes.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RangeModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRangeModel" substitutionGroup="RangeModel"/>

  <xs:attributeGroup name="RangeModelAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The value for the range</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The maximum value for the range</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The minimum value for the range</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="extent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The extent for the range</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the maximum,
          minimum, value or
          extent properties are changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="RepeatButton">
    <xs:annotation>
      <xs:documentation>This class is used for buttons that repeatedly fire action events
        The first action event is fired firstInterval milliseconds
        after the mouse is pressed down on the button. The following action events
        are fired every interval millisecond until the mouse button is
        released.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RepeatButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRepeatButton" substitutionGroup="RepeatButton"/>

  <xs:attributeGroup name="RepeatButtonAttributes">

    <xs:attributeGroup ref="ButtonAttributes"/>

    <xs:attribute name="interval" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The time in milliseconds between the repeating action events</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="firstInterval" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The time in milliseconds before the first action event is fired</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ResizeHandle">
    <xs:annotation>
      <xs:documentation>This component can be used to allow another component to be resizable
        using the mouse. The component can be used as a resize handle for the
        component to resize. It can also be used without adding it to another
        component by manually calling startResize in a mouse down
        event handler.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ResizeHandleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiResizeHandle" substitutionGroup="ResizeHandle"/>

  <xs:attributeGroup name="ResizeHandleAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="continuousLayout" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Indicates that the ghost must be used to be a visual indicator for the duration of the resize
          operation.
          Once complete, the original component's dimensions will be updated accordingly.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ghost" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that should be visually updated if continuousLayout is set to false.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="handleFor" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that the handle should be a resize handle for.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="resizeDirection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The direction that the resizing should be done in. Valid
          values are:
          s - south
          n - north
          e - east
          w - west
          se - south east
          sw - south west
          ne - north east
          nw - north west
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onresize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires continually during the resizing of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforeresize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires continually during the resizing of the component. Call
          preventDefault
          on the event object to prevent the new size from being applied.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onresizestart" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires once when the resizing begins. Call
          preventDefault
          on the event object to prevent the component from being resized.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onresizeend" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when resizing of the component ends.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ResourceLoader">
    <xs:annotation>
      <xs:documentation>This class is used to load different kinds of resources. There are basically
        3 types of resources that this class can handle. The first 2 are script files
        and a code string. The third one is a genereal object described by an XML
        element and in this case an object is created using aBiXmlResourceParser.
        When creating general objects a few special rules apply. If the created object
        is an event target the resource loader will listen to load
        and error events so that it can be notified by the object that
        it is loaded. If the object has a load() method that will be
        called if the object is not already loaded. To decide if the object is loaded
        the resource loader will use getLoaded() if available and if that
        isn't available it is assumed that the object is loaded (or does not require
        loading).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ResourceLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiResourceLoader" substitutionGroup="ResourceLoader"/>

  <xs:attributeGroup name="ResourceLoaderAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="autoNameMapping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true any XML object that has an id attribute will create a
          global reference to the object created from this XML element.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onprogress" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires every time one of the external resources have
          been loaded. This is useful for providing visual feedback.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when all the resources have been loaded and executed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Resources">
    <xs:annotation>
      <xs:documentation>This class is used to load multiple resources
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ResourcesAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiResources" substitutionGroup="Resources"/>

  <xs:attributeGroup name="ResourcesAttributes">

    <xs:attributeGroup ref="SerializedLoaderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="RichEdit">
    <xs:annotation>
      <xs:documentation>
        This control is used to to provide rich text editing of HTML documents

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="RichEditAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiRichEdit" substitutionGroup="RichEdit"/>

  <xs:attributeGroup name="RichEditAttributes">

    <xs:attributeGroup ref="IframeAttributes"/>

    <xs:attribute name="contentHtml">
      <xs:annotation>
        <xs:documentation>
          The HTML code inside the rich editor frame. This does not include
          the doctype nor any comments outside the root element.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Script">
    <xs:annotation>
      <xs:documentation>This class works much like the script element in HTML. You can set the uri
        and it will fetch an external file that will be executed or you can use the
        text property to execute some text.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ScriptAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiScript" substitutionGroup="Script"/>

  <xs:attributeGroup name="ScriptAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The script text to evaluate</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The location of the script file</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="src" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - Alias to uri for backwards compatibility</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ScriptLoader">
    <xs:annotation>
      <xs:documentation>This class loads and executes a javascript file
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ScriptLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiScriptLoader" substitutionGroup="ScriptLoader"/>

  <xs:attributeGroup name="ScriptLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI (location) of the file to load. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the file has been loaded</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ScriptLoaderQueue">
    <xs:annotation>
      <xs:documentation>Used to load multiple js files and once all are loaded they are executed
        in the order they were added.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ScriptLoaderQueueAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiScriptLoaderQueue" substitutionGroup="ScriptLoaderQueue"/>

  <xs:attributeGroup name="ScriptLoaderQueueAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="async" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If this is set to false then the loading will lock the UI thread
          but the loading and execution will happen and finish when
          load is called.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when all the scripts have been loaded and executed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onprogress" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires every time one of the external scripts have
          been loaded. This is useful for providing visual feedback.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ScrollBar">
    <xs:annotation>
      <xs:documentation>This component is used to show a scroll bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ScrollBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiScrollBar" substitutionGroup="ScrollBar"/>

  <xs:attributeGroup name="ScrollBarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="extent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The extent for the scroll bar.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The maximum value for the scroll bar.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The minimum value for the scroll bar.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The value for the scroll bar.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minThumbSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The mimimum size of the thumb.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="unitIncrement" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount to change the scroll bar when pressing the buttons.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="blockIncrement" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount to change the scroll bar when the mouse is pressed on the scroll
          bar (and not on the thumb or buttons).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="orientation" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The orientation of the scroll bar. Valid values are: horizontal vertical</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the extent,
          value, minimum or
          maximum properties are changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onscrollend" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the thumb is released
          after scrolling.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="SelectionItemCollection">
    <xs:annotation>
      <xs:documentation>This class is used internally insideBiSelectionModel to keep track of the
        selected items. If you create a custom selection model you might need to also
        create a custom selection model item collection. The type of the items is not
        very important but the selection model needs to be able to work with this
        type. You also need to override getItemHashCode if the items
        are not instances ofBiObject.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SelectionItemCollectionAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSelectionItemCollection" substitutionGroup="SelectionItemCollection"/>

  <xs:attributeGroup name="SelectionItemCollectionAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="SelectionModel">
    <xs:annotation>
      <xs:documentation>This class provides a basic selection model
        This treats children as
        selectable items inside a component. The items can
        be of any type but if they are not BiComponents you
        will have to override the following methods and properties: first,
        last, items, getNext, getPrevious,
        scrollItemIntoView,
        getItemLeft, getItemTop, getItemWidth
        and getItemHeight.
        To update the visuals (to show what is selected) override the following
        methods: updateItemSelectionState, updateItemAnchorState
        and updateItemLeadState.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSelectionModel" substitutionGroup="SelectionModel"/>

  <xs:attributeGroup name="SelectionModelAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="owner" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - This is the owner component that is
          containing the selectable objects. This should not be set after the
          selection model has been used
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="multipleSelection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the selection model supports multiple selection</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="canDeselect" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the user can deselect items. If this is false you need to select something
          else to deselect an item
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dragSelection" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Drag selection is used to hold down the mouse to select mutliple items</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="anchorItem" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent/Object - This item is used when doing multiple selection with the shift key</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="leadItem" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent/Object - This item is used when doing multiple selection. This is the last item selected.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedItems" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent[]/Object[] - Returns an array containing the selected items</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected items are changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onleaditemchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the lead item is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="SerializedLoader">
    <xs:annotation>
      <xs:documentation>Used to start multiple loaders in the order they were added.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SerializedLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSerializedLoader" substitutionGroup="SerializedLoader"/>

  <xs:attributeGroup name="SerializedLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when all the loaders have finished loading,
          or if an error occurs.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onprogress" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires every time one of the loaders has finished.
          This is useful for providing visual feedback.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Set">
    <xs:annotation>
      <xs:documentation>A simple class for storing a set of objects
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SetAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSet" substitutionGroup="Set"/>

  <xs:attributeGroup name="SetAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Shape">
    <xs:annotation>
      <xs:documentation>This class is an abstract base class for describing
        the shapes of Image areas. This is a very general
        class and can be extended to mean a variety of things.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ShapeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiShape" substitutionGroup="Shape"/>

  <xs:attributeGroup name="ShapeAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="SingleTree">
    <xs:annotation>
      <xs:documentation>A Simple one column Tree.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SingleTreeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSingleTree" substitutionGroup="SingleTree"/>

  <xs:attributeGroup name="SingleTreeAttributes">

    <xs:attributeGroup ref="TreeViewAttributes"/>

    <xs:attribute name="indentWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount to indent child nodes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showExpandIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the expand and collapse icons</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="sortFunction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:function - The sort function to use. The function is passed the two
          nodes to compare as arguments, to compare the value (text)
          of the node use getData() on the node. Defaults to case
          sensitive string compare.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="SingleTreeDataModel">
    <xs:annotation>
      <xs:documentation>Data model forBiSingleTree
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SingleTreeDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSingleTreeDataModel" substitutionGroup="SingleTreeDataModel"/>

  <xs:attributeGroup name="SingleTreeDataModelAttributes">

    <xs:attributeGroup ref="TreeDataModelAttributes"/>

    <xs:attribute name="treeView" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTree2 - The tree view the data model is acting on</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="SingleTreeNode">
    <xs:annotation>
      <xs:documentation>This class is used as the data for rows in theBiTree2 component
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SingleTreeNodeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSingleTreeNode" substitutionGroup="SingleTreeNode"/>

  <xs:attributeGroup name="SingleTreeNodeAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Uri of image icon. Used for collapsed/leaf nodes and expanded nodes
          without expandedIcon set.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="expandedIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Icon to show for an expanded node</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="data" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - Data to display for the node</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="expanded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the node is expanded</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the node is selected</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="lead" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the node is the lead item</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="SingleTreeViewManager">
    <xs:annotation>
      <xs:documentation>This class handles the visual properties of aBiSingleTree
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SingleTreeViewManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSingleTreeViewManager" substitutionGroup="SingleTreeViewManager"/>

  <xs:attributeGroup name="SingleTreeViewManagerAttributes">

    <xs:attributeGroup ref="TreeViewViewManagerAttributes"/>


  </xs:attributeGroup>

  <xs:element name="SizeAnimator">
    <xs:annotation>
      <xs:documentation>This class is used to animate the size ofBiComponent(s) and can be used to create visual effects.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SizeAnimatorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSizeAnimator" substitutionGroup="SizeAnimator"/>

  <xs:attributeGroup name="SizeAnimatorAttributes">

    <xs:attributeGroup ref="ComponentAnimationAttributes"/>

    <xs:attribute name="type" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets speed and acceleration type to useful values.
          Can be one of the following string values: normal, smooth
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Starting width of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Starting height of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Destination width of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Destination height of the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets starting size for both width and height.
          Note: The component will be square shaped.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets target size for both width and height.
          Note: The component will be square shaped.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="accType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the acceleration type. Use constants fromBiComponentAnimation.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="speed" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number/String - Sets the duration of the animation.
          Can be set in three different ways:
          1.BiSizeAnimator.SPEEDx constants can be used.
          2. One of the following strings: slowest, slow, normal, fast, fastest.
          3. A number representing the length of the animation, measured in milliseconds.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fromComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - By setting the from-component you specify anotherBiComponent whos size will be used
          for the animation's start state. If the from-component's size is changed, the animation
          will update dynamically.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="toComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - By setting the to-component you specify anotherBiComponent whos size will be used
          for the animation's target state. If the to-component's size is changed, the animation
          will update dynamically.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Slider">
    <xs:annotation>
      <xs:documentation>
        This component is used to show a slider control.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SliderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSlider" substitutionGroup="Slider"/>

  <xs:attributeGroup name="SliderAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="orientation">
      <xs:annotation>
        <xs:documentation>
          The orientation of the slider. Valid values are: horizontal vertical
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="unitIncrement">
      <xs:annotation>
        <xs:documentation>
          The amount to increase the slider when using the arrow keys and
          the mouse wheel.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="blockIncrement">
      <xs:annotation>
        <xs:documentation>
          The amount to increase the slider when using the page up and page
          down keys as well as the amount to change the slider when the
          mouse is pressed on the slider (and not on the handle).
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum">
      <xs:annotation>
        <xs:documentation>The maximum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum">
      <xs:annotation>
        <xs:documentation>The minimum value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="value">
      <xs:annotation>
        <xs:documentation>The value for the component</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>
          This event is fired when the maximum, minimum
          or maximum properties are changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Sort">
    <xs:annotation>
      <xs:documentation>Collection of static functions used for sorting and comparing
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SortAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSort" substitutionGroup="Sort"/>

  <xs:attributeGroup name="SortAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Spinner">
    <xs:annotation>
      <xs:documentation>A spinner is a text box that accepts a number. A spinner also has buttons
        for increasing and decreasing the value.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SpinnerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSpinner" substitutionGroup="Spinner"/>

  <xs:attributeGroup name="SpinnerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="value" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The value for the spinner</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The maximum value for the spinner</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The minimum value for the spinner</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="font" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiFont - This is used to describe how to paint the text in the spinner.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text alignment. Valid values are: left right center</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the maximum,
          minimum or maximum
          properties are changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the enter key is pressed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oninvalidvalue" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the value is change
          becuase the value entered by the user was
          not valid.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oninvalidcharacter" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired if an invalid character
          is typed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="SplitPane">
    <xs:annotation>
      <xs:documentation>A split pane is used to show two components with a splitter betwee them.
        The splitter between the components can be dragged and in that way the
        components are resized. If right to left the left and right component switch
        palces.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SplitPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSplitPane" substitutionGroup="SplitPane"/>

  <xs:attributeGroup name="SplitPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="orientation" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The orientation of the split pane. Valid values are horizontal
          and vertical. If horizontal is used the components are placed to
          the left and to the right of the splitter respectively. When vertical the
          components are placed above and below. When using horizontal and right to
          left the position of the left and right components are switched.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dividerLocation" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The location of the splitter from the left if horizontal orientation
          and from the top if vertical orientation. If right to left is used this is
          from the right instead of from the left.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dividerSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the divider (height if vertical orientation)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="leftComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component to the left (or top if vertical orientation) of the
          splitter. This property is the same as topComponent.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component to the right (or bottom if vertical orientation) of the
          splitter. This property is the same as bottomComponent.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="topComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component above (or to the left if horizontal orientation) of the
          splitter. This property is the same as leftComponent.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottomComponent" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component below (or to the right if hoizontal orientation)
          the splitter. This property is the same as rightComponent.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="leftVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the left component. If this is false
          the right component will take up the entire space of the split pane
          and the splitter will be hidden.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="topVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Sets whether to show the top component. If this is false
          the bottom component will take up the entire space of the split pane
          and the splitter will be hidden. This property is the same as
          leftVisible.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rightVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the right component. If this is false
          the left component will take up the entire space of the split pane
          and the splitter will be hidden.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="bottomVisible" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Sets whether to show the bottom component. If this is false
          the top component will take up the entire space of the split pane
          and the splitter will be hidden. This property is the same as
          rightVisible.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondividerlocationchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when then
          dividerLocation is
          changed
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="StackedBarChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a stacked bar chart for the given series. A stacked
        bar chart stacks the bars from the different series next to each
        other.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StackedBarChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStackedBarChart" substitutionGroup="StackedBarChart"/>

  <xs:attributeGroup name="StackedBarChartAttributes">

    <xs:attributeGroup ref="StackedColumnChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="StackedBarChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a stacked bar chart for the given series. A stacked
        bar chart stacks the bars from the different series next to each
        other.
        This is used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StackedBarChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStackedBarChart2" substitutionGroup="StackedBarChart2"/>

  <xs:attributeGroup name="StackedBarChart2Attributes">

    <xs:attributeGroup ref="StackedColumnChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="StackedColumnChart">
    <xs:annotation>
      <xs:documentation>
        This chart displays a stacked column chart for the given series. A stacked
        column chart stacks teh columns from the different series on top of each
        other.
        This is used with BiGraph.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StackedColumnChartAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStackedColumnChart" substitutionGroup="StackedColumnChart"/>

  <xs:attributeGroup name="StackedColumnChartAttributes">

    <xs:attributeGroup ref="ColumnChartAttributes"/>


  </xs:attributeGroup>

  <xs:element name="StackedColumnChart2">
    <xs:annotation>
      <xs:documentation>
        This chart displays a stacked column chart for the given series. A stacked
        column chart stacks teh columns from the different series on top of each
        other.
        This is used with BiGraph2.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StackedColumnChart2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStackedColumnChart2" substitutionGroup="StackedColumnChart2"/>

  <xs:attributeGroup name="StackedColumnChart2Attributes">

    <xs:attributeGroup ref="ColumnChart2Attributes"/>


  </xs:attributeGroup>

  <xs:element name="StatusBar">
    <xs:annotation>
      <xs:documentation>
        This class is used for displaying status bars in Bindows

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StatusBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStatusBar" substitutionGroup="StatusBar"/>

  <xs:attributeGroup name="StatusBarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="StatusBarPanel">
    <xs:annotation>
      <xs:documentation>
        This class is used to display sections in a
        status bar.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StatusBarPanelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStatusBarPanel" substitutionGroup="StatusBarPanel"/>

  <xs:attributeGroup name="StatusBarPanelAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="StringBuffer">
    <xs:annotation>
      <xs:documentation>Creates a StringBuffer object which handles string concatenation faster
        than the String class.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StringBufferAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStringBuffer" substitutionGroup="StringBuffer"/>

  <xs:attributeGroup name="StringBufferAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="StringBundle">
    <xs:annotation>
      <xs:documentation>This class is used to make creating multilingual applications easier.
        The string bundle is uses one hash table (objects in JavaScript) for
        every language and falls back on English ("en") in case the
        user language is not available.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StringBundleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStringBundle" substitutionGroup="StringBundle"/>

  <xs:attributeGroup name="StringBundleAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="language" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The current language</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the current strings
          changes in some way. This happens when the
          language is changed or a new bundle is added
          with the current language.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Style">
    <xs:annotation>
      <xs:documentation>This class works much like the script element in HTML. You can set the uri
        and it will fetch an external file that will be executed or you can use the
        text property to execute some text.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="StyleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiStyle" substitutionGroup="Style"/>

  <xs:attributeGroup name="StyleAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The script text to evaluate</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The location of the script file</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="src" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - Alias to uri for backwards compatibility</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Subtree">
    <xs:annotation>
      <xs:documentation>Internal class for handling subtrees
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="SubtreeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiSubtree" substitutionGroup="Subtree"/>

  <xs:attributeGroup name="SubtreeAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TabBar">
    <xs:annotation>
      <xs:documentation>This component is used as a container for tab
        buttons. When using tab panes this
        control is used internally.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TabBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTabBar" substitutionGroup="TabBar"/>

  <xs:attributeGroup name="TabBarAttributes">

    <xs:attributeGroup ref="ToolBarAttributes"/>

    <xs:attribute name="alignment" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes how to draw the tab bar. Supported values are top and
          bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTabButton - The currently selected tab button.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the selected tab button.
          If no button is selected this returns -1.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected tab
          button changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TabButton">
    <xs:annotation>
      <xs:documentation>This class is used to display tabs for aBiTabPane or aBiTabBar
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TabButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTabButton" substitutionGroup="TabButton"/>

  <xs:attributeGroup name="TabButtonAttributes">

    <xs:attributeGroup ref="ToolBarRadioButtonAttributes"/>

    <xs:attribute name="alignment" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes whether the tab button should be drawn so that it looks like
          it would be at the top of a tab pane or at the bottom of a tab pane.
          Supported values are top and bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TabPage">
    <xs:annotation>
      <xs:documentation>This class represents the pages inside a tab
        pane. A tab page has a BiTabButton
        that is used to display a button for the page when used with a tab pane.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TabPageAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTabPage" substitutionGroup="TabPage"/>

  <xs:attributeGroup name="TabPageAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="alignment" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes whether the tab page should be drawn so that it appears like the
          tabes are placed at the top of a tab pane or at the bottom of a tab pane.
          Supported values are top and bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="tabButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTabButton - The tab button used with the tab page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the page is selected</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text to show on the tab button</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The icon to show on the tab button</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected value changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TabPane">
    <xs:annotation>
      <xs:documentation>This class is used for creating tab controls. A tab control contains
        one or more tab pages. Each tab page also
        has a tab button that is shown above the
        page and when the button is clicked the page is shown.
        Bindows supports showing the tabs at the bottom or the top. Use the
        alignmnet property to change this.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TabPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTabPane" substitutionGroup="TabPane"/>

  <xs:attributeGroup name="TabPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="alignment" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This describes whether the tabs should be placed at the top of a tab pane or
          at the bottom of a tab pane.
          Supported values are top and bottom.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selected" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTabPage - The currently selected tab page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the selected tab page.
          If no page is selected this returns -1.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected tab page changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TextArea">
    <xs:annotation>
      <xs:documentation>A multiline text input field
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TextAreaAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTextArea" substitutionGroup="TextArea"/>

  <xs:attributeGroup name="TextAreaAttributes">

    <xs:attributeGroup ref="TextFieldAttributes"/>

    <xs:attribute name="wrap" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the text should wrap automatically as the user types.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TextField">
    <xs:annotation>
      <xs:documentation>This class is used to display a single line plain text input
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TextFieldAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTextField" substitutionGroup="TextField"/>

  <xs:attributeGroup name="TextFieldAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text on the text field</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="font" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiFont - This is used to describe how to paint the text in the text field.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text alignment. Valid values are: left right center</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maxLength" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The maximum number of characters that the user can enter into the text field</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="readOnly" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the user can enter text in the text field</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="validator" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - This property is a function that is used to validate the text of
          the text field. The function should take a string and return
          true if the text is valid.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="invalidMessage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This property can be used to give information about why the value
          might be invalid.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionStart" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The starting point of the selection in the text field. If not selected this
          returns -1.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionLength" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The length (number of chracters) of the currently selected text in the text field</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionText" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The currently selected text in the text field</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="allowTab" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether pressing the tab key should insert a tab character or move the focus from
          the text field
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The left padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingRight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The right padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The top padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="paddingBottom" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The bottom padding (in pixels)</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the enter key is pressed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ontextchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the text has changed.
          This happens when the user in some way changes
          the text inside the text field. This event
          is fired continiously as the user types.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the text field is blurred
          and the text has changed since the text field got
          focus.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TextLoader">
    <xs:annotation>
      <xs:documentation>This class is used to load a plain text document from the server or the
        file system (if the application is run locally).
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TextLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTextLoader" substitutionGroup="TextLoader"/>

  <xs:attributeGroup name="TextLoaderAttributes">

    <xs:attributeGroup ref="AbstractLoaderAttributes"/>

    <xs:attribute name="method" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The HTTP method to use for the request</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI (location) of the file to load. If this is set to a string a
          new URI is created from that string relative to the
          ADF path.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="user" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The user name to use when authentication is needed to load the file</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="password" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The password to use when authentication is needed to load the file</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the file has been loaded</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TextParser">
    <xs:annotation>
      <xs:documentation>BiTextParser is a helper class for parsing text within a Bindows
        application.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TextParserAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTextParser" substitutionGroup="TextParser"/>

  <xs:attributeGroup name="TextParserAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="replacePattern" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The pattern to match and replace.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="replaceFlags" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - RegExp flags</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="printStringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The Object containing the strings for replacing</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="parseFunction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Function - The function being used while parsing.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Theme">
    <xs:annotation>
      <xs:documentation>This class represents a theme which consists of a css file
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ThemeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTheme" substitutionGroup="Theme"/>

  <xs:attributeGroup name="ThemeAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="default" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the theme is the default theme</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="menuCss" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the string needed for the IE menus to work correctly</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ThemeManager">
    <xs:annotation>
      <xs:documentation>This singleton class is used for theme support in Bindows
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ThemeManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiThemeManager" substitutionGroup="ThemeManager"/>

  <xs:attributeGroup name="ThemeManagerAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="defaultTheme" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTheme - The theme that is currently being used</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onthemechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the default
          theme changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TimePicker">
    <xs:annotation>
      <xs:documentation>This component provides a spinner like component
        that is used to enter a time. The control consists of different text fields
        for the different parts of the time string. The string format is decided
        using aBiDateFormat object.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TimePickerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTimePicker" substitutionGroup="TimePicker"/>

  <xs:attributeGroup name="TimePickerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="minimum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The minimum selectable date</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="maximum" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - The maximum selectable date</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="date" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Date - This is a date object that describes the currently entered time</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dateFormat" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiDateFormat - This is theBiDateFormat that describes how to format the text inside
          the time date picker.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the time is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfieldchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired when the active field of the
          component changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oninvalidcharacter" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is fired if an invalid character
          is typed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Timer">
    <xs:annotation>
      <xs:documentation>This class can be used to schedule events to occur later in time.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TimerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTimer" substitutionGroup="Timer"/>

  <xs:attributeGroup name="TimerAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="enabled" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If this is false no tick events are fired.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="interval" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of milliseconds between the firing of the tick
          events. Changing this also stops the timer.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ontick" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires every interval milliseconds for
          an enabled and started timer.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TimerManager">
    <xs:annotation>
      <xs:documentation>This is a singleton class that handles the disposal of all
        timers.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TimerManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTimerManager" substitutionGroup="TimerManager"/>

  <xs:attributeGroup name="TimerManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ToolBar">
    <xs:annotation>
      <xs:documentation>This class is used to create a tool bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBar" substitutionGroup="ToolBar"/>

  <xs:attributeGroup name="ToolBarAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ToolBarButton">
    <xs:annotation>
      <xs:documentation>This is used to create buttons that are placed on a tool bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarButton" substitutionGroup="ToolBarButton"/>

  <xs:attributeGroup name="ToolBarButtonAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>

    <xs:attribute name="onaction" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the button is clicked</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ToolBarMenuButton">
    <xs:annotation>
      <xs:documentation>This class creates a tool bar button that shows a menu
        when the button is pressed.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarMenuButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarMenuButton" substitutionGroup="ToolBarMenuButton"/>

  <xs:attributeGroup name="ToolBarMenuButtonAttributes">

    <xs:attributeGroup ref="ToolBarButtonAttributes"/>

    <xs:attribute name="menu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiMenu - The menu to show when the button is pressed.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ToolBarRadioButton">
    <xs:annotation>
      <xs:documentation>This represents a radio button that can be placed on a tool bar.
        To group different tool bar radio buttons into a radio group
        use the BiRadioGroup class in the same
        way it would be used for normal radio buttons.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarRadioButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarRadioButton" substitutionGroup="ToolBarRadioButton"/>

  <xs:attributeGroup name="ToolBarRadioButtonAttributes">

    <xs:attributeGroup ref="ToolBarToggleButtonAttributes"/>

    <xs:attribute name="group" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiRadioGroup - The group that the radio button should be part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ToolBarSeparator">
    <xs:annotation>
      <xs:documentation>This class is used to display a separator on a tool bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarSeparatorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarSeparator" substitutionGroup="ToolBarSeparator"/>

  <xs:attributeGroup name="ToolBarSeparatorAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="ToolBarSplitMenuButton">
    <xs:annotation>
      <xs:documentation>This compound widget consists of a toggle-button and a drop down menu.
        The toggle-button can be plain text or have an icon or both.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarSplitMenuButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarSplitMenuButton" substitutionGroup="ToolBarSplitMenuButton"/>

  <xs:attributeGroup name="ToolBarSplitMenuButtonAttributes">

    <xs:attributeGroup ref="ToolBarButtonAttributes"/>

    <xs:attribute name="menu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiMenu - Sets the menu on the control</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:: String The text to use on the button - Sets the label text on the button of the control.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ToolBarSplitToggleMenuButton">
    <xs:annotation>
      <xs:documentation>This compound widget consists of a button and a drop down menu.
        The Button can be plain text or have an icon or both.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarSplitToggleMenuButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarSplitToggleMenuButton" substitutionGroup="ToolBarSplitToggleMenuButton"/>

  <xs:attributeGroup name="ToolBarSplitToggleMenuButtonAttributes">

    <xs:attributeGroup ref="ToolBarToggleButtonAttributes"/>

    <xs:attribute name="menu" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiMenu - Sets the menu on the control</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Sets the label text on the button of the control.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ToolBarToggleButton">
    <xs:annotation>
      <xs:documentation>This represents a toggle button (check box button) that can be placed on a tool bar.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolBarToggleButtonAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolBarToggleButton" substitutionGroup="ToolBarToggleButton"/>

  <xs:attributeGroup name="ToolBarToggleButtonAttributes">

    <xs:attributeGroup ref="ToolBarButtonAttributes"/>

    <xs:attribute name="checked" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the button is checked or not. When this is changed
          the change event is fired.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="userValue" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - A value associated with the button.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the checked is changed</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="ToolTip">
    <xs:annotation>
      <xs:documentation>This class is used for showing generic tool tip controls. A tool tip
        can contain other controls.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolTipAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolTip" substitutionGroup="ToolTip"/>

  <xs:attributeGroup name="ToolTipAttributes">

    <xs:attributeGroup ref="PopupAttributes"/>

    <xs:attribute name="hideOnHover" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - If this is true then the tool tip is hidden if the mouse pointer enters the
          tool tip.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="mousePointerOffsetX" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the tool tip relative to the mouse pointer</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="mousePointerOffsetY" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The position of the tool tip relative to the mouse pointer</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="hideInterval" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of milliseconds before hiding the tool tip</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showInterval" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of milliseconds before showing the tool tip</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="ToolTipManager">
    <xs:annotation>
      <xs:documentation>A singleton class used by the system to manage tool
        tips.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="ToolTipManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiToolTipManager" substitutionGroup="ToolTipManager"/>

  <xs:attributeGroup name="ToolTipManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="currentToolTip" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiToolTip - The currently shown (or about to show) tool tip</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Tree">
    <xs:annotation>
      <xs:documentation>This class is used for showing a tree, a column list and a combined
        tree with multiple columns. The control also provides headers that can
        be used to resize the columns, reorder the columns or sort the data by
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree" substitutionGroup="Tree"/>

  <xs:attributeGroup name="TreeAttributes">

    <xs:attributeGroup ref="AbstractGridAttributes"/>

    <xs:attribute name="indentWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The amount to indent child nodes</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showPlusMinus" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the expand and collapse icons</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showRootLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show lines on the top most level</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="indentColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The column to indent by.
          Setting this to -1 (or a value greater than the column count) removes
          the indentation.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the lines in the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="expanded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the node is expanded or not. The tree control is always
          expanded so setting this to false has no effect.
          This is provided so that the tree has the same interface as the
          tree nodes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selected row/cell changes</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onexpandedchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the tree is expanded or
          collapsed and the lead item is changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Tree2">
    <xs:annotation>
      <xs:documentation>This component is a special case ofBiTreeView which has an interface which
        is similar toBiTree
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Tree2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree2" substitutionGroup="Tree2"/>

  <xs:attributeGroup name="Tree2Attributes">

    <xs:attributeGroup ref="TreeViewAttributes"/>

    <xs:attribute name="columnCount" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The number of columns in the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnNames" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The text to show on the headers of the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnWidths" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String[] - The widths of the columns of the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnOrders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The order of the columns. This an array containing the indexes of the
          columns.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the headers for the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showRowHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the row headers for the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showGridLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show grid lines between the cells in the tree</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Tree2Cell">
    <xs:annotation>
      <xs:documentation>This is used for the cells in aBiTree2Row row
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Tree2CellAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree2Cell" substitutionGroup="Tree2Cell"/>

  <xs:attributeGroup name="Tree2CellAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="data" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object - The data that is associated with the cell</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Tree2DataModel">
    <xs:annotation>
      <xs:documentation>This data model is to be used withBiTree2. It uses theBiTree2Row and
        BiTree2Cell to provide the data
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Tree2DataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree2DataModel" substitutionGroup="Tree2DataModel"/>

  <xs:attributeGroup name="Tree2DataModelAttributes">

    <xs:attributeGroup ref="TreeDataModelAttributes"/>

    <xs:attribute name="treeView" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTree2 - The tree view the data model is acting on</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Tree2Row">
    <xs:annotation>
      <xs:documentation>This class is used as the data for rows in theBiTree2 component
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Tree2RowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree2Row" substitutionGroup="Tree2Row"/>

  <xs:attributeGroup name="Tree2RowAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="expanded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the row is expanded</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="Tree2ViewManager">
    <xs:annotation>
      <xs:documentation>This class is a special view manager to be used withBiTree2
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="Tree2ViewManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTree2ViewManager" substitutionGroup="Tree2ViewManager"/>

  <xs:attributeGroup name="Tree2ViewManagerAttributes">

    <xs:attributeGroup ref="TreeViewViewManagerAttributes"/>

    <xs:attribute name="indentColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The column to indent</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeDataModel">
    <xs:annotation>
      <xs:documentation>This data model takes a a tree consisting ofBiTreeNode2 nodes and exposes
        the interface needed by theBiTreeView. The internal tree does not have to
        be aBiTreeNode2 as long as getNodeChildren, getNodeHashCode, getCellText and
        getSortFunction (if sorting is needed) are overridden.
        The default implementation assumes that the data in theBiTreeNode2 objects
        are arrays containing the cell data.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeDataModel" substitutionGroup="TreeDataModel"/>

  <xs:attributeGroup name="TreeDataModelAttributes">

    <xs:attributeGroup ref="TreeViewDataModelAttributes"/>

    <xs:attribute name="rootNode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTreeNode2 - The tree node that is the root of the data</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondatachanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the
          data changes.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onexpand" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when a row has expanded</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncollapse" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when a row has collapsed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforeexpand" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired before a row is expanded</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforecollapse" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired before a row is collapsed</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onrowcountchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the row count changes.
          The rowIndex and the rowCount properties on the
          event object are available for this event
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TreeHelper">
    <xs:annotation>
      <xs:documentation>This class contains some static methods that are usufull when working
        with trees.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeHelperAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeHelper" substitutionGroup="TreeHelper"/>

  <xs:attributeGroup name="TreeHelperAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeIterator">
    <xs:annotation>
      <xs:documentation>This class is used for iterating over rows and subtrees in a tree
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeIteratorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeIterator" substitutionGroup="TreeIterator"/>

  <xs:attributeGroup name="TreeIteratorAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="rowIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The row index that the iterator is currently at</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeIteratorStackItem">
    <xs:annotation>
      <xs:documentation>This class is used internally byBiTreeIterator to keep track of the path stack
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeIteratorStackItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeIteratorStackItem" substitutionGroup="TreeIteratorStackItem"/>

  <xs:attributeGroup name="TreeIteratorStackItemAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeNode">
    <xs:annotation>
      <xs:documentation>This represents a tree node for a tree or a
        row for a tree. A tree node is not a component
        but it has some visual properties that are similar to a
        component.
        When working with trees and column list it is usually suitable to extend
        this class instead of using it directly because this gives better control
        over what data is bound to the node and what text to show on the row.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeNodeAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeNode" substitutionGroup="TreeNode"/>

  <xs:attributeGroup name="TreeNodeAttributes">

    <xs:attributeGroup ref="AbstractGridRowAttributes"/>

    <xs:attribute name="expanded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the node is expanded or not.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeNode2">
    <xs:annotation>
      <xs:documentation>This class is used to build up the tree for the tree model to use
        with theBiTreeView andBiTreeDataModel
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeNode2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeNode2" substitutionGroup="TreeNode2"/>

  <xs:attributeGroup name="TreeNode2Attributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="data" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Object[] - The data that is associated to the node</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeSelectionModel">
    <xs:annotation>
      <xs:documentation>This class is used to handle the selection of the
        nodes in a tree.
        It extends the BiListSelectionModel
        to be able to handle threaded data.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeSelectionModel" substitutionGroup="TreeSelectionModel"/>

  <xs:attributeGroup name="TreeSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeView">
    <xs:annotation>
      <xs:documentation>This class is the base forBiGrid2 andBiTree2. It can be used directly
        with a data model.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeView" substitutionGroup="TreeView"/>

  <xs:attributeGroup name="TreeViewAttributes">

    <xs:attributeGroup ref="TreeViewBaseAttributes"/>

    <xs:attribute name="showBrokenCellTextAsToolTip" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:boolean - If this is property is set to true, tooltip will show whenever a broken cell is hovered. Default
          value is false.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewBase">
    <xs:annotation>
      <xs:documentation>This is the abstract base class forBiTreeView andBiOlapGrid. It contains
        the shared methods and implementations of these 2 classes
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewBaseAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewBase" substitutionGroup="TreeViewBase"/>

  <xs:attributeGroup name="TreeViewBaseAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="useNativeScrollBars" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to use native or custom scroll bars. Custom scroll bars are needed/preferred
          when the tree view/grid has an attached component model or inline edit model.
          If you want to change this it is better to change it before the component has
          been created.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectionModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTreeViewSelectionModel/BiOlapGridSelectionModel - The selection model handling the selected rows and cells
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="viewManager" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTreeViewViewManager/BiOlapGridViewManager - The view manager handles visual aspects that are not directly
          related to
          the data model
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="dataModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTreeViewDataModel/BiOlapGridDataModel - The data model describes the data to be shown in the tree view and
          OLAP grid
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="inlineEditModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiInlineEditModel - The inline edit model is used to handle editing of cells in the tree view.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="attachedComponentModel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiAttachedComponentModel - The attached component model is used to handle Bindows components inside the
          cells of the tree view.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewCellInfo">
    <xs:annotation>
      <xs:documentation>This represents information about a cell in the tree view.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewCellInfoAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewCellInfo" substitutionGroup="TreeViewCellInfo"/>

  <xs:attributeGroup name="TreeViewCellInfoAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="row" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - What row the cell is part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="column" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - What column the cell is part of</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewDataModel">
    <xs:annotation>
      <xs:documentation>This defines the interface that is needed for a data model for aBiTreeView.
        This actually implements a dummy data model. Extend this class to create
        more useful data models
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewDataModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewDataModel" substitutionGroup="TreeViewDataModel"/>

  <xs:attributeGroup name="TreeViewDataModelAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="allExpanded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Sets all available rows expanded.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondatachanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when the data
          has changed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="TreeViewDataModelEvent">
    <xs:annotation>
      <xs:documentation>This event class is used withBiTreeViewDataModel instances so that tree view can be updated to reflect the changes
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewDataModelEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewDataModelEvent" substitutionGroup="TreeViewDataModelEvent"/>

  <xs:attributeGroup name="TreeViewDataModelEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>

    <xs:attribute name="preventUpdate" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Prevent update flag.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewDragHeader">
    <xs:annotation>
      <xs:documentation>This component is used to show a header being dragged when the user is
        reorganizing the headers for aBiTreeView
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewDragHeaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewDragHeader" substitutionGroup="TreeViewDragHeader"/>

  <xs:attributeGroup name="TreeViewDragHeaderAttributes">

    <xs:attributeGroup ref="LabelAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeViewDragHeaderMarker">
    <xs:annotation>
      <xs:documentation>This class is used withBiTreeView when the columns are being reorder to
        give feedback where the column will be dropped
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewDragHeaderMarkerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewDragHeaderMarker" substitutionGroup="TreeViewDragHeaderMarker"/>

  <xs:attributeGroup name="TreeViewDragHeaderMarkerAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeViewResizeOutline">
    <xs:annotation>
      <xs:documentation>This component is used as an overlay above the column that is currently being
        resized
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewResizeOutlineAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewResizeOutline" substitutionGroup="TreeViewResizeOutline"/>

  <xs:attributeGroup name="TreeViewResizeOutlineAttributes">

    <xs:attributeGroup ref="ResizeHandleAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeViewSelectionModel">
    <xs:annotation>
      <xs:documentation>Selection model forBiTreeView.

        The selection model can operate in 2 modes: cell or row.
        The selected cells/rows are identified by the row index/column index in the
        data model.

        The items in the selectedItems hash are of typeBiTreeViewSelectionModelItem
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewSelectionModelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewSelectionModel" substitutionGroup="TreeViewSelectionModel"/>

  <xs:attributeGroup name="TreeViewSelectionModelAttributes">

    <xs:attributeGroup ref="SelectionModelAttributes"/>

    <xs:attribute name="selectionMode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - Whether to use row selection or cell selection. Valid values are "row"
          and "cell"
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewSelectionModelItem">
    <xs:annotation>
      <xs:documentation>This class is used internally inBiTreeViewSelectionModel to keep track of
        the selected rows
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewSelectionModelItemAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewSelectionModelItem" substitutionGroup="TreeViewSelectionModelItem"/>

  <xs:attributeGroup name="TreeViewSelectionModelItemAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="row" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The row that this represents</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="column" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The column that this represents</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="TreeViewStateManager">
    <xs:annotation>
      <xs:documentation>A simple class that is used internally with theBiTreeView to keep track
        of active and hover cell
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewStateManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewStateManager" substitutionGroup="TreeViewStateManager"/>

  <xs:attributeGroup name="TreeViewStateManagerAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>


  </xs:attributeGroup>

  <xs:element name="TreeViewViewManager">
    <xs:annotation>
      <xs:documentation>This class handles the visual properties of aBiTreeView
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="TreeViewViewManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiTreeViewViewManager" substitutionGroup="TreeViewViewManager"/>

  <xs:attributeGroup name="TreeViewViewManagerAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="treeView" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiTreeView - The tree view this view manager is to be used with</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showGridLines" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show grid lines between the cells in the tree view</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollLeft" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the scroll left to the view manager so that the view manager can figure out what column to
          start at
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="scrollTop" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - Sets the scroll top to the view manager so that the view manager can figure out what row to start at
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="indentColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the column that should be indented. Use -1 to not show any
          indention
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="highlightSortColumn" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to highlight the background of the sorted column</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="columnOrders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number[] - The order of the columns in the visual representation</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rowHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of a row in the tree view</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the headers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="headersHeight" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The height of the column headers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ascendingIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The path to the arrow image to use for ascending sort</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="descendingIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The path to the arrow image to use for descending sort</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showRowHeaders" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the row headers</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rowHeadersWidth" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The width of the row headers</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="UndeterminedProgressBar">
    <xs:annotation>
      <xs:documentation>
        This component is used to show a progress bar that shows progress
        of an undeterminable size. The progress bar is animated to show that it
        is busy. Use start and stop to control the
        animation. Changing the maximum
        changes the number of steps the animation does.

      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="UndeterminedProgressBarAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiUndeterminedProgressBar" substitutionGroup="UndeterminedProgressBar"/>

  <xs:attributeGroup name="UndeterminedProgressBarAttributes">

    <xs:attributeGroup ref="ProgressBarAttributes"/>


  </xs:attributeGroup>

  <xs:element name="Uri">
    <xs:annotation>
      <xs:documentation>This class is used to define a Universal Resource Identifier (URI). This
        is sometimes also known as a Uniform Resource Locator (URL). A URI is
        used to describe the location and source of external files. A URI is
        only a representation of the string format describing the URI. It does
        not know how to lookup the information the URI might point at.
        A general URI has the following format. Below this is a list of what
        part of the URI maps to what property. http://user:password@www.domain.com:80/dir/file.html?param0=value=0;param1=value1#fragment
        scheme - http userInfo - user:password host - www.domain.com port - 80 path - /dir/file.html dirPath - /dir/ query -
        ?param0=value=0;param1=value1
        fragment - #fragment getParam("param0") - value0 getParam("param1") - value1 href -
        http://user:password@www.domain.com:80/dir/file.html?param0=value=0;param1=value1#fragment
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="UriAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiUri" substitutionGroup="Uri"/>

  <xs:attributeGroup name="UriAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>

    <xs:attribute name="href" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - This is the complete string representation of the URI.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="VBox">
    <xs:annotation>
      <xs:documentation>This is a verticalBiBox where components are laid out from top to bottom.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="VBoxAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiVBox" substitutionGroup="VBox"/>

  <xs:attributeGroup name="VBoxAttributes">

    <xs:attributeGroup ref="BoxAttributes"/>


  </xs:attributeGroup>

  <xs:element name="WebService">
    <xs:annotation>
      <xs:documentation>This is a factory class to the
        Microsoft
        WebService Behavior. Creating aBiWebService actually creates and returns
        an HTML element with the given behavior attached.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WebServiceAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWebService" substitutionGroup="WebService"/>

  <xs:attributeGroup name="WebServiceAttributes">


  </xs:attributeGroup>

  <xs:element name="WebService2">
    <xs:annotation>
      <xs:documentation>Construct a web service client. A BiWebService2 object allows accessing web services through SOAP, based on a WSDL
        describing the services' interfaces. To use BiWebService2, first construct an object of this class. Then, call the object's
        useService method -- passing the URL to the WSDL describing the service and the service's name. Finally, call syncInvoke,
        asyncInvoke and callMethod to invoke service operations synchronously or asynchronously.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WebService2Attributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWebService2" substitutionGroup="WebService2"/>

  <xs:attributeGroup name="WebService2Attributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="async" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - This property determines whether or not calls made by the web service using callMethod and service
          loading using useService without specifying an async flag is done asynchronously.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onserviceloaded" type="xs:string">
      <xs:annotation>
        <xs:documentation>Notifies that loading the WSDL used to describe the service represented by this instance is complete. If the event
          has an 'err' member, this describes an error which occurred during loading.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncallcomplete" type="xs:string">
      <xs:annotation>
        <xs:documentation>Notifies that an asynchronous web service operation invocation was completed, either succesfuly or with errors.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Window">
    <xs:annotation>
      <xs:documentation>This class is used for internal windows inside the application window.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WindowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWindow" substitutionGroup="Window"/>

  <xs:attributeGroup name="WindowAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="continuousLayout" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether resizing/moving of the window should be continuously updated.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="contentPane" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - This returns the component representing the client area of the window.
          All components should be added to this component.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showIcon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the icon on the caption.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMinimize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the minimize button on the caption.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showMaximize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiWindow - Whether to show the maximize button on the caption</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="showClose" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to show the close button on the caption.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="caption" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The title text of the window.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="icon" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The icon image to show on the window caption. Note that changing
          the image object does not update the window icon. You'll have to
          set the icon property to update the icon. The size of the icon
          is ignored and will always be 16 x 16 pixels.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="canMinimize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the window can be minimized by the user.
          If the window cannot be minimized and the minimize button is shown the
          button is disabled.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="hideChrome" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to hide the caption bar of the window.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="resizable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the window can be resized by the user.
          If the window cannot be resized and the maximize button is shown the
          button is disabled.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="movable" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the window can be moved by the user.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="state" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The state of the window. Valid values are: normal maximized minimized</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="active" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether the window should be the active window.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="acceptButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default accept button. If this is set
          then the action
          event is dispatched from the accept button when the enter key
          is pressed. This does not have to
          be a BiButton, any
          BiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="cancelButton" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiEventTarget - The button that acts as the default cancel button. If this is set
          then the action
          event is dispatched from the cancel button when the Esc key is pressed.
          This does not have to be a BiButton, any
          BiEventTarget will work.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="opaque" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to make the window opaque. An opaque window will not let plugins and
          other windowed controls show through. However, there is a price to this. This
          is achieved using an internal iframe and this makes the window heavier and
          slower.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this window. If this is set to
          null then the string bundle for
          application is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onbeforeclose" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the window is closed. If the
          default action is prevented the window is
          not closed.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onclose" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the window is closed.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncaptionchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the caption changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onstatechanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the window state changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oniconchanged" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the icon changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onactivated" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the window becomes active.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondeactivated" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the window becomes inactive</xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="WindowManager">
    <xs:annotation>
      <xs:documentation>This class can be used with internal windows
        to provide more features.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WindowManagerAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWindowManager" substitutionGroup="WindowManager"/>

  <xs:attributeGroup name="WindowManagerAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="component" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The component that the windows are added to</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="activeWindow" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiWindow - The window that is currently active. This might be null
          if no window is active.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this window manager. If this is set to
          null then the string bundle for
          application is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onactivation" type="xs:string">
      <xs:annotation>
        <xs:documentation>The window manager has become activated. E.g. one of its windows is activated.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="ondeactivation" type="xs:string">
      <xs:annotation>
        <xs:documentation>The window manager is deactivated. You have left it and can no longer
          manipulate its windows via keyboard shortcuts etc..
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="Wizard">
    <xs:annotation>
      <xs:documentation>This component creates a dialog that contains a BiWizardPane.
        The wizard pane provides buttons for navigating back and forth and finishing
        and canceling the wizard.
        Any BiComponent may be used as a page.
        Use addPage to add pages to the wizard. The pages dispatch
        activated and deactivated when the active page
        changes. You can also use the change event to get notifications
        about when the user changes the active page.
        Most of the methods and properties provided by the BiWizardPane
        are also available on the wizard dialog.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WizardAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWizard" substitutionGroup="Wizard"/>

  <xs:attributeGroup name="WizardAttributes">

    <xs:attributeGroup ref="DialogAttributes"/>

    <xs:attribute name="selectedIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the selected page. If no page is selected this
          returns -1.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedPage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The currently selected page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="backdropImage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiImage - The image used as the backdrop on the left side of the wizard pane.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this wizard dialog. For keys to use in the string
          bundle seeBiWizardPane.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onback" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage changes to the previous page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onnext" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage changes to the next page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage page changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforechange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage page changes. Call
          preventDefault
          on the event object to prevent the wizard to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforeback" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage changes to the previous page. Call
          preventDefault
          on the event object to prevent the wizard to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforenext" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage changes to the next page. Call
          preventDefault
          on the event object to prevent the wizard to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforefinish" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the the wizard's finish event is called. Calling
          preventDefault
          on the event object will prevent the wizard from dispatching the finish event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforecancel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the the wizard's cancel event is called. Calling
          preventDefault
          on the event object will prevent the wizard from dispatching the cancel event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfinish" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is dispatched when the user clicks
          the finish button.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncancel" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is dispatched when the user clicks
          the cancel button.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="WizardPane">
    <xs:annotation>
      <xs:documentation>This component creates a wizard that can contain 1 or more pages. The
        wizard pane provides buttons for navigating back and forth and finishing
        and canceling the wizard.
        Any BiComponent may be used as a page.
        Use addPage to add pages to the wizard. The pages dispatch
        activated and deactivated when the active page
        changes. You can also use the change event to get notifications
        about when the user changes the active page.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WizardPaneAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWizardPane" substitutionGroup="WizardPane"/>

  <xs:attributeGroup name="WizardPaneAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="selectedIndex" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The index of the selected page. If no page is selected this
          returns -1.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="selectedPage" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiComponent - The currently selected page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="stringBundle" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiStringBundle - The string bundle to use for this wizard pane. If this is set to
          null then the string bundle for
          application is used.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onback" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage changes to the previous page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onnext" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage changes to the next page.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onchange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires when the selectedPage page changes.</xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforechange" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage page changes. Call
          preventDefault
          on the event object to prevent the wizard pane to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforeback" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage changes to the previous page. Call
          preventDefault
          on the event object to prevent the wizard pane to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforenext" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the selectedPage changes to the next page. Call
          preventDefault
          on the event object to prevent the wizard pane to change the page.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforefinish" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the the wizard pane's finish event is called. Calling
          preventDefault
          on the event object will prevent the wizard pane from dispatching the finish event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onbeforecancel" type="xs:string">
      <xs:annotation>
        <xs:documentation>Fires before the the wizard pane's cancel event is called. Calling
          preventDefault
          on the event object will prevent the wizard pane from dispatching the cancel event.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="onfinish" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is dispatched when the user clicks
          the finish button.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncancel" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is dispatched when the user clicks
          the cancel button.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="VmlLabel">
    <xs:annotation>
      <xs:documentation>This class is used internally inside aBiGraph for labels.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="VmlLabelAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiVmlLabel" substitutionGroup="VmlLabel"/>

  <xs:attributeGroup name="VmlLabelAttributes">

    <xs:attributeGroup ref="ComponentAttributes"/>

    <xs:attribute name="align" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text align of the the text on the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="text" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The text to show on the label</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="fontSize" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Number - The font size in pixels</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="WsCallCompleteEvent">
    <xs:annotation>
      <xs:documentation>BiWsCallCompleteEvent -- notifies of an asynchronous call completion.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="WsCallCompleteEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiWsCallCompleteEvent" substitutionGroup="WsCallCompleteEvent"/>

  <xs:attributeGroup name="WsCallCompleteEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="XmlDataColumn">
    <xs:annotation>
      <xs:documentation>This class is used for the columns in aBiXmlDataSet.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlDataColumnAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlDataColumn" substitutionGroup="XmlDataColumn"/>

  <xs:attributeGroup name="XmlDataColumnAttributes">

    <xs:attributeGroup ref="DataColumnAttributes"/>

    <xs:attribute name="xsType" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The XML Schema type used for the column</xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="XmlDataRow">
    <xs:annotation>
      <xs:documentation>This class is used for the rows in aBiXmlDataSet.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlDataRowAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlDataRow" substitutionGroup="XmlDataRow"/>

  <xs:attributeGroup name="XmlDataRowAttributes">

    <xs:attributeGroup ref="DataRowAttributes"/>


  </xs:attributeGroup>

  <xs:element name="XmlDataSet">
    <xs:annotation>
      <xs:documentation>This class maps an xml file outputted from an ADO.NET DataSet to aBiDataSet.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlDataSetAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlDataSet" substitutionGroup="XmlDataSet"/>

  <xs:attributeGroup name="XmlDataSetAttributes">

    <xs:attributeGroup ref="DataSetAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - This property can be used to load an external XML document and use that as
          the source for the XML data set
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rootNode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Node - The root XML node used to define the data set. This is either aBiXmlDocument
          or an XML element.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="ondataready" type="xs:string">
      <xs:annotation>
        <xs:documentation>This is dispatched when the data set uses external
          data and the data has been loaded.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="XmlDataTable">
    <xs:annotation>
      <xs:documentation>This class is used for the tables in aBiXmlDataSet.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlDataTableAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlDataTable" substitutionGroup="XmlDataTable"/>

  <xs:attributeGroup name="XmlDataTableAttributes">

    <xs:attributeGroup ref="DataTableAttributes"/>


  </xs:attributeGroup>

  <xs:element name="XmlDocument">
    <xs:annotation>
      <xs:documentation>This is a factory class to the Microsoft
        DOMDocument
        object. Creating aBiXmlDocument actually creates and returns a DOMDocument.
        For Mozilla this returns a new XMLDocument (as defined by the W3C DOM). For
        Mozilla we also extend the DOM Node interfaces to make it more compatible
        with MSXML.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlDocumentAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlDocument" substitutionGroup="XmlDocument"/>

  <xs:attributeGroup name="XmlDocumentAttributes">


  </xs:attributeGroup>

  <xs:element name="XmlHttp">
    <xs:annotation>
      <xs:documentation>This is a factory class to the Microsoft
        IXMLHTTPRequest
        object. Creating aBiXmlHttp actually creates and returns an IXMLHTTPRequest.
        For Mozilla this creates XMLHttpRequest, which happen
        to implement the IXMLHTTPRequest interface.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlHttpAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlHttp" substitutionGroup="XmlHttp"/>

  <xs:attributeGroup name="XmlHttpAttributes">


  </xs:attributeGroup>

  <xs:element name="XmlLoader">
    <xs:annotation>
      <xs:documentation>Loads an XML document from the server or the local file system. (The
        local file system can only be accessed when using a local application.)
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlLoaderAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlLoader" substitutionGroup="XmlLoader"/>

  <xs:attributeGroup name="XmlLoaderAttributes">

    <xs:attributeGroup ref="TextLoaderAttributes"/>


  </xs:attributeGroup>

  <xs:element name="XmlResourceParser">
    <xs:annotation>
      <xs:documentation>This class deserializes an XML document to a Bindows object hierarchy.
        This is mostly tailored for BiComponent
        hierarchies but can be used for any class extending BiObject.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlResourceParserAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlResourceParser" substitutionGroup="XmlResourceParser"/>

  <xs:attributeGroup name="XmlResourceParserAttributes">

    <xs:attributeGroup ref="XmlLoaderAttributes"/>

    <xs:attribute name="autoNameMapping" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - When this is true any XML object that has an id attribute will create a
          global reference (with the same name as the id value) to the object created
          from this XML element.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="rootNode" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Node - The XML element that describes the root of the object hierarchy.
          Only set this before you actually use the parser.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

  </xs:attributeGroup>

  <xs:element name="XmlRpc">
    <xs:annotation>
      <xs:documentation>This is a class that implements an XML-RPC client. The XML-RPC
        specifcation can be found at http://www.xmlrpc.com/spec.
        For more info and XML-RPC server implementations see
        http://www.xmlrpc.com/.
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlRpcAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlRpc" substitutionGroup="XmlRpc"/>

  <xs:attributeGroup name="XmlRpcAttributes">

    <xs:attributeGroup ref="EventTargetAttributes"/>

    <xs:attribute name="uri" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type: BiUri - The URI where to find the remote procedure</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="async" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:Boolean - Whether to use asynchronous method call. If this is true then
          the call to callMethod returns instantly. When using
          asynchronous calling use the result event for the call back
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="user" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The user name to pass to the server when calling the remote procedure</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="password" type="xs:string">
      <xs:annotation>
        <xs:documentation>Type:String - The password to pass to the server when calling the remote procedure</xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute name="onload" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when a method call
          response is received from the server.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>

    <xs:attribute name="oncallcomplete" type="xs:string">
      <xs:annotation>
        <xs:documentation>This event is fired when
          a method call is complete.
        </xs:documentation>
      </xs:annotation>
    </xs:attribute>


  </xs:attributeGroup>

  <xs:element name="XmlRpcCallCompleteEvent">
    <xs:annotation>
      <xs:documentation>This event is used when a call to an XML-RPC server is completed
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlRpcCallCompleteEventAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlRpcCallCompleteEvent" substitutionGroup="XmlRpcCallCompleteEvent"/>

  <xs:attributeGroup name="XmlRpcCallCompleteEventAttributes">

    <xs:attributeGroup ref="EventAttributes"/>


  </xs:attributeGroup>

  <xs:element name="XmlRpcDouble">
    <xs:annotation>
      <xs:documentation>This class is useful when working withBiXmlRpc whenever a double is required
        but you don't know whether the number is an integer or not
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlRpcDoubleAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlRpcDouble" substitutionGroup="XmlRpcDouble"/>

  <xs:attributeGroup name="XmlRpcDoubleAttributes">


  </xs:attributeGroup>

  <xs:element name="XmlRpcError">
    <xs:annotation>
      <xs:documentation>This class is used when an error happens either at the server or due to an
        invalid response from the server. Errors of this type are thrown byBiXmlRpc
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlRpcErrorAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlRpcError" substitutionGroup="XmlRpcError"/>

  <xs:attributeGroup name="XmlRpcErrorAttributes">


  </xs:attributeGroup>

  <xs:element name="XmlRpcInt">
    <xs:annotation>
      <xs:documentation>This class is useful when working withBiXmlRpc whenever an int is required
        but you don't know whether the number is an integer or not
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XmlRpcIntAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXmlRpcInt" substitutionGroup="XmlRpcInt"/>

  <xs:attributeGroup name="XmlRpcIntAttributes">


  </xs:attributeGroup>

  <xs:element name="XsTypeConverter">
    <xs:annotation>
      <xs:documentation>This class contains static methods that converts XML Schema types to Javascript
        types as well as converting strings formatted according to the XML Schema
        to Javascript values.
        The following type relations are used

        XS type name - JS type name - JS class
        "negativeInteger" - "number" - Number
        "unsignedShort" - "number" - Number
        "unsignedByte" - "number" - Number
        "unsignedLong" - "number" - Number
        "unsignedInt" - "number" - Number
        "decimal" - "number" - Number
        "boolean" - "number" - Number
        "integer" - "number" - Number
        "double" - "number" - Number
        "float" - "number" - Number
        "short" - "number" - Number
        "byte" - "number" - Number
        "long" - "number" - Number
        "int" - "number" - Number
        "QName" - "string" - String
        "string" - "string" - String
        "normalizedString" - "string" - String
        "dateTime" - "date" - Date
        "date" - "date" - Date
        "time" - "date" - Date
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:group ref="BindowsComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attributeGroup ref="XsTypeConverterAttributes"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BiXsTypeConverter" substitutionGroup="XsTypeConverter"/>

  <xs:attributeGroup name="XsTypeConverterAttributes">

    <xs:attributeGroup ref="ObjectAttributes"/>


  </xs:attributeGroup>


  <xs:group name="BindowsComponentsGroup">
    <xs:choice>
      <!--<xs:group ref="iv:InfiViewComponentsGroup" minOccurs="0" maxOccurs="unbounded"/>-->
      <xs:group ref="iv:ElementsAllowedExternally" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DrawLine" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridRow" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridChartRow" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeNode" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AnimationRange" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Area" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AreaCollection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Base64" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Border" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartCategory" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartPoint" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartPresentation" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartPresentationManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartSeries" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DataColumn" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlDataColumn" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DataRow" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlDataRow" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DataTable" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlDataTable" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DateFormat" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DateFormatSymbols" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DrawAnchor" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="CssLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ImageLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ObjectLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Script" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ScriptLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SerializedLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Style" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TextLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="JsonLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="L10nLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlResourceParser" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AttachedComponentModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="InlineEditModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Command" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Component" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ColumnChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="BarChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PercentageStackedColumnChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PercentageStackedBarChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StackedColumnChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StackedBarChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="LineChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PieChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ColumnChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="BarChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PercentageStackedColumnChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PercentageStackedBarChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StackedColumnChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StackedBarChart2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ColumnChartSection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="LineMarker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PieChartSection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ColumnChartSection2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridChart" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AccordionPage" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AccordionPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Box" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="HBox" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="VBox" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Calendar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartAreaBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartArea" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartArea2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartCategoryAxisBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartCategoryAxis" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartCategoryAxis2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartGridLinesBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartGridLines" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartGridLines2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartLegend" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartValueAxisBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartValueAxis" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartValueAxis2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ComboBox" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DatePicker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DesktopPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DockPanel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="FlowPanel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2Component" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2CircularBorder" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2ImageBorder" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RectangularBorder" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2BasicCap" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2LinearGradientFiller" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RadialGradientFiller" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RingGradientFiller" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2PlainColorFiller" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2LinearRange" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RadialRange" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2LinearScale" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RadialScaleSection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2LinearTicks" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RadialTicks" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2LinearNeedle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2RadialNeedle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2Group" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeLabels" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeMajorTicks" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeMinorTicks" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeNeedle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugePlate" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeSection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GraphBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Graph" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Graph2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GraphContentArea" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridHeaders" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridPanel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridPanel2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridRowHeaders" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GroupBox" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Iframe" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PrintFrame" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RichEdit" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Image" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="InlineComponent" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="IpField" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Label" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Button" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="AccordionButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RepeatButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ChartLegendLabel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="CheckBox" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Gauge2Label" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GaugeTitle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridHeader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridHeaderCorner" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridHeaderFiller" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GroupBoxTitle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ListItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ComboBoxItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Popup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolTip" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RadioButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StatusBarPanel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarMenuButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarSplitMenuButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarToggleButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarRadioButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TabButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarSplitToggleMenuButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewDragHeader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="LinkManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="List" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="MenuBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="MoveHandle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridDropMarker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OptionPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ProgressBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="UndeterminedProgressBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ResizeHandle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridResizeOutline" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewResizeOutline" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ScrollBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Slider" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Spinner" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SplitPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StatusBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TabPage" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TabPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TextField" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PasswordField" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TextArea" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TimePicker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TabBar" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolBarSeparator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewBase" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGrid" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeView" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SingleTree" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewDragHeaderMarker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="VmlLabel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Window" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Dialog" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ColorPicker" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Wizard" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="WizardPane" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ComponentAnimation" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="LocationAnimator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OpacityAnimator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SizeAnimator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DataSet" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlDataSet" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="FpsGenerator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ImageMap" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ImageMapArea" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ImagePreloader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Link" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Menu" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="MenuItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="CheckBoxMenuItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="MenuButton" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="MenuSeparator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RadioButtonMenuItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridStateManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RadioGroup" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="RangeModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ResourceLoader" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ScriptLoaderQueue" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="CalendarSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ListSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewSelectionModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StringBundle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TextParser" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ThemeManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Timer" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="DataSetDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid2DataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SingleTreeDataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree2DataModel" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewStateManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="WebService2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="WindowManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlRpc" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Font" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid2Cell" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid2Row" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridCell" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridChartCell" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridColumn" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridPanel2Cell" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="GridPanel2Row" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="HashTable" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Json" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Line" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="LoadManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Math" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridCellInfo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OlapGridViewManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="OrderedIterator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Point" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="PopupManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SelectionItemCollection" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Set" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Shape" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Circle" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Polygon" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SingleTreeNode" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Sort" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="StringBuffer" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Subtree" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Theme" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TimerManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="ToolTipManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree2Cell" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree2Row" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeHelper" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeIterator" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeIteratorStackItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeNode2" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewCellInfo" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewSelectionModelItem" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="TreeViewViewManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Grid2ViewManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="SingleTreeViewManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Tree2ViewManager" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Uri" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XsTypeConverter" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="WebService" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlDocument" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlHttp" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlRpcError" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlRpcDouble" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="XmlRpcInt" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="L10nString" minOccurs="0" maxOccurs="unbounded"/>
    </xs:choice>
  </xs:group>

</xs:schema>


