<ServerManagerConfiguration>
  <!-- ******************************************************************** -->
  <ProxyGroup name="internal_views">
    <!-- ================================================================== -->
    <Proxy class="vtkPVView"
           name="ViewBase"
           processes="client|renderserver|dataserver">
      <DoubleVectorProperty command="SetViewTime"
                            default_values="none"
                            name="ViewTime"
                            number_of_elements="1"
                            panel_visibility="never"
                            state_ignored="1">
        <DoubleRangeDomain name="range" />
        <Documentation>The pipeline update time for this view. This gets passed
        to all representations added to this view.</Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetCacheKey"
                            default_values="none"
                            name="CacheKey"
                            number_of_elements="1"
                            panel_visibility="never"
                            state_ignored="1">
        <DoubleRangeDomain name="range" />
        <Documentation>This is the cache key used to indentify which cache
        entry to use for rendering when caching is enabled.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetUseCache"
                         default_values="0"
                         name="UseCache"
                         panel_visibility="never"
                         number_of_elements="1"
                         state_ignored="1">
        <BooleanDomain name="bool" />
        <Documentation>Indicates whether to use cache for subsequent
        renderings.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetPosition"
                         default_values="0 0"
                         name="ViewPosition"
                         panel_visibility="never"
                         number_of_elements="2"
                         is_internal="1">
        <!-- ViewPosition is "internal" since vtkSMViewLayoutProxy typically
             sets it up. -->
        <Documentation>Set the position on this view in the multiview
        configuration.</Documentation>
        <Hints>
          <NoDefault />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetSize"
                         default_values="400 400"
                         ignore_synchronization="1"
                         name="ViewSize"
                         number_of_elements="2"
                         panel_visibility="never"
                         state_ignored="1"
                         no_custom_default="1">
        <Hints>
          <NoDefault />
        </Hints>
        <Documentation>Set the size of this view in the multiview
        configuration.</Documentation>
      </IntVectorProperty>
      <ProxyProperty command="AddRepresentation"
                     name="Representations"
                     remove_command="RemoveRepresentation"
                     repeatable="1">
        <Documentation>Representations in this view.</Documentation>
      </ProxyProperty>
    </Proxy>

    <!-- ================================================================== -->
    <Proxy base_proxygroup="internal_views"
           base_proxyname="ViewBase"
           class="vtkPVXYChartView"
           name="XYChartViewTitle"
           processes="client|renderserver|dataserver">
      <Documentation>This is the base proxy for XY chart views.</Documentation>
      <StringVectorProperty command="SetTitle"
                            name="ChartTitle"
                            number_of_elements="1"
                            default_values="">
        <Documentation>
          Set the title to use for the chart. Use ${TIME} to display the current time.
        </Documentation>
        <Hints>
          <PlaceholderText>Use ${TIME} to display current time</PlaceholderText>
        </Hints>
      </StringVectorProperty>
      <IntVectorProperty command="SetTitleAlignment"
                         default_values="1"
                         name="ChartTitleAlignment"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Left"
                 value="0" />
          <Entry text="Center"
                 value="1" />
          <Entry text="Right"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <StringVectorProperty command="SetTitleFontFamily"
                            default_values="Arial"
                            name="ChartTitleFontFamily"
                            number_of_elements="1">
        <Documentation>Set the chart title font family.</Documentation>
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
      </StringVectorProperty>
      <IntVectorProperty command="SetTitleFontSize"
                            default_values="14"
                            name="ChartTitleFontSize"
                            number_of_elements="1">
        <Documentation>Set the chart title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTitleBold"
                            default_values="0"
                            name="ChartTitleBold"
                            number_of_elements="1">
        <Documentation>Set the chart title bold.</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetTitleItalic"
                            default_values="0"
                            name="ChartTitleItalic"
                            number_of_elements="1">
        <Documentation>Set the chart title bold.</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTitleColor"
                            default_values="0 0 0"
                            name="ChartTitleColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <PropertyGroup label="Title">
        <Property name="ChartTitle"/>
      </PropertyGroup>
      <PropertyGroup label="Chart Title Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="ChartTitleColor" function="Color"/>
        <Property name="ChartTitleFontFamily" function="Family"/>
        <Property name="ChartTitleBold" function="Bold" />
        <Property name="ChartTitleItalic" function="Italics"/>
        <Property name="ChartTitleFontSize" function="Size" />
        <Property name="ChartTitleAlignment" function="Justification" />
      </PropertyGroup>
    </Proxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewTitle"
                      class="vtkPVXYChartView"
                      name="XYChartViewBase"
                      processes="client|renderserver|dataserver">
      <Documentation>This is the base proxy for XY chart views.</Documentation>
      <IntVectorProperty command="SetLegendVisibility"
                         default_values="1"
                         name="ShowLegend"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLegendLocation"
                         default_values="1"
                         name="LegendLocation"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <EnumerationDomain name="enum">
          <Entry text="TopLeft"
                 value="0" />
          <Entry text="TopRight"
                 value="1" />
          <Entry text="BottomRight"
                 value="2" />
          <Entry text="BottomLeft"
                 value="3" />
          <Entry text="Left"
                 value="4" />
          <Entry text="Top"
                 value="5" />
          <Entry text="Right"
                 value="6" />
          <Entry text="Bottom"
                 value="7" />
         <Entry text="Custom"
                 value="8" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetLegendPosition"
                         default_values="0 0"
                         name="LegendPosition"
                         panel_visibility="default"
                         number_of_elements="2">
        <Documentation>Set the legend position in the view for
          custom location.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="GenericDecorator"
                                   mode="visibility"
                                   property="LegendLocation"
                                   value="8" />
          <!-- show this widget when LegendLocation==8 (ie.Custom) -->
        </Hints>
      </IntVectorProperty>
      <StringVectorProperty command="SetLegendFontFamily"
                            default_values="Arial"
                            name="LegendFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the legend font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetLegendFontSize"
                            default_values="12"
                            name="LegendFontSize"
                            number_of_elements="1">
        <Documentation>Set the legend font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLegendBold"
                            default_values="0"
                            name="LegendBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the legend font bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLegendItalic"
                            default_values="0"
                            name="LegendItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the legend font italic.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTooltipNotation"
                         default_values="0"
                         name="TooltipNotation"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetTooltipPrecision"
                         default_values="6"
                         name="TooltipPrecision"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRenderingForScreenshots"
                         default_values="0"
                         name="UseOffscreenRenderingForScreenshots"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set whether offscreen rendering should be used during
        CaptureWindow calls.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="UseOffscreenRenderingForScreenshots"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRendering"
                         default_values="0"
                         ignore_synchronization="1"
                         name="UseOffscreenRendering"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set whether to use offscreen rendering.</Documentation>
      </IntVectorProperty>

      <IntVectorProperty name="HideTimeMarker"
                         command="SetHideTimeMarker"
                         number_of_elements="1"
                         default_values="0"
                         panel_visibility="advanced">
        <Documentation>
          Hide the marker that is used to mark the current time, when one of the axes is
          plotting time.
        </Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>

      <PropertyGroup label="Legend Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="LegendFontFamily" function="Family"/>
        <Property name="LegendBold" function="Bold" />
        <Property name="LegendItalic" function="Italics"/>
        <Property name="LegendFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="LegendColor" function="Color"/> -->
        <!-- <Property name="LegendOpacity" function="Opacity"/> -->
        <!-- <Property name="LegendShadow" function="Shadow" /> -->
      </PropertyGroup>

      <PropertyGroup label="Annotation">
        <Property name="ShowLegend"/>
        <Property name="LegendLocation"/>
        <Property name="LegendPosition"/>
        <Property name="HideTimeMarker" />
      </PropertyGroup>
      <PropertyGroup label="Tooltip"
                     panel_visibility="advanced">
        <Property name="TooltipNotation"/>
        <Property name="TooltipPrecision"/>
      </PropertyGroup>


      <!-- left axis -->
      <!-- title -->
      <StringVectorProperty command="SetLeftAxisTitle"
                            name="LeftAxisTitle"
                            number_of_elements="1"
                            default_values=""/>
      <IntVectorProperty command="SetLeftGridVisibility"
                         default_values="1"
                         panel_visibility="advanced"
                         name="ShowLeftAxisGrid"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetLeftGridColor"
                            default_values="0.95 0.95 0.95"
                            name="LeftAxisGridColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisColor"
                            default_values="0 0 0"
                            name="LeftAxisColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <StringVectorProperty command="SetLeftAxisTitleFontFamily"
                            default_values="Arial"
                            name="LeftAxisTitleFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetLeftAxisTitleFontSize"
                            default_values="12"
                            name="LeftAxisTitleFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisTitleBold"
                            default_values="1"
                            name="LeftAxisTitleBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisTitleItalic"
                            default_values="0"
                            name="LeftAxisTitleItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisTitleColor"
                            default_values="0 0 0"
                            name="LeftAxisTitleColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <!-- range -->
      <IntVectorProperty command="SetLeftAxisLogScale"
                         default_values="0"
                         name="LeftAxisLogScale"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisUseCustomRange"
                         default_values="0"
                         name="LeftAxisUseCustomRange"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use the axis range specified or whether the view
          should compute the ranges automatically based on the data being shown.
          The ranges specified by ...AxisRange are only respected when the
          corresponding flag in this property is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisRangeMinimum"
                            default_values="0"
                            name="LeftAxisRangeMinimum"
                            number_of_elements="1">
        <Documentation>Set the axis range minimum for the Left axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="LeftAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisRangeMaximum"
                            default_values="1"
                            name="LeftAxisRangeMaximum"
                            number_of_elements="1">
        <Documentation>Set the axis range maximum for the Left axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="LeftAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>

      <!-- labels -->
      <IntVectorProperty command="SetLeftAxisLabelVisibility"
                         default_values="1"
                         name="ShowLeftAxisLabels"
                         panel_visibility="advanced"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="LeftAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="LeftAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisUseCustomLabels"
                            default_values="0"
                            panel_visibility="advanced"
                            name="LeftAxisUseCustomLabels"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use custom labels for each of the axis. Labels
          specified by ...AxisLabels etc. are used only when
          the corresponding AxisUseCustomLabels flag is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisLabels"
                            name="LeftAxisLabels"
                            panel_visibility="advanced"
                            animateable="1"
                            number_of_elements="0"
                            number_of_elements_per_command="1"
                            repeat_command="1"
                            use_index="1"
                            set_number_command="SetLeftAxisLabelsNumber">
        <!-- used to trigger the display pqScalarValueListPropertyWidget -->
        <ArrayRangeDomain name="scalar_range"/>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="LeftAxisUseCustomLabels"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetLeftAxisLabelFontFamily"
                            default_values="Arial"
                            name="LeftAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetLeftAxisLabelFontSize"
                            default_values="12"
                            name="LeftAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisLabelBold"
                            default_values="0"
                            name="LeftAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetLeftAxisLabelItalic"
                            default_values="0"
                            name="LeftAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetLeftAxisLabelColor"
                            default_values="0 0 0"
                            name="LeftAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="Left Axis">
        <Property name="LeftAxisTitle"/>
        <Property name="ShowLeftAxisGrid"/>
        <Property name="LeftAxisGridColor"/>
        <Property name="LeftAxisColor"/>
      </PropertyGroup>

      <PropertyGroup label="Left Axis Title Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="LeftAxisTitleColor" function="Color"/>
        <Property name="LeftAxisTitleFontFamily" function="Family"/>
        <Property name="LeftAxisTitleBold" function="Bold" />
        <Property name="LeftAxisTitleItalic" function="Italics"/>
        <Property name="LeftAxisTitleFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="LeftAxisTitleOpacity" function="Opacity"/> -->
        <!-- <Property name="LeftAxisTitleShadow" function="Shadow" /> -->
      </PropertyGroup>

     <PropertyGroup label="Left Axis Range">
       <Property name="LeftAxisLogScale"/>
       <Property name="LeftAxisUseCustomRange"/>
       <Property name="LeftAxisRangeMinimum"/>
       <Property name="LeftAxisRangeMaximum"/>
     </PropertyGroup>

      <PropertyGroup label="Left Axis Labels">
        <Property name="ShowLeftAxisLabels"/>
        <Property name="LeftAxisLabelNotation"/>
        <Property name="LeftAxisLabelPrecision"/>
        <Property name="LeftAxisUseCustomLabels"/>
        <Property name="LeftAxisLabels"/>
      </PropertyGroup>

      <PropertyGroup label="Left Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="LeftAxisLabelColor" function="Color"/>
        <Property name="LeftAxisLabelFontFamily" function="Family"/>
        <Property name="LeftAxisLabelBold" function="Bold" />
        <Property name="LeftAxisLabelItalic" function="Italics"/>
        <Property name="LeftAxisLabelFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="LeftAxisLabelOpacity" function="Opacity"/> -->
        <!-- <Property name="LeftAxisLabelShadow" function="Shadow" /> -->
      </PropertyGroup>
      <!-- end left axis -->

      <!-- bottom axis -->
      <!-- title -->
      <StringVectorProperty command="SetBottomAxisTitle"
                            name="BottomAxisTitle"
                            number_of_elements="1"
                            default_values=""/>
      <IntVectorProperty command="SetBottomGridVisibility"
                         default_values="1"
                         panel_visibility="advanced"
                         name="ShowBottomAxisGrid"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBottomGridColor"
                            default_values="0.95 0.95 0.95"
                            name="BottomAxisGridColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisColor"
                            default_values="0 0 0"
                            name="BottomAxisColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <StringVectorProperty command="SetBottomAxisTitleFontFamily"
                            default_values="Arial"
                            name="BottomAxisTitleFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetBottomAxisTitleFontSize"
                            default_values="12"
                            name="BottomAxisTitleFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisTitleBold"
                            default_values="1"
                            name="BottomAxisTitleBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisTitleItalic"
                            default_values="0"
                            name="BottomAxisTitleItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisTitleColor"
                            default_values="0 0 0"
                            name="BottomAxisTitleColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <!-- range -->
      <IntVectorProperty command="SetBottomAxisLogScale"
                         default_values="0"
                         name="BottomAxisLogScale"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisUseCustomRange"
                         default_values="0"
                         name="BottomAxisUseCustomRange"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use the axis range specified or whether the view
          should compute the ranges automatically based on the data being shown.
          The ranges specified by ...AxisRange are only respected when the
          corresponding flag in this property is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisRangeMinimum"
                            default_values="0"
                            name="BottomAxisRangeMinimum"
                            number_of_elements="1">
        <Documentation>Set the axis range minimum for the Bottom axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="BottomAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisRangeMaximum"
                            default_values="1"
                            name="BottomAxisRangeMaximum"
                            number_of_elements="1">
        <Documentation>Set the axis range maximum for the Bottom axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="BottomAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>

      <!-- labels -->
      <IntVectorProperty command="SetBottomAxisLabelVisibility"
                         default_values="1"
                         name="ShowBottomAxisLabels"
                         panel_visibility="advanced"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="BottomAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="BottomAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisUseCustomLabels"
                            default_values="0"
                            panel_visibility="advanced"
                            name="BottomAxisUseCustomLabels"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use custom labels for each of the axis. Labels
          specified by ...AxisLabels etc. are used only when
          the corresponding AxisUseCustomLabels flag is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisLabels"
                            name="BottomAxisLabels"
                            panel_visibility="advanced"
                            animateable="1"
                            number_of_elements="0"
                            number_of_elements_per_command="1"
                            repeat_command="1"
                            use_index="1"
                            set_number_command="SetBottomAxisLabelsNumber">
        <!-- used to trigger the display pqScalarValueListPropertyWidget -->
        <ArrayRangeDomain name="scalar_range"/>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="BottomAxisUseCustomLabels"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetBottomAxisLabelFontFamily"
                            default_values="Arial"
                            name="BottomAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetBottomAxisLabelFontSize"
                            default_values="12"
                            name="BottomAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisLabelBold"
                            default_values="0"
                            name="BottomAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetBottomAxisLabelItalic"
                            default_values="0"
                            name="BottomAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBottomAxisLabelColor"
                            default_values="0 0 0"
                            name="BottomAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="Bottom Axis">
        <Property name="BottomAxisTitle"/>
        <Property name="ShowBottomAxisGrid"/>
        <Property name="BottomAxisGridColor"/>
        <Property name="BottomAxisColor"/>
      </PropertyGroup>

      <PropertyGroup label="Bottom Axis Title Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="BottomAxisTitleColor" function="Color"/>
        <Property name="BottomAxisTitleFontFamily" function="Family"/>
        <Property name="BottomAxisTitleBold" function="Bold" />
        <Property name="BottomAxisTitleItalic" function="Italics"/>
        <Property name="BottomAxisTitleFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="BottomAxisTitleOpacity" function="Opacity"/> -->
        <!-- <Property name="BottomAxisTitleShadow" function="Shadow" /> -->
      </PropertyGroup>

     <PropertyGroup label="Bottom Axis Range">
       <Property name="BottomAxisLogScale"/>
       <Property name="BottomAxisUseCustomRange"/>
       <Property name="BottomAxisRangeMinimum"/>
       <Property name="BottomAxisRangeMaximum"/>
     </PropertyGroup>

      <PropertyGroup label="Bottom Axis Labels">
        <Property name="ShowBottomAxisLabels"/>
        <Property name="BottomAxisLabelNotation"/>
        <Property name="BottomAxisLabelPrecision"/>
        <Property name="BottomAxisUseCustomLabels"/>
        <Property name="BottomAxisLabels"/>
      </PropertyGroup>

      <PropertyGroup label="Bottom Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="BottomAxisLabelColor" function="Color"/>
        <Property name="BottomAxisLabelFontFamily" function="Family"/>
        <Property name="BottomAxisLabelBold" function="Bold" />
        <Property name="BottomAxisLabelItalic" function="Italics"/>
        <Property name="BottomAxisLabelFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="BottomAxisLabelOpacity" function="Opacity"/> -->
        <!-- <Property name="BottomAxisLabelShadow" function="Shadow" /> -->
      </PropertyGroup>
      <!-- end bottom axis -->
    </ContextViewProxy>

    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase"
                      class="vtkPVXYChartView"
                      name="XYChartViewBase4Axes"
                      processes="client|renderserver|dataserver">

      <Documentation>This is the base proxy for XY chart views with
      four axis: left, bottom, right and top</Documentation>


      <!-- right axis -->
      <!-- title -->
      <StringVectorProperty command="SetRightAxisTitle"
                            name="RightAxisTitle"
                            number_of_elements="1"
                            default_values=""
                            panel_visibility="advanced" />
      <IntVectorProperty command="SetRightGridVisibility"
                         default_values="1"
                         panel_visibility="advanced"
                         name="ShowRightAxisGrid"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRightGridColor"
                            default_values="0.95 0.95 0.95"
                            name="RightAxisGridColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetRightAxisColor"
                            default_values="0 0 0"
                            name="RightAxisColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <StringVectorProperty command="SetRightAxisTitleFontFamily"
                            default_values="Arial"
                            name="RightAxisTitleFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetRightAxisTitleFontSize"
                            default_values="12"
                            name="RightAxisTitleFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisTitleBold"
                            default_values="1"
                            name="RightAxisTitleBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisTitleItalic"
                            default_values="0"
                            name="RightAxisTitleItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRightAxisTitleColor"
                            default_values="0 0 0"
                            name="RightAxisTitleColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <!-- range -->
      <IntVectorProperty command="SetRightAxisLogScale"
                         default_values="0"
                         name="RightAxisLogScale"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisUseCustomRange"
                         default_values="0"
                         name="RightAxisUseCustomRange"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use the axis range specified or whether the view
          should compute the ranges automatically based on the data being shown.
          The ranges specified by ...AxisRange are only respected when the
          corresponding flag in this property is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRightAxisRangeMinimum"
                            default_values="0"
                            name="RightAxisRangeMinimum"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Set the axis range minimum for the Right axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="RightAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetRightAxisRangeMaximum"
                            default_values="1"
                            name="RightAxisRangeMaximum"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Set the axis range maximum for the Right axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="RightAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>

      <!-- labels -->
      <IntVectorProperty command="SetRightAxisLabelVisibility"
                         default_values="1"
                         name="ShowRightAxisLabels"
                         panel_visibility="advanced"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="RightAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="RightAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisUseCustomLabels"
                            default_values="0"
                            panel_visibility="advanced"
                            name="RightAxisUseCustomLabels"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use custom labels for each of the axis. Labels
          specified by ...AxisLabels etc. are used only when
          the corresponding AxisUseCustomLabels flag is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRightAxisLabels"
                            name="RightAxisLabels"
                            panel_visibility="advanced"
                            animateable="1"
                            number_of_elements="0"
                            number_of_elements_per_command="1"
                            repeat_command="1"
                            use_index="1"
                            set_number_command="SetRightAxisLabelsNumber">
        <!-- used to trigger the display pqScalarValueListPropertyWidget -->
        <ArrayRangeDomain name="scalar_range"/>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="RightAxisUseCustomLabels"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetRightAxisLabelFontFamily"
                            default_values="Arial"
                            name="RightAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetRightAxisLabelFontSize"
                            default_values="12"
                            name="RightAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisLabelBold"
                            default_values="0"
                            name="RightAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetRightAxisLabelItalic"
                            default_values="0"
                            name="RightAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRightAxisLabelColor"
                            default_values="0 0 0"
                            name="RightAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="Right Axis">
        <Property name="RightAxisTitle"/>
        <Property name="ShowRightAxisGrid"/>
        <Property name="RightAxisGridColor"/>
        <Property name="RightAxisColor"/>
      </PropertyGroup>

      <PropertyGroup label="Right Axis Title Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="RightAxisTitleColor" function="Color"/>
        <Property name="RightAxisTitleFontFamily" function="Family"/>
        <Property name="RightAxisTitleBold" function="Bold" />
        <Property name="RightAxisTitleItalic" function="Italics"/>
        <Property name="RightAxisTitleFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="RightAxisTitleOpacity" function="Opacity"/> -->
        <!-- <Property name="RightAxisTitleShadow" function="Shadow" /> -->
      </PropertyGroup>

     <PropertyGroup label="Right Axis Range">
       <Property name="RightAxisLogScale"/>
       <Property name="RightAxisUseCustomRange"/>
       <Property name="RightAxisRangeMinimum"/>
       <Property name="RightAxisRangeMaximum"/>
     </PropertyGroup>

      <PropertyGroup label="Right Axis Labels">
        <Property name="ShowRightAxisLabels"/>
        <Property name="RightAxisLabelNotation"/>
        <Property name="RightAxisLabelPrecision"/>
        <Property name="RightAxisUseCustomLabels"/>
        <Property name="RightAxisLabels"/>
      </PropertyGroup>

      <PropertyGroup label="Right Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="RightAxisLabelColor" function="Color"/>
        <Property name="RightAxisLabelFontFamily" function="Family"/>
        <Property name="RightAxisLabelBold" function="Bold" />
        <Property name="RightAxisLabelItalic" function="Italics"/>
        <Property name="RightAxisLabelFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="RightAxisLabelOpacity" function="Opacity"/> -->
        <!-- <Property name="RightAxisLabelShadow" function="Shadow" /> -->
      </PropertyGroup>
      <!-- end right axis -->

      <!-- top axis -->
      <!-- title -->
      <StringVectorProperty command="SetTopAxisTitle"
                            name="TopAxisTitle"
                            number_of_elements="1"
                            default_values=""
                            panel_visibility="advanced"/>
      <IntVectorProperty command="SetTopGridVisibility"
                         default_values="1"
                         panel_visibility="advanced"
                         name="ShowTopAxisGrid"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTopGridColor"
                            default_values="0.95 0.95 0.95"
                            name="TopAxisGridColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetTopAxisColor"
                            default_values="0 0 0"
                            name="TopAxisColor"
                            panel_visibility="advanced"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <StringVectorProperty command="SetTopAxisTitleFontFamily"
                            default_values="Arial"
                            name="TopAxisTitleFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetTopAxisTitleFontSize"
                            default_values="12"
                            name="TopAxisTitleFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisTitleBold"
                            default_values="1"
                            name="TopAxisTitleBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisTitleItalic"
                            default_values="0"
                            name="TopAxisTitleItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title font italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTopAxisTitleColor"
                            default_values="0 0 0"
                            name="TopAxisTitleColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <!-- range -->
      <IntVectorProperty command="SetTopAxisLogScale"
                         default_values="0"
                         name="TopAxisLogScale"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisUseCustomRange"
                         default_values="0"
                         name="TopAxisUseCustomRange"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use the axis range specified or whether the view
          should compute the ranges automatically based on the data being shown.
          The ranges specified by ...AxisRange, are only respected when the
          corresponding flag in this property is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTopAxisRangeMinimum"
                            default_values="0"
                            name="TopAxisRangeMinimum"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Set the axis range minimum for the Top axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="TopAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetTopAxisRangeMaximum"
                            default_values="1"
                            name="TopAxisRangeMaximum"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Set the axis range maximum for the Top axis.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="TopAxisUseCustomRange"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>

      <!-- labels -->
      <IntVectorProperty command="SetTopAxisLabelVisibility"
                         default_values="1"
                         name="ShowTopAxisLabels"
                         panel_visibility="advanced"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="TopAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="TopAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisUseCustomLabels"
                            default_values="0"
                            panel_visibility="advanced"
                            name="TopAxisUseCustomLabels"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Specify whether to use custom labels for each of the axis. Labels
          specified by ...AxisLabels are used only when
          the corresponding AxisUseCustomLabels flag is set to 1.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTopAxisLabels"
                            name="TopAxisLabels"
                            panel_visibility="advanced"
                            animateable="1"
                            number_of_elements="0"
                            number_of_elements_per_command="1"
                            repeat_command="1"
                            use_index="1"
                            set_number_command="SetTopAxisLabelsNumber">
        <!-- used to trigger the display pqScalarValueListPropertyWidget -->
        <ArrayRangeDomain name="scalar_range"/>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="TopAxisUseCustomLabels"
                      function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetTopAxisLabelFontFamily"
                            default_values="Arial"
                            name="TopAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the axis title font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetTopAxisLabelFontSize"
                            default_values="12"
                            name="TopAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisLabelBold"
                            default_values="0"
                            name="TopAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetTopAxisLabelItalic"
                            default_values="0"
                            name="TopAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetTopAxisLabelColor"
                            default_values="0 0 0"
                            name="TopAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="Top Axis">
        <Property name="TopAxisTitle"/>
        <Property name="ShowTopAxisGrid"/>
        <Property name="TopAxisGridColor"/>
        <Property name="TopAxisColor"/>
      </PropertyGroup>

      <PropertyGroup label="Top Axis Title Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="TopAxisTitleColor" function="Color"/>
        <Property name="TopAxisTitleFontFamily" function="Family"/>
        <Property name="TopAxisTitleBold" function="Bold" />
        <Property name="TopAxisTitleItalic" function="Italics"/>
        <Property name="TopAxisTitleFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="TopAxisTitleOpacity" function="Opacity"/> -->
        <!-- <Property name="TopAxisTitleShadow" function="Shadow" /> -->
      </PropertyGroup>

     <PropertyGroup label="Top Axis Range">
       <Property name="TopAxisLogScale"/>
       <Property name="TopAxisUseCustomRange"/>
       <Property name="TopAxisRangeMinimum"/>
       <Property name="TopAxisRangeMaximum"/>
     </PropertyGroup>

      <PropertyGroup label="Top Axis Labels">
        <Property name="ShowTopAxisLabels"/>
        <Property name="TopAxisLabelNotation"/>
        <Property name="TopAxisLabelPrecision"/>
        <Property name="TopAxisUseCustomLabels"/>
        <Property name="TopAxisLabels"/>
      </PropertyGroup>

      <PropertyGroup label="Top Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="TopAxisLabelColor" function="Color"/>
        <Property name="TopAxisLabelFontFamily" function="Family"/>
        <Property name="TopAxisLabelBold" function="Bold" />
        <Property name="TopAxisLabelItalic" function="Italics"/>
        <Property name="TopAxisLabelFontSize" function="Size" />
        <!-- next properties are not available -->
        <!-- <Property name="TopAxisLabelOpacity" function="Opacity"/> -->
        <!-- <Property name="TopAxisLabelShadow" function="Shadow" /> -->
      </PropertyGroup>
      <!-- end top axis -->
    </ContextViewProxy>

    <!-- ================================================================== -->
    <Proxy name="ComparativeViewBase">
      <DoubleVectorProperty command="SetViewTime"
                            default_values="none"
                            name="ViewTime"
                            number_of_elements="1"
                            panel_visibility="never"
                            state_ignored="1">
        <DoubleRangeDomain name="range" />
        <Documentation>The pipeline update time for this view. This gets passed
        to all representations added to this view.</Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty default_values="none"
                            name="CacheKey"
                            number_of_elements="1"
                            panel_visibility="never"
                            state_ignored="1"
                            is_internal="1">
        <DoubleRangeDomain name="range" />
        <Documentation>This is the cache key used to indentify which cache
        entry to use for rendering when caching is enabled.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty default_values="0"
                         name="UseCache"
                         number_of_elements="1"
                         panel_visibility="never"
                         state_ignored="1"
                         is_internal="1">
        <BooleanDomain name="bool" />
        <Documentation>Indicates whether to use cache for subsequent
        renderings.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetViewPosition"
                         default_values="0 0"
                         name="ViewPosition"
                         panel_visibility="never"
                         number_of_elements="2">
        <Hints>
          <NoDefault />
        </Hints>
        <Documentation>Set the position on this view in the multiview
        configuration.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetViewSize"
                         default_values="400 400"
                         ignore_synchronization="1"
                         name="ViewSize"
                         number_of_elements="2"
                         panel_visibility="never"
                         state_ignored="1">
        <Hints>
          <NoDefault />
        </Hints>
        <Documentation>Set the size of this view in the multiview
        configuration.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="Build"
                         default_values="2 2"
                         name="Dimensions"
                         panel_visibility="never"
                         number_of_elements="2">
        <IntRangeDomain max="10 10"
                        min="1 1"
                        name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetOverlayAllComparisons"
                         default_values="0"
                         name="OverlayAllComparisons"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetSpacing"
                         default_values="1 1"
                         name="Spacing"
                         panel_visibility="never"
                         number_of_elements="2">
        <IntRangeDomain max="10 10"
                        min="0 0"
                        name="range" />
      </IntVectorProperty>
      <ProxyProperty argument_type="SMProxy"
                     command="AddRepresentation"
                     name="Representations"
                     remove_command="RemoveRepresentation"
                     repeatable="1">
        <Documentation>Representations in this view.</Documentation>
      </ProxyProperty>
      <ProxyProperty argument_type="SMProxy"
                     command="AddCue"
                     name="Cues"
                     remove_command="RemoveCue">
        <Documentation>Animation cues for changing parameters.</Documentation>
      </ProxyProperty>
    </Proxy>
  </ProxyGroup>



  <!-- ******************************************************************** -->
  <ProxyGroup name="views">
    <!-- ================================================================== -->
    <RenderViewProxy base_proxygroup="internal_views"
                     base_proxyname="ViewBase"
                     class="vtkPVRenderView"
                     name="RenderView"
                     label="Render View"
                     processes="client|renderserver|dataserver">
      <Documentation>View proxy for a 3D interactive render
      view.</Documentation>
      <IntVectorProperty command="SetShowAnnotation"
                         default_values="0"
                         number_of_elements="1"
                         name="ShowAnnotation"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether to see annotation providing advanced debugging and performance
          information about each render.
        </Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="ShowAnnotation"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRendering"
                         default_values="0"
                         ignore_synchronization="1"
                         name="UseOffscreenRendering"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether to use offscreen rendering.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRenderingForScreenshots"
                         default_values="0"
                         name="UseOffscreenRenderingForScreenshots"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether offscreen rendering should be used during
        CaptureWindow calls.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="UseOffscreenRenderingForScreenshots"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseInteractiveRenderingForScreenshots"
                         default_values="0"
                         name="UseInteractiveRenderingForScreenshots"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether InteractiveRender() should be used during
        CaptureWindow calls. Default is to use StillRender().</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetInteractionMode"
                         default_values="0"
                         name="InteractionMode"
                         number_of_elements="1"
                         panel_visibility="never"
                         state_ignored="1">
        <EnumerationDomain name="enum">
          <Entry text="3D"
                 value="0" />
          <Entry text="2D"
                 value="1" />
          <Entry text="Selection"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetStillRenderImageReductionFactor"
                         default_values="1"
                         name="StillRenderImageReductionFactor"
                         panel_visibility="never"
                         number_of_elements="1">
        <IntRangeDomain max="20"
                        min="1"
                        name="range" />
        <Documentation>Get/Set the reduction-factor to use when for
        StillRender(). This is typically set to 1, but in some cases with
        terrible connectivity or really large displays, one may want to use a
        sub-sampled image even for StillRender(). This is set it number of
        pixels to be sub-sampled by. Note that image reduction factors have no
        effect when in built-in mode.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="StillRenderImageReductionFactor"/>
        </Hints>
      </IntVectorProperty>
      <DoubleVectorProperty default_values="100.0"
                            name="CollectGeometryThreshold"
                            panel_visibility="never"
                            number_of_elements="1">
        <Documentation>DEPRECATED: Simply set UseOutlineForLODRendering flag to
        true, and whenever LOD rendering is employed, we rendering outlines, is
        possible.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetInteractiveRenderImageReductionFactor"
                         default_values="2"
                         name="ImageReductionFactor"
                         panel_visibility="never"
                         number_of_elements="1">
        <IntRangeDomain max="20"
                        min="1"
                        name="range" />
        <Documentation>Get/Set the reduction-factor to use when for
        InteractiveRender(). This is set it number of pixels to be sub-sampled
        by. Note that image reduction factors have no effect when in built-in
        mode.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="ImageReductionFactor"/>
        </Hints>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetRemoteRenderingThreshold"
                            default_values="20.0"
                            ignore_synchronization="1"
                            name="RemoteRenderThreshold"
                            panel_visibility="never"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
        <Documentation>The threshold used to determine if the compositing
        should be used for rendering. The value is rendering-geometry size in
        MBs.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="RemoteRenderThreshold"/>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLODRenderingThreshold"
                            default_values="5"
                            name="LODThreshold"
                            panel_visibility="never"
                            number_of_elements="1">
        <Documentation>Set the memory size threshold above which LOD will be
        used while rendering interactively. The value is rendering-geometry
        size in MBs.</Documentation>
        <DoubleRangeDomain min="0"
                           name="range" />
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="LODThreshold"/>
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLODResolution"
                            default_values="0.5"
                            name="LODResolution"
                            panel_visibility="never"
                            number_of_elements="1">
        <DoubleRangeDomain max="1.0"
                           min="0"
                           name="range" />
        <Documentation>Set the LOD resolution. 0 implies lowest level or
        detail, while 1 implies maximum level of detail.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="LODResolution"/>
        </Hints>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetUseOutlineForLODRendering"
                         default_values="0"
                         name="UseOutlineForLODRendering"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>When set to true, this overrides the LODResolution. In
        that case, when using LOD for rendering, if possible, the data is
        rendered as outlines.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="UseOutlineForLODRendering"/>
        </Hints>
      </IntVectorProperty>
      <StringVectorProperty command="ConfigureCompressor"
                            default_values="vtkLZ4Compressor 0 3"
                            name="CompressorConfig"
                            panel_visibility="never"
                            number_of_elements="1">
        <Documentation>Used to configure the image compression used for
        client-server image transfer when doing interactive
        renders.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="CompressorConfig"/>
        </Hints>
      </StringVectorProperty>

      <ProxyProperty name="AxesGrid"
                     command="SetGridAxes3DActor"
                     panel_widget="proxy_editor"
                     skip_dependency="1">
        <!-- We mark skip_dependency=1 since we don't want the view to
             call Update() when the GridAxes3DActor changes. The GridAxes3DActor
             is indeed going to change when the view updates when Change-Of-Basis matrix
             is being used, for example. -->
        <ProxyListDomain name="proxy_list">
          <Proxy group="annotations" name="GridAxes3DActor" />
        </ProxyListDomain>
        <Hints>
          <ProxyEditorPropertyWidget property="Visibility">
            <!-- tell pqProxyEditorPropertyWidget that use the "Visibility"
                 property on the GridAxes3DActor proxy for a checkbox
                 on the UI -->
          </ProxyEditorPropertyWidget>
        </Hints>
      </ProxyProperty>

      <!-- Center and Orientation Axes -->
      <IntVectorProperty command="SetCenterAxesVisibility"
                         default_values="0"
                         name="CenterAxesVisibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Toggle the visibility of the axes showing the center of
        rotation in the scene.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetOrientationAxesVisibility"
                         default_values="1"
                         name="OrientationAxesVisibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Toggle the visibility of the axes showing the
        viewing direction.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetOrientationAxesInteractivity"
                         default_values="0"
                         panel_visibility="advanced"
                         name="OrientationAxesInteractivity"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Allows repositioning of the orientation
        axes.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetOrientationAxesLabelColor"
                            default_values="1 1 1"
                            name="OrientationAxesLabelColor"
                            panel_widget="color_selector_with_palette"
                            panel_visibility="advanced"
                            number_of_elements="3">
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="TextAnnotationColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientationAxesOutlineColor"
                            default_values="1 1 1"
                            name="OrientationAxesOutlineColor"
                            panel_widget="color_selector_with_palette"
                            panel_visibility="advanced"
                            number_of_elements="3">
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="ForegroundColor" />
        </Hints>
      </DoubleVectorProperty>

      <DoubleVectorProperty command="SetCenterOfRotation"
                            default_values="0 0 0"
                            name="CenterOfRotation"
                            panel_visibility="never"
                            number_of_elements="3">
        <Documentation>Center of rotation for the interactor.</Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetRotationFactor"
                            default_values="1"
                            name="RotationFactor"
                            panel_visibility="never"
                            number_of_elements="1">
        <Documentation>Rotation speed factor for the interactor. This default
          rotation speed is multipied by this factor. Default value is 1.
        </Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty default_values="0"
                         name="NonInteractiveRenderDelay"
                         panel_visibility="never"
                         number_of_elements="1">
        <Documentation>Set the delay (in seconds) after an interactive render
          before switching to a full-rese render.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="NonInteractiveRenderDelay"/>
        </Hints>
      </DoubleVectorProperty>
      <IntVectorProperty name="EnableRenderOnInteraction"
                         default_values="1"
                         panel_visibility="never"
                         number_of_elements="1">
                         <BooleanDomain name="bool" />
        <Documentation>
          Set whether the view must render automatically on interaction. If application
          wants to manage renders explicitly, set this to 0 (Off). 1 (On) by default.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty name="Camera3DManipulators"
        command="SetCamera3DManipulators"
        argument_is_array="1"
        number_of_elements="9"
        default_values="4 1 2 3 4 1 2 4 6"
        panel_visibility="never">
        <Documentation>
          Set the interactions mode for 3D interaction. The values are specified
          in order as (left button, middle button, right button), and repeated for
          shift key and control key modifiers.
        </Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewInteractionSettings"
                        property="Camera3DManipulators"/>
        </Hints>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Pan" value="1" />
          <Entry text="Zoom" value="2" />
          <Entry text="Roll" value="3" />
          <Entry text="Rotate" value="4" />
          <Entry text="Multi-Rotate" value="5" />
          <Entry text="ZoomToMouse" value="6" />
        </EnumerationDomain>
      </IntVectorProperty>

      <IntVectorProperty name="Camera2DManipulators"
        command="SetCamera2DManipulators"
        argument_is_array="1"
        number_of_elements="9"
        default_values="1 3 2 2 2 6 3 1 4"
        panel_visibility="never">
        <Documentation>
          Set the interactions mode for 2D interaction. The values are specified
          in order as (left button, middle button, right button), and repeated for
          shift key and control key modifiers.
        </Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewInteractionSettings"
                        property="Camera2DManipulators"/>
        </Hints>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Pan" value="1" />
          <Entry text="Zoom" value="2" />
          <Entry text="Roll" value="3" />
          <Entry text="Rotate" value="4" />
          <Entry text="ZoomToMouse" value="6" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseLightKit"
                         default_values="1"
                         name="UseLight"
                         number_of_elements="1">
        <Documentation>Enable/Disable the LightKit.</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <!-- Key Light -->
      <DoubleVectorProperty command="SetKeyLightWarmth"
                            default_values="0.60"
                            name="KeyLightWarmth"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range"
                           resolution="0.01" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyLightIntensity"
                            default_values="0.75"
                            name="KeyLightIntensity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range"
                           resolution="0.05" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyLightElevation"
                            default_values="50.0"
                            name="KeyLightElevation"
                            number_of_elements="1">
        <DoubleRangeDomain max="90"
                           min="0"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyLightAzimuth"
                            default_values="10.0"
                            name="KeyLightAzimuth"
                            number_of_elements="1">
        <DoubleRangeDomain max="90"
                           min="-90"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <!-- Fill Light -->
      <DoubleVectorProperty command="SetFillLightWarmth"
                            default_values="0.40"
                            name="FillLightWarmth"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range"
                           resolution="0.01" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyToFillRatio"
                            default_values="3.0"
                            name="FillLightK:F Ratio"
                            number_of_elements="1">
        <DoubleRangeDomain max="15"
                           min="1"
                           name="range"
                           resolution="0.1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetFillLightElevation"
                            default_values="-75.0"
                            name="FillLightElevation"
                            number_of_elements="1">
        <DoubleRangeDomain max="10"
                           min="-90"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetFillLightAzimuth"
                            default_values="-10.0"
                            name="FillLightAzimuth"
                            number_of_elements="1">
        <DoubleRangeDomain max="90"
                           min="-90"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <!-- Back Light -->
      <DoubleVectorProperty command="SetBackLightWarmth"
                            default_values="0.50"
                            name="BackLightWarmth"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range"
                           resolution="0.01" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyToBackRatio"
                            default_values="3.5"
                            name="BackLightK:B Ratio"
                            number_of_elements="1">
        <DoubleRangeDomain max="15"
                           min="1"
                           name="range"
                           resolution="0.1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBackLightElevation"
                            default_values="0.0"
                            name="BackLightElevation"
                            number_of_elements="1">
        <DoubleRangeDomain max="45"
                           min="-45"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBackLightAzimuth"
                            default_values="110.0"
                            name="BackLightAzimuth"
                            number_of_elements="1">
        <DoubleRangeDomain max="170"
                           min="60"
                           name="range"
                           resolution="1" />
      </DoubleVectorProperty>
      <!-- Head Light -->
      <DoubleVectorProperty command="SetHeadLightWarmth"
                            default_values="0.50"
                            name="HeadLightWarmth"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range"
                           resolution="0.01" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetKeyToHeadRatio"
                            default_values="3.0"
                            name="HeadLightK:H Ratio"
                            number_of_elements="1">
        <DoubleRangeDomain max="15"
                           min="1"
                           name="range"
                           resolution="0.1" />
      </DoubleVectorProperty>
      <!-- Maintain Luminance -->
      <IntVectorProperty command="SetMaintainLuminance"
                         default_values="0"
                         name="MaintainLuminance"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>

      <IntVectorProperty command="SetLightSwitch"
                         default_values="0"
                         name="LightSwitch"
                         number_of_elements="1">
        <Documentation>Turn on/off the default light in the 3D
        renderer.</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetAmbientColor"
                            default_values="1.0 1.0 1.0"
                            name="LightAmbientColor"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularColor"
                            default_values="1.0 1.0 1.0"
                            name="LightSpecularColor"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuseColor"
                            default_values="1.0 1.0 1.0"
                            name="LightDiffuseColor"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetIntensity"
                            default_values="1.0"
                            name="LightIntensity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetLightType"
                         default_values="1"
                         name="LightType"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="HeadLight"
                 value="1" />
          <Entry text="CameraLight"
                 value="2" />
          <Entry text="SceneLight"
                 value="3" />
        </EnumerationDomain>
      </IntVectorProperty>

      <IntVectorProperty command="SetUseDepthPeeling"
                         default_values="1"
                         name="DepthPeeling"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="DepthPeeling"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetMaximumNumberOfPeels"
                         default_values="4"
                         name="MaximumNumberOfPeels"
                         panel_visibility="never"
                         number_of_elements="1">
        <Documentation>In case of depth peeling, define the maximum number of
        peeling layers. Initial value is 4. A special value of 0 means no
        maximum limit. It has to be a positive value.</Documentation>
        <IntRangeDomain min="0"
                        name="range" />
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="MaximumNumberOfPeels"/>
        </Hints>
      </IntVectorProperty>

      <IntVectorProperty command="SetStereoCapableWindow"
                         default_values="none"
                         name="StereoCapableWindow"
                         number_of_elements="1"
                         is_internal="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetStereoRender"
                         default_values="0"
                         name="StereoRender"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetStereoType"
                         default_values="none"
                         name="StereoType"
                         number_of_elements="1">
        <Documentation>
          Set the stereo rendering mode to use. In client-server configurations,
          you may also want to set the ServerStereoType.
        </Documentation>
        <EnumerationDomain name="enum">
          <Entry text="Crystal Eyes"
                 value="1" />
          <Entry text="Red-Blue"
                 value="2" />
          <Entry text="Interlaced"
                 value="3" />
          <Entry text="Left"
                 value="4" />
          <Entry text="Right"
                 value="5" />
          <Entry text="Dresden"
                 value="6" />
          <Entry text="Anaglyph"
                 value="7" />
          <Entry text="Checkerboard"
                 value="8" />
          <Entry text="SplitViewportHorizontal"
                 value="9" />
          <Entry text="None"
                 value="10" />
        </EnumerationDomain>
        <Hints>
          <NoDefault />
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="StereoRender" />
          </PropertyWidgetDecorator>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetServerStereoType"
                         default_values="0"
                         name="ServerStereoType"
                         number_of_elements="1">
        <Documentation>
          This property allows you to set a different stereo mode for the server processes.
          Note that the stereo type selected on the client and server must be *compatible*, i.e.
          if the stereo type on the client side needs 2 renders each frame, the stereo type on the
          server must do exactly the same, otherwise deadlocks may ensue.
        </Documentation>
        <EnumerationDomain name="enum">
          <Entry text="Same As Client" value="0" />
          <Entry text="Crystal Eyes" value="1" />
          <Entry text="Red-Blue" value="2" />
          <Entry text="Interlaced" value="3" />
          <Entry text="Left" value="4" />
          <Entry text="Right" value="5" />
          <Entry text="Dresden" value="6" />
          <Entry text="Anaglyph" value="7" />
          <Entry text="Checkerboard" value="8" />
          <Entry text="SplitViewportHorizontal" value="9" />
          <Entry text="None" value="10" />
        </EnumerationDomain>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="StereoRender" />
          </PropertyWidgetDecorator>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetMultiSamples"
                         default_values="0"
                         name="MultiSamples"
                         panel_visibility="never"
                         number_of_elements="1">
      </IntVectorProperty>
      <IntVectorProperty command="SetAlphaBitPlanes"
                         default_values="1"
                         name="AlphaBitPlanes"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetStencilCapable"
                         default_values="1"
                         name="StencilCapable"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <ProxyProperty command="AddRepresentation"
                     is_internal="1"
                     name="HiddenRepresentations"
                     remove_command="RemoveRepresentation"
                     repeatable="1">
        <Documentation>This property is meant for adding/removing
        representation secretly. e.g. 3D widgets etc. This property is not
        saved in states nor it recorded by undo-redo.</Documentation>
      </ProxyProperty>
      <ProxyProperty command="AddPropToRenderer"
                     is_internal="1"
                     name="HiddenProps"
                     remove_command="RemovePropFromRenderer"
                     repeatable="1">
        <Documentation>This property is meant for adding/removing props
        secretly. e.g. 3D widgets etc. This property is not saved in states nor
        it recorded by undo-redo.</Documentation>
      </ProxyProperty>
      <SubProxy>
        <Proxy name="ActiveCamera"
               proxygroup="camera"
               proxyname="Camera"></Proxy>
        <ExposedProperties>
          <Property name="CameraPositionInfo" panel_visibility="never"/>
          <Property name="CameraPosition" panel_visibility="never"/>
          <Property name="CameraFocalPointInfo" panel_visibility="never"/>
          <Property name="CameraFocalPoint" panel_visibility="never"/>
          <Property name="CameraViewUpInfo" panel_visibility="never"/>
          <Property name="CameraViewUp" panel_visibility="never"/>
          <Property name="CameraViewAngle" panel_visibility="never"/>
          <Property name="CameraParallelScale" panel_visibility="never"/>
          <Property name="CameraParallelScaleInfo" panel_visibility="never"/>
          <Property name="EyeAngle" panel_visibility="never"/>
          <Property name="EyeTransformMatrix" />
          <Property name="ModelTransformMatrix" />
        </ExposedProperties>
      </SubProxy>
      <IntVectorProperty command="SetParallelProjection"
                         default_values="0"
                         ignore_synchronization="1"
                         name="CameraParallelProjection"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
        <Documentation>
          Enable/disable parallel projection mode.
        </Documentation>
      </IntVectorProperty>

      <DoubleVectorProperty command="SetBackground"
                            default_values="0.329 0.349 0.427"
                            name="Background"
                            panel_widget="color_selector_with_palette"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="BackgroundColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBackground2"
                            default_values="0 0 0.165"
                            name="Background2"
                            panel_widget="color_selector"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetGradientBackground"
                         default_values="0"
                         name="UseGradientBackground"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="UseGradientBackground" />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetTexturedBackground"
                         default_values="0"
                         name="UseTexturedBackground"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <ProxyProperty command="SetBackgroundTexture"
                     name="BackgroundTexture" panel_widget="texture_selector">
        <ProxyGroupDomain name="groups">
          <Group name="textures" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <Property
          name="CaptureZBuffer"
          command="CaptureZBuffer"
          >
        <Documentation>A helper function to get the Z buffer from
        a RenderView.</Documentation>
      </Property>
      <IntVectorProperty
          name="LockBounds"
          command="SetLockBounds"
          default_values="0"
          animateable="0"
          number_of_elements="1"
          >
        <BooleanDomain name="bool" />
        <Documentation>A helper function to force consistent Z buffer
        captures from a RenderView.</Documentation>
      </IntVectorProperty>
      <Property
          name="StartCaptureValues"
          command="StartCaptureValues"
          >
        <Documentation>Initiates a render state where RGB colors
        encode values from a particular array.</Documentation>
      </Property>
      <IntVectorProperty
          name="DrawCells"
          command="SetDrawCells"
          default_values="0"
          animateable="0"
          number_of_elements="1"
          >
        <BooleanDomain name="bool" />
        <Documentation>RGB colors will come directly from a cell (1)
        or point (0) aligned array.</Documentation>
      </IntVectorProperty>
      <StringVectorProperty
          name="ArrayNameToDraw"
          command="SetArrayNameToDraw"
          default_values=""
          animateable="0"
          number_of_elements="1"
          >
        <Documentation>RGB colors will come directly from a named
        array.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty
          name="ArrayNumberToDraw"
          command="SetArrayNumberToDraw"
          default_values="0"
          animateable="0"
          number_of_elements="1"
          >
        <IntRangeDomain name="range" />
        <Documentation>RGB colors will come directly from the numbered
        array.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty
          name="ArrayComponentToDraw"
          command="SetArrayComponentToDraw"
          default_values="0"
          animateable="0"
          number_of_elements="1"
          >
        <IntRangeDomain name="range" />
        <Documentation>RGB colors will come directly from the numbered
        component of the array.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty
          name="ScalarRange"
          argument_is_array="0"
          command="SetScalarRange"
          default_values="0.0 -1.0"
          animateable="0"
          number_of_elements="2"
          >
        <DoubleRangeDomain name="range" />
        <Documentation>Min and max values to map linearly between to
        produce RGB colors.</Documentation>
      </DoubleVectorProperty>
      <Property
          name="StopCaptureValues"
          command="StopCaptureValues"
          >
        <Documentation>Terminantes the render state where RGB colors
        encode values from a particular array and returns to normal
        behavior.</Documentation>
      </Property>
      <Property
          name="StartCaptureLuminance"
          command="StartCaptureLuminance"
          >
        <Documentation>Initiates a render state where lighting contributions are
        encoded into RGB.</Documentation>
      </Property>
      <Property
          name="StopCaptureLuminance"
          command="StopCaptureLuminance"
        >
        <Documentation>Terminantes the render state where lighting contributions
        are encoded into RGB.</Documentation>
      </Property>
      <IntVectorProperty name="EnableOSPRay"
          command="SetEnableOSPRay"
          default_values="0"
          animateable="0"
          number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Switches between rasterization and ray tracing.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty
          name="Shadows"
          command="SetShadows"
          default_values="0"
          animateable="0"
          number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Controls whether OSPRay casts shadow rays
        or not.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty
          name="AmbientSamples"
          command="SetAmbientOcclusionSamples"
          default_values="0"
          animateable="0"
          number_of_elements="1">
        <IntRangeDomain
            min="0"
            name="range"/>
        <Documentation>Sets the number of occlusion query rays that
        OSPRay sends at each intersection.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty
          name="SamplesPerPixel"
          command="SetSamplesPerPixel"
          default_values="1"
          animateable="0"
          number_of_elements="1">
        <IntRangeDomain
            min="1"
            name="range"/>
        <Documentation>Set the number of primary rays that OSPRay
        shoots per pixel.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty
          name="MaxFrames"
          command="SetMaxFrames"
          default_values="1"
          animateable="0"
          number_of_elements="1">
        <IntRangeDomain
            min="1"
            name="range"/>
        <Documentation>Set the number of render passes OSPRay takes to
        accumulate subsampled color results.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <DoubleVectorProperty
          name="LightScale"
          command="SetLightScale"
          default_values="1.0"
          animateable="0"
          number_of_elements="1">
        <DoubleRangeDomain
            min="0.0"
            name="range"/>
        <Documentation>Dimish or Amplify all lights in the scene.</Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </DoubleVectorProperty>

      <PropertyGroup label="Orientation Axes">
        <Property name="OrientationAxesVisibility"/>
        <Property name="OrientationAxesInteractivity"/>
        <Property name="OrientationAxesLabelColor"/>
        <Property name="OrientationAxesOutlineColor"/>
      </PropertyGroup>
      <PropertyGroup label="Lights" panel_widget="LightsEditor"
                     panel_visibility="advanced">
        <!-- Light Kit -->
        <Property name="UseLight"/>
        <!-- Key Light -->
        <Property name="KeyLightWarmth"/>
        <Property name="KeyLightIntensity"/>
        <Property name="KeyLightElevation"/>
        <Property name="KeyLightAzimuth"/>
        <!-- Fill Light -->
        <Property name="FillLightWarmth"/>
        <Property name="FillLightK:F Ratio"/>
        <Property name="FillLightElevation"/>
        <Property name="FillLightAzimuth"/>
        <!-- Back Light -->
        <Property name="BackLightWarmth"/>
        <Property name="BackLightK:B Ratio"/>
        <Property name="BackLightElevation"/>
        <Property name="BackLightAzimuth"/>
        <!-- Head Light -->
        <Property name="HeadLightWarmth"/>
        <Property name="HeadLightK:H Ratio"/>
        <Property name="MaintainLuminance"/>

        <!-- Light -->
        <Property name="LightSwitch"/>
        <Property name="LightAmbientColor"/>
        <Property name="LightSpecularColor"/>
        <Property name="LightDiffuseColor"/>
        <Property name="LightIntensity"/>
        <Property name="LightType"/>
      </PropertyGroup>
      <PropertyGroup label="Background" panel_widget="BackgroundEditor">
        <Property name="Background"/>
        <Property name="Background2"/>
        <Property name="UseGradientBackground"/>
        <Property name="UseTexturedBackground"/>
        <Property name="BackgroundTexture"/>
      </PropertyGroup>
      <PropertyGroup label="Stereo">
        <Property name="StereoCapableWindow" />
        <Property name="StereoRender" />
        <Property name="StereoType" />
        <Property name="ServerStereoType" />
      </PropertyGroup>
      <PropertyGroup label="Cinema Export"
                     panel_visibility="never">
        <Property name="CaptureZBuffer"/>
        <Property name="LockBounds"/>
        <Property name="StartCaptureValues" />
        <Property name="DrawCells"/>
        <Property name="ArrayNameToDraw"/>
        <Property name="ArrayNumberToDraw"/>
        <Property name="ArrayComponentToDraw"/>
        <Property name="ScalarRange"/>
        <Property name="StopCaptureValues" />
        <Property name="StartCaptureLuminance" />
        <Property name="StopCaptureLuminance" />
      </PropertyGroup>
      <PropertyGroup label="OSPRay Rendering"
                     panel_visibility="advanced">
        <Property name="EnableOSPRay"/>
        <Property name="Shadows"/>
        <Property name="AmbientSamples"/>
        <Property name="SamplesPerPixel"/>
        <Property name="MaxFrames"/>
        <Property name="LightScale"/>
      </PropertyGroup>
    </RenderViewProxy>

    <!-- ================================================================== -->
    <OrthographicSliceViewProxy base_proxygroup="views"
                     base_proxyname="RenderView"
                     class="vtkPVOrthographicSliceView"
                     processes="client|renderserver|dataserver"
                     label="Orthographic Slice View"
                     name="OrthographicSliceView">
      <DoubleVectorProperty name="SlicePosition"
                            command="SetSlicePosition"
                            number_of_elements="3"
                            default_values="0 0 0">
        <Documentation>
          Set the slice position.
        </Documentation>
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>

      <DoubleVectorProperty name="SliceIncrements"
        command="SetSliceIncrements"
        number_of_elements="3"
        default_values="1 1 1">
        <DoubleRangeDomain name="range" />
        <Documentation>
          When interacting using the thumb wheel, set the increments to use
          to change the slice position.
        </Documentation>
      </DoubleVectorProperty>

      <IntVectorProperty name="ShowSliceAnnotations"
        command="SetSliceAnnotationsVisibility"
        number_of_elements="1"
        default_values="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>

    </OrthographicSliceViewProxy>

    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase4Axes"
                      class="vtkPVXYChartView"
                      name="XYChartView"
                      label="Line Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="XYChartRepresentation"
                      post_creation="SetChartTypeToLine" >
      <Documentation>This is the proxy for the XY line chart
      view.</Documentation>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase4Axes"
                      class="vtkPVXYChartView"
                      name="QuartileChartView"
                      label="Quartile Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="QuartileChartRepresentation"
                      post_creation="SetChartTypeToArea" >
      <Documentation>This is the proxy for the Quartile chart view.</Documentation>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase"
                      class="vtkPVXYChartView"
                      name="XYBarChartView"
                      label="Bar Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="XYBarChartRepresentation"
                      post_creation="SetChartTypeToBar" >
      <Documentation>This is the proxy for bar chart view.</Documentation>
    </ContextViewProxy>
  <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase"
                      class="vtkPVXYChartView"
                      name="XYBagChartView"
                      label="Bag Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="XYBagChartRepresentation"
                      post_creation="SetChartTypeToBag" >
      <Documentation>This is the proxy for bag chart view.</Documentation>
    </ContextViewProxy>
  <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase"
                      class="vtkPVXYChartView"
                      name="XYFunctionalBagChartView"
                      label="FunctionalBag Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="XYFunctionalBagChartRepresentation"
                      post_creation="SetChartTypeToFunctionalBag" >
      <Documentation>This is the proxy for functional bag chart view.</Documentation>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewBase"
                      class="vtkPVXYChartView"
                      name="XYHistogramChartView"
                      label="Histogram View"
                      processes="client|renderserver|dataserver"
                      post_creation="SetChartTypeToBar"
                      representation_name="HistogramChartRepresentation"
                      skip_plotable_check="1">
      <Documentation>This is the proxy for the histogram chart view.</Documentation>
      <Hints>
        <ShowOneRepresentationAtATime />
        <!-- When present, vtkSMParaViewPipelineController::Show() will
             result in hiding other representations that are currently visible
             -->
      </Hints>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="XYChartViewTitle"
                      class="vtkPVXYChartView"
                      name="BoxChartView"
                      label="Box Chart View"
                      processes="client|renderserver|dataserver"
                      representation_name="BoxChartRepresentation"
                      post_creation="SetChartTypeToBox" >
      <Documentation>This is the proxy for box chart view.</Documentation>
      <IntVectorProperty command="SetLegendVisibility"
                         default_values="1"
                         panel_visibility="never"
                         name="ShowLegend"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRenderingForScreenshots"
                         default_values="0"
                         panel_visibility="never"
                         name="UseOffscreenRenderingForScreenshots"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether offscreen rendering should be used during
        CaptureWindow calls.</Documentation>
        <Hints>
          <PropertyLink group="settings"
                        proxy="RenderViewSettings"
                        property="UseOffscreenRenderingForScreenshots"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRendering"
                         default_values="0"
                         ignore_synchronization="1"
                         panel_visibility="never"
                         name="UseOffscreenRendering"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether to use offscreen rendering.</Documentation>
      </IntVectorProperty>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <ContextViewProxy base_proxygroup="internal_views"
                      base_proxyname="ViewBase"
                      class="vtkPVXYChartView"
                      name="ParallelCoordinatesChartView"
                      label="Parallel Coordinates View"
                      processes="client|renderserver|dataserver"
                      representation_name="ParallelCoordinatesRepresentation"
                      post_creation="SetChartTypeToParallelCoordinates"
                      skip_plotable_check="1">
      <Documentation>This is the proxy for parallel coordinates chart
      view.</Documentation>
      <IntVectorProperty command="SetUseOffscreenRenderingForScreenshots"
                         default_values="0"
                         name="UseOffscreenRenderingForScreenshots"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set whether offscreen rendering should be used during
        CaptureWindow calls.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRendering"
                         default_values="0"
                         ignore_synchronization="1"
                         name="UseOffscreenRendering"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set whether to use offscreen rendering.</Documentation>
      </IntVectorProperty>
      <Hints>
        <ShowOneRepresentationAtATime />
        <!-- When present, vtkSMParaViewPipelineController::Show() will
             result in hiding other representations that are currently visible
             -->
      </Hints>
    </ContextViewProxy>
    <!-- ================================================================== -->
    <PlotMatrixViewProxy base_proxygroup="internal_views"
                         base_proxyname="XYChartViewTitle"
                         class="vtkPVPlotMatrixView"
                         name="PlotMatrixView"
                         label="Plot Matrix View"
                         processes="client|renderserver|dataserver"
                         representation_name="PlotMatrixRepresentation"
                         skip_plotable_check="1">
      <Documentation>This is the proxy for the plot matrix
      view.</Documentation>
      <IntVectorProperty command="SetBorderLeft"
                         default_values="50"
                         name="BorderLeft"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetBorderBottom"
                         default_values="40"
                         name="BorderBottom"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetBorderRight"
                         default_values="50"
                         name="BorderRight"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetBorderTop"
                         default_values="40"
                         name="BorderTop"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetGutterX"
                         default_values="15"
                         name="GutterX"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetGutterY"
                         default_values="15"
                         name="GutterY"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetNumberOfAnimationFrames"
                         default_values="25"
                         name="NumberOfAnimationFrames"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain min="0" name="range" />
      </IntVectorProperty>

      <PropertyGroup label="Border">
        <Property name="BorderLeft"/>
        <Property name="BorderBottom"/>
        <Property name="BorderRight"/>
        <Property name="BorderTop"/>
      </PropertyGroup>

      <PropertyGroup label="Spacing (Gutter)">
        <Property name="GutterX"/>
        <Property name="GutterY"/>
      </PropertyGroup>

      <DoubleVectorProperty command="SetScatterPlotSelectedRowColumnColor"
                            default_values="0.8 0 0 0.4"
                            name="ScatterPlotSelectedRowColumnColor"
                            number_of_elements="4"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1 1"
                           min="0 0 0 0"
                           name="range" />
      </DoubleVectorProperty>

      <DoubleVectorProperty command="SetScatterPlotSelectedActiveColor"
                            default_values="0 0.8 0 0.4"
                            name="ScatterPlotSelectedActiveColor"
                            number_of_elements="4"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1 1"
                           min="0 0 0 0"
                           name="range" />
      </DoubleVectorProperty>



      <!-- activeplot -->
      <DoubleVectorProperty command="SetActivePlotBackgroundColor"
                            default_values="1 1 1 0"
                            name="ActivePlotBackgroundColor"
                            number_of_elements="4"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1 1"
                           min="0 0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetActivePlotAxisColor"
                            default_values="0 0 0"
                            name="ActivePlotAxisColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetActivePlotGridColor"
                            default_values="0.95 0.95 0.95"
                            name="ActivePlotGridColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetActivePlotGridVisibility"
                         default_values="1"
                         name="ActivePlotGridVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelVisibility"
                         default_values="1"
                         name="ActivePlotAxisLabelVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="ActivePlotAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="ActivePlotAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <StringVectorProperty command="SetActivePlotAxisLabelFontFamily"
                            default_values="Arial"
                            name="ActivePlotAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelFontSize"
                            default_values="12"
                            name="ActivePlotAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelBold"
                            default_values="0"
                            name="ActivePlotAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetActivePlotAxisLabelItalic"
                            default_values="0"
                            name="ActivePlotAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetActivePlotAxisLabelColor"
                            default_values="0 0 0"
                            name="ActivePlotAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="ActivePlot"
                     panel_visibility="advanced">
        <Property name="ActivePlotBackgroundColor"/>
        <Property name="ActivePlotAxisColor"/>
        <Property name="ActivePlotGridColor"/>
        <Property name="ActivePlotGridVisibility"/>
        <Property name="ActivePlotAxisLabelVisibility"/>
        <Property name="ActivePlotAxisLabelNotation"/>
        <Property name="ActivePlotAxisLabelPrecision"/>
      </PropertyGroup>
      <PropertyGroup label="ActivePlot Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="ActivePlotAxisLabelColor" function="Color"/>
        <Property name="ActivePlotAxisLabelFontFamily" function="Family"/>
        <Property name="ActivePlotAxisLabelBold" function="Bold" />
        <Property name="ActivePlotAxisLabelItalic" function="Italics"/>
        <Property name="ActivePlotAxisLabelFontSize" function="Size" />
      </PropertyGroup>

      <!-- scatterplot -->
      <DoubleVectorProperty command="SetScatterPlotBackgroundColor"
                            default_values="1 1 1 0"
                            name="ScatterPlotBackgroundColor"
                            number_of_elements="4"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1 1"
                           min="0 0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScatterPlotAxisColor"
                            default_values="0 0 0"
                            name="ScatterPlotAxisColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScatterPlotGridColor"
                            default_values="0.95 0.95 0.95"
                            name="ScatterPlotGridColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetScatterPlotGridVisibility"
                         default_values="1"
                         name="ScatterPlotGridVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelVisibility"
                         default_values="1"
                         name="ScatterPlotAxisLabelVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="ScatterPlotAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="ScatterPlotAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <StringVectorProperty command="SetScatterPlotAxisLabelFontFamily"
                            default_values="Arial"
                            name="ScatterPlotAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelFontSize"
                            default_values="12"
                            name="ScatterPlotAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelBold"
                            default_values="0"
                            name="ScatterPlotAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetScatterPlotAxisLabelItalic"
                            default_values="0"
                            name="ScatterPlotAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetScatterPlotAxisLabelColor"
                            default_values="0 0 0"
                            name="ScatterPlotAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="ScatterPlot"
                     panel_visibility="advanced">
        <Property name="ScatterPlotBackgroundColor"/>
        <Property name="ScatterPlotAxisColor"/>
        <Property name="ScatterPlotGridColor"/>
        <Property name="ScatterPlotGridVisibility"/>
        <Property name="ScatterPlotAxisLabelVisibility"/>
        <Property name="ScatterPlotAxisLabelNotation"/>
        <Property name="ScatterPlotAxisLabelPrecision"/>
      </PropertyGroup>
      <PropertyGroup label="ScatterPlot Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="ScatterPlotAxisLabelColor" function="Color"/>
        <Property name="ScatterPlotAxisLabelFontFamily" function="Family"/>
        <Property name="ScatterPlotAxisLabelBold" function="Bold" />
        <Property name="ScatterPlotAxisLabelItalic" function="Italics"/>
        <Property name="ScatterPlotAxisLabelFontSize" function="Size" />
      </PropertyGroup>




      <!-- histogram -->
      <DoubleVectorProperty command="SetHistogramBackgroundColor"
                            default_values="0.5 0.5 0.5 0.4"
                            name="HistogramBackgroundColor"
                            number_of_elements="4"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1 1"
                           min="0 0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetHistogramAxisColor"
                            default_values="0 0 0"
                            name="HistogramAxisColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetHistogramGridColor"
                            default_values="0.95 0.95 0.95"
                            name="HistogramGridColor"
                            panel_widget="color_selector"
                            number_of_elements="3"
                            panel_visibility="advanced">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetHistogramGridVisibility"
                         default_values="1"
                         name="HistogramGridVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelVisibility"
                         default_values="1"
                         name="HistogramAxisLabelVisibility"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelNotation"
                         default_values="0"
                         panel_visibility="advanced"
                         name="HistogramAxisLabelNotation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Mixed"
                 value="0" />
          <Entry text="Scientific"
                 value="1" />
          <Entry text="Fixed"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelPrecision"
                         default_values="2"
                         panel_visibility="advanced"
                         name="HistogramAxisLabelPrecision"
                         number_of_elements="1">
        <IntRangeDomain name="range" min="0"/>
      </IntVectorProperty>
      <StringVectorProperty command="SetHistogramAxisLabelFontFamily"
                            default_values="Arial"
                            name="HistogramAxisLabelFontFamily"
                            number_of_elements="1">
        <StringListDomain name="list">
          <String value="Arial" />
          <String value="Courier" />
          <String value="Times" />
        </StringListDomain>
        <Documentation>Set the font familyname.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelFontSize"
                            default_values="12"
                            name="HistogramAxisLabelFontSize"
                            number_of_elements="1">
        <Documentation>Set the axis title font size.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelBold"
                            default_values="0"
                            name="HistogramAxisLabelBold"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title bold.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetHistogramAxisLabelItalic"
                            default_values="0"
                            name="HistogramAxisLabelItalic"
                            number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the axis title italic.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetHistogramAxisLabelColor"
                            default_values="0 0 0"
                            name="HistogramAxisLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>

      <PropertyGroup label="Histogram"
                     panel_visibility="advanced">
        <Property name="HistogramBackgroundColor"/>
        <Property name="HistogramAxisColor"/>
        <Property name="HistogramGridColor"/>
        <Property name="HistogramGridVisibility"/>
        <Property name="HistogramAxisLabelVisibility"/>
        <Property name="HistogramAxisLabelNotation"/>
        <Property name="HistogramAxisLabelPrecision"/>
      </PropertyGroup>
      <PropertyGroup label="Histogram Axis Label Properties"
                     panel_widget="FontEditor"
                     panel_visibility="advanced">
        <Property name="HistogramAxisLabelColor" function="Color"/>
        <Property name="HistogramAxisLabelFontFamily" function="Family"/>
        <Property name="HistogramAxisLabelBold" function="Bold" />
        <Property name="HistogramAxisLabelItalic" function="Italics"/>
        <Property name="HistogramAxisLabelFontSize" function="Size" />
      </PropertyGroup>

      <IntVectorProperty command="SetUseOffscreenRenderingForScreenshots"
                         default_values="0"
                         name="UseOffscreenRenderingForScreenshots"
                         panel_visibility="never"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether offscreen rendering should be used during
        CaptureWindow calls.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOffscreenRendering"
                         default_values="0"
                         ignore_synchronization="1"
                         panel_visibility="never"
                         name="UseOffscreenRendering"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set whether to use offscreen rendering.</Documentation>
      </IntVectorProperty>

      <Hints>
        <ShowOneRepresentationAtATime />
        <!-- When present, vtkSMParaViewPipelineController::Show() will
             result in hiding other representations that are currently visible
             -->
      </Hints>

      <!-- end of PlotMatrixViewProxy -->
    </PlotMatrixViewProxy>
    <!-- ================================================================== -->
    <ViewProxy base_proxygroup="internal_views"
               base_proxyname="ViewBase"
               class="vtkSpreadSheetView"
               name="SpreadSheetView"
               label="SpreadSheet View"
               processes="client|dataserver|renderserver"
               representation_name="SpreadSheetRepresentation">
      <IntVectorProperty name="CellFontSize"
                         default_values="9"
                         number_of_elements="1">
        <IntRangeDomain min="1" max="48" name="range" />
        <Documentation>Sets the font size for cells in the
        spreadsheet.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty name="HeaderFontSize"
                         default_values="9"
                         number_of_elements="1">
        <IntRangeDomain min="1" max="48" name="range" />
        <Documentation>Sets the font size for row and column headers
        in the spreadsheet.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetShowExtractedSelection"
                         default_values="0"
                         name="SelectionOnly"
                         number_of_elements="1">
        <Documentation>When set to 1, this representations shows only the
        selected cells (or points). The change will effect only after calling
        Update(). Note that changing this will clean all cache.</Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <StringVectorProperty command="SetColumnNameToSort"
                            name="ColumnToSort"
                            number_of_elements="1"
                            panel_visibility="never">
      </StringVectorProperty>
      <IntVectorProperty command="SetComponentToSort"
                         default_values="-1"
                         name="SelectedComponent"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <IntRangeDomain name="range" />
      </IntVectorProperty>
      <IntVectorProperty command="SetInvertSortOrder"
                         default_values="0"
                         name="InvertOrder"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IdTypeVectorProperty command="SetBlockSize"
                            default_values="1024"
                            name="BlockSize"
                            number_of_elements="1"
                            panel_visibility="never">
        <Documentation>Get/Set the number of rows that fit within one block.
        The output of this filter will have at most BlockSize
        rows.</Documentation>
      </IdTypeVectorProperty>
      <StringVectorProperty command="SetColumnVisibility"
                            clean_command="ClearColumnVisibilities"
                            element_types="0 2 0"
                            name="ColumnVisibility"
                            number_of_elements_per_command="3"
                            panel_visibility="never"
                            repeat_command="1"/>
        <Documentation>Set the current column visibility in the spreadsheet view
        to be used for export.</Documentation>
      <Hints>
        <ShowOneRepresentationAtATime />
        <!-- When present, vtkSMParaViewPipelineController::Show() will
             result in hiding other representations that are currently visible
             -->
      </Hints>

      <!-- End of SpreadSheetView -->
    </ViewProxy>
  </ProxyGroup>

  <!-- ==================================================================== -->
  <ProxyGroup name="internal_representations">
    <PVRepresentationProxy class="vtkPVCompositeRepresentation"
                           name="PVRepresentationBase"
                           processes="client|renderserver|dataserver">
      <Documentation>ParaView's default representation for showing any type of
      dataset in the render view.</Documentation>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for this
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetSelectionVisibility"
                         default_values="1"
                         name="SelectionVisibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for the selection, if
        any.</Documentation>
      </IntVectorProperty>
      <RepresentationType subproxy="OutlineRepresentation"
                          text="Outline" />
      <RepresentationType subproxy="SurfaceRepresentation"
                          subtype="Points"
                          text="Points" />
      <RepresentationType subproxy="SurfaceRepresentation"
                          subtype="Wireframe"
                          text="Wireframe" />
      <RepresentationType subproxy="SurfaceRepresentation"
                          subtype="Surface"
                          text="Surface" />
      <RepresentationType subproxy="SurfaceRepresentation"
                          subtype="Surface With Edges"
                          text="Surface With Edges" />
      <RepresentationType subproxy="Glyph3DRepresentation"
                          subtype="Surface"
                          text="3D Glyphs" />
      <StringVectorProperty command="GetRepresentationTypes"
                            information_only="1"
                            name="RepresentationTypesInfo"
                            si_class="vtkSIDataArrayProperty">
        <Documentation>Property that lists the available representation types.
        This is used by the domain for "Representation" to setup the list of
        types available correctly.</Documentation>
      </StringVectorProperty>
      <StringVectorProperty command="SetActiveRepresentation"
                            default_values="Surface"
                            name="Representation"
                            number_of_elements="1"
                            panel_visibility="default"
                            panel_widget="display_representation_selector" >
        <Documentation>Choose the type for the representation.</Documentation>
        <RepresentationTypeDomain name="list">
          <RequiredProperties>
            <Property function="StringList"
                      name="RepresentationTypesInfo" />
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </RepresentationTypeDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetCellFieldDataArrayName"
                            default_values="vtkOriginalCellIds"
                            name="SelectionCellFieldDataArrayName"
                            number_of_elements="1"
                            panel_visibility="never">
        <ArrayListDomain input_domain_name="input_array_cell"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetPointFieldDataArrayName"
                            default_values="vtkOriginalPointIds"
                            name="SelectionPointFieldDataArrayName"
                            number_of_elements="1"
                            panel_visibility="never">
        <ArrayListDomain input_domain_name="input_array_point"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <SubProxy>
        <Proxy name="SurfaceRepresentation"
               proxygroup="representations"
               proxyname="SurfaceRepresentation"></Proxy>
        <ExposedProperties>
          <PropertyGroup panel_visibility="default"
                         panel_widget="ColorEditor"
                         label="Coloring" >
            <Property name="AmbientColor" />
            <Property name="ColorArrayName" />
            <Property name="DiffuseColor" />
            <Property name="LookupTable" />
          </PropertyGroup>

          <PropertyGroup label="Scalar Coloring">
            <Property name="MapScalars"
                      panel_visibility="advanced" />
            <Property name="InterpolateScalarsBeforeMapping"
                      panel_visibility="advanced" />
          </PropertyGroup>

          <PropertyGroup label="Styling">
            <Property name="Opacity"
                      panel_visibility="default" />
            <Property name="PointSize"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="points" />
            <Property name="LineWidth"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="wireframe" />
          </PropertyGroup>

          <PropertyGroup label="Lighting">
            <Property name="Interpolation"
                      panel_visibility="advanced" />
            <Property name="Specular"
                      panel_visibility="default" />
            <Property name="SpecularColor"
                      panel_widget="color_selector"
                      panel_visibility="advanced" />
            <Property name="SpecularPower"
                      panel_visibility="advanced" />
            <Property name="Ambient" panel_visibility="advanced"/>
            <Property name="Diffuse" panel_visibility="advanced"/>
          </PropertyGroup>

          <PropertyGroup label="Edge Styling">
            <Property name="EdgeColor"
                      panel_widget="color_selector_with_palette"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="Surface With Edges" />
          </PropertyGroup>

          <PropertyGroup label="Backface Styling">
            <Property name="BackfaceRepresentation"
                      panel_visibility="advanced" />
            <Property name="BackfaceAmbientColor"
                      panel_widget="color_selector"
                      panel_visibility="advanced" />
            <Property name="BackfaceDiffuseColor"
                      panel_widget="color_selector"
                      panel_visibility="advanced" />
            <Property name="BackfaceOpacity"
                      panel_visibility="advanced" />
          </PropertyGroup>

          <PropertyGroup label="Transforming">
            <Property name="Position"
                      panel_visibility="advanced" />
            <Property name="Scale"
                      panel_visibility="advanced" />
            <Property name="Orientation"
                      panel_visibility="advanced" />
            <Property name="Origin"
                      panel_visibility="advanced" />
          </PropertyGroup>

          <PropertyGroup label="Miscellaneous">
            <Property name="Pickable"
                      panel_visibility="advanced" />
            <Property name="StaticMode"
                      panel_visibility="never" />
            <Property name="SuppressLOD"
                      panel_visibility="never" />
            <Property name="Texture"
                      panel_visibility="advanced" />
            <Property name="UserTransform"
                      panel_visibility="never" />
            <Property name="Triangulate"
                      panel_visibility="advanced" />
            <Property name="NonlinearSubdivisionLevel"
                      panel_visibility="advanced" />
            <Property name="BlockVisibility"
                      panel_visibility="never" />
            <Property name="BlockColor"
                      panel_visibility="never" />
            <Property name="BlockOpacity"
                      panel_visibility="never" />
            <Property name="BlockColorsDistinctValues"
                      panel_visibility="advanced" />
          </PropertyGroup>

          <PropertyGroup panel_visibility="advanced"
                         label="OSPRay" >
            <Property name="OSPRayUseScaleArray" />
            <Property name="OSPRayScaleArray" />
            <Property name="OSPRayScaleFunction" />
          </PropertyGroup>

        </ExposedProperties>
      </SubProxy>
      <SubProxy>
        <Proxy name="OutlineRepresentation"
               proxygroup="representations"
               proxyname="OutlineRepresentation"></Proxy>
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
      </SubProxy>
      <SubProxy>
        <Proxy name="Glyph3DRepresentation"
               proxygroup="representations"
               proxyname="Glyph3DRepresentation"></Proxy>
        <ExposedProperties>
          <PropertyGroup label="Glyph Parameters"
                         panel_visibility="advanced">
            <Property name="Masking"
                      panel_visibility="never" />
            <Property name="MeshVisibility"
                      panel_visibility="never" />
            <Property name="Orient"
                      panel_visibility="advanced" />
            <Property name="OrientationMode"
                      panel_visibility="advanced" />
            <Property name="SelectOrientationVectors"
                      panel_visibility="advanced" />
            <Property name="Scaling"
                      panel_visibility="advanced" />
            <Property name="ScaleMode"
                      panel_visibility="advanced" />
            <Property name="ScaleFactor"
                      panel_visibility="advanced" />
            <Property name="SelectMaskArray"
                      panel_visibility="never" />
            <Property name="SelectScaleArray"
                      panel_visibility="advanced" />
            <Property name="GlyphType"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="3d glyphs"/>
          </PropertyGroup>
        </ExposedProperties>
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
      </SubProxy>
      <SubProxy>
        <Proxy name="SelectionRepresentation"
               proxygroup="representations"
               proxyname="SelectionRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
          <Exception name="Representation" />
          <Exception name="Color" />
          <Exception name="LineWidth" />
          <Exception name="Opacity" />
          <Exception name="PointSize" />
        </ShareProperties>
        <ExposedProperties>
          <Property exposed_name="SelectionColor" name="Color" panel_visibility="never" />
          <Property exposed_name="SelectionOpacity" name="Opacity" panel_visibility="never" />
          <Property exposed_name="SelectionUseOutline" name="UseOutline" panel_visibility="never" />
          <Property exposed_name="SelectionRepresentation" name="Representation" panel_visibility="never" />
          <Property exposed_name="SelectionPointSize" name="PointSize" panel_visibility="never" />
          <Property exposed_name="SelectionLineWidth" name="LineWidth" panel_visibility="never" />
          <Property exposed_name="SelectionCellLabelVisibility" name="CellLabelVisibility" panel_visibility="never"/>
          <PropertyGroup label="Cell Label Font" panel_visibility="never" panel_widget="FontEditor">
            <Property exposed_name="SelectionCellLabelBold" name="CellLabelBold" function="Bold"/>
            <Property exposed_name="SelectionCellLabelColor" name="CellLabelColor" function="Color"/>
            <Property exposed_name="SelectionCellLabelFontFamily" name="CellLabelFontFamily" function="Family"/>
            <Property exposed_name="SelectionCellLabelFontSize" name="CellLabelFontSize" function="Size"/>
            <Property exposed_name="SelectionCellLabelItalic" name="CellLabelItalic" function="Italics"/>
            <Property exposed_name="SelectionCellLabelJustification" name="CellLabelJustification" function="Justification"/>
            <Property exposed_name="SelectionCellLabelOpacity" name="CellLabelOpacity" function="Opacity"/>
            <Property exposed_name="SelectionCellLabelShadow" name="CellLabelShadow" function="Shadow"/>
          </PropertyGroup>
          <Property exposed_name="SelectionCellLabelFormat" name="CellLabelFormat" panel_visibility="never"/>
          <Property exposed_name="SelectionPointLabelVisibility" name="PointLabelVisibility" panel_visibility="never"/>
          <PropertyGroup label="Point Label Font" panel_visibility="never" panel_widget="FontEditor">
            <Property exposed_name="SelectionPointLabelBold" name="PointLabelBold" function="Bold"/>
            <Property exposed_name="SelectionPointLabelColor" name="PointLabelColor" function="Color"/>
            <Property exposed_name="SelectionPointLabelFontFamily" name="PointLabelFontFamily" function="Family"/>
            <Property exposed_name="SelectionPointLabelFontSize" name="PointLabelFontSize" function="Size"/>
            <Property exposed_name="SelectionPointLabelItalic" name="PointLabelItalic" function="Italics"/>
            <Property exposed_name="SelectionPointLabelJustification" name="PointLabelJustification" function="Justification"/>
            <Property exposed_name="SelectionPointLabelOpacity" name="PointLabelOpacity" function="Opacity"/>
            <Property exposed_name="SelectionPointLabelShadow" name="PointLabelShadow" function="Shadow"/>
          </PropertyGroup>
          <Property exposed_name="SelectionPointLabelFormat" name="PointLabelFormat" panel_visibility="never"/>
        </ExposedProperties>
      </SubProxy>
    </PVRepresentationProxy>
  </ProxyGroup>

  <!-- ==================================================================== -->
  <ProxyGroup name="representations">
    <!-- ================================================================== -->
    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="GeometryRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>ParaView's default representation for showing any type of
      dataset in the render view.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkDataSet" />
          <DataType value="vtkGenericDataSet" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="cell"
                          name="input_array_cell"
                          optional="1"></InputArrayDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <!-- End of GeometryRepresentation -->
    </PVRepresentationProxy>
    <!-- ================================================================== -->
    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="UnstructuredGridBaseRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>This representation is used to show unstructured grid as
      Surface/Outline/Points/Wireframe/Volume</Documentation>
      <!-- this adds to what is already defined in PVRepresentationBase -->
      <RepresentationType subproxy="VolumeRepresentation"
                          text="Volume" />
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkUnstructuredGridBase" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="cell"
                          name="input_array_cell"
                          optional="1"></InputArrayDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <SubProxy>
        <Proxy name="VolumeRepresentation"
               proxygroup="representations"
               proxyname="UnstructuredGridVolumeRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
        <ExposedProperties>
          <Property name="ScalarOpacityFunction"
                    panel_visibility="never" />
          <Property name="ScalarOpacityUnitDistance"
                    panel_visibility="advanced" />
          <Property name="ExtractedBlockIndex"
                    panel_visibility="never" />
          <Property name="SelectMapper"
                    panel_visibility="advanced"
                    panel_visibility_default_for_representation="volume" />
        </ExposedProperties>
      </SubProxy>

      <Hints>
        <!-- pqDisplayRepresentationWidget respects this hint to put out
             a warning for the user before switching to this type of Representation.
             The user can then accept or reject the change.
             BUG #15117
        -->
        <WarnOnRepresentationChange value="Volume" />
      </Hints>
      <!-- End of UnstructuredGridBaseRepresentation -->
    </PVRepresentationProxy>
    <!-- ================================================================== -->

    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="UnstructuredGridRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>This representation is used to show unstructured grid as
      Surface/Outline/Points/Wireframe/Volume</Documentation>
      <!-- this adds to what is already defined in PVRepresentationBase -->
      <RepresentationType subproxy="VolumeRepresentation"
                          text="Volume" />
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkUnstructuredGrid" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="cell"
                          name="input_array_cell"
                          optional="1"></InputArrayDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <SubProxy>
        <Proxy name="VolumeRepresentation"
               proxygroup="representations"
               proxyname="UnstructuredGridVolumeRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
        <ExposedProperties>
          <Property name="ScalarOpacityFunction"
                    panel_visibility="never" />
          <Property name="ScalarOpacityUnitDistance"
                    panel_visibility="advanced" />
          <Property name="ExtractedBlockIndex"
                    panel_visibility="never" />
          <Property name="SelectMapper"
                    panel_visibility="advanced"
                    panel_visibility_default_for_representation="volume" />
        </ExposedProperties>
      </SubProxy>
      <Hints>
        <!-- pqDisplayRepresentationWidget respects this hint to put out
             a warning for the user before switching to this type of Representation.
             The user can then accept or reject the change.
             BUG #15117
        -->
        <WarnOnRepresentationChange value="Volume" />
      </Hints>
      <!-- End of UnstructuredGridRepresentation -->
    </PVRepresentationProxy>

    <!-- ================================================================== -->
    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="StructuredGridRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>This representation is used to show structured grid as
      Surface/Outline/Points/Wireframe/Volume</Documentation>
      <!-- this adds to what is already defined in PVRepresentationBase -->
      <RepresentationType subproxy="VolumeRepresentation"
                          text="Volume" />
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkStructuredGrid" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <SubProxy>
        <Proxy name="VolumeRepresentation"
               proxygroup="representations"
               proxyname="StructuredGridVolumeRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
        <ExposedProperties>
          <PropertyGroup label="Volume Rendering">
            <Property name="ScalarOpacityFunction"
                      panel_visibility="never" />
            <Property name="ScalarOpacityUnitDistance"
                      panel_visibility="advanced" />
            <Property name="ExtractedBlockIndex"
                      panel_visibility="never" />
            <Property name="SelectMapper"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="volume" />
            <Property name="UseDataParititions"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="volume" />
          </PropertyGroup>
        </ExposedProperties>
      </SubProxy>
      <Hints>
        <!-- pqDisplayRepresentationWidget respects this hint to put out
             a warning for the user before switching to this type of Representation.
             The user can then accept or reject the change.
             BUG #15117
        -->
        <WarnOnRepresentationChange value="Volume" />
      </Hints>
      <!-- End of StructuredGridRepresentation -->
    </PVRepresentationProxy>
    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="UniformGridRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>This representation is used to show image data as
      Surface/Outline/Points/Wireframe/Volume/Slice.</Documentation>
      <!-- this adds to the types already defined in PVRepresentationBase -->
      <RepresentationType subproxy="VolumeRepresentation"
                          text="Volume" />
      <RepresentationType subproxy="SliceRepresentation"
                          text="Slice" />
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkImageData" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="cell"
                          name="input_array_cell"
                          optional="1"></InputArrayDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <SubProxy>
        <Proxy name="VolumeRepresentation"
               proxygroup="representations"
               proxyname="UniformGridVolumeRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
        <ExposedProperties>
          <PropertyGroup label="Volume Rendering">
            <Property name="ScalarOpacityUnitDistance"
                      panel_visibility="advanced" />
            <Property name="ScalarOpacityFunction"
                      panel_visibility="never" />
            <Property name="VolumeRenderingMode"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="volume" />
            <Property name="Shade"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="volume" />
            <Property name="InterpolationType"
                      panel_visibility="never" />
          </PropertyGroup>
        </ExposedProperties>
      </SubProxy>
      <SubProxy>
        <Proxy name="SliceRepresentation"
               proxygroup="representations"
               proxyname="ImageSliceRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
        <ExposedProperties>
          <PropertyGroup label="Slicing">
            <Property name="SliceMode"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="slice" />
            <Property name="Slice"
                      panel_visibility="advanced"
                      panel_visibility_default_for_representation="slice" />
          </PropertyGroup>
        </ExposedProperties>
      </SubProxy>
      <Hints>
        <!-- pqDisplayRepresentationWidget respects this hint to put out
             a warning for the user before switching to this type of Representation.
             The user can then accept or reject the change.
             BUG #15117
        -->
        <WarnOnRepresentationChange value="Volume" />
      </Hints>
      <!-- End of UniformGridRepresentation -->
    </PVRepresentationProxy>
    <!-- ================================================================== -->
    <PVRepresentationProxy base_proxygroup="internal_representations"
                           base_proxyname="PVRepresentationBase"
                           class="vtkPVCompositeRepresentation"
                           name="AMRRepresentation"
                           processes="client|renderserver|dataserver">
      <Documentation>This representation is used to show AMR data as
      Surface/Outline/Points/Wireframe/Volume.</Documentation>
      <!-- this adds to the types already defined in PVRepresentationBase -->
      <RepresentationType subproxy="VolumeRepresentation"
                          text="Volume" />
      <RepresentationType subproxy="AMROutlineRepresentation"
                          text="AMR Blocks" />
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkOverlappingAMR" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="cell"
                          name="input_array_cell"
                          optional="1"></InputArrayDomain>
        <InputArrayDomain attribute_type="point"
                          name="input_array_point"
                          optional="1"></InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>

      <SubProxy>
        <Proxy name="VolumeRepresentation"
               proxygroup="internal_representations"
               proxyname="AMRVolumeRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
        </ShareProperties>
        <ExposedProperties>
          <Property name="ScalarOpacityUnitDistance"
                    panel_visibility="advanced" />
          <Property name="ScalarOpacityFunction" />
          <Property name="VolumeRenderingMode" />
          <Property name="ResamplingMode" />
          <Property name="StreamingRequestSize" />
          <Property name="NumberOfSamples" />
          <Property name="Shade" />
        </ExposedProperties>
      </SubProxy>

      <SubProxy>
        <Proxy name="AMROutlineRepresentation"
               proxygroup="internal_representations"
               proxyname="AMROutlineRepresentation" />
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
        </ShareProperties>
      </SubProxy>

      <Hints>
        <!-- pqDisplayRepresentationWidget respects this hint to put out
             a warning for the user before switching to this type of Representation.
             The user can then accept or reject the change.
             BUG #15117
        -->
        <WarnOnRepresentationChange value="Volume" />
      </Hints>

      <!-- End of AMRRepresentation -->
    </PVRepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkStructuredGridVolumeRepresentation"
                         name="StructuredGridVolumeRepresentation"
                         processes="client|renderserver|dataserver"
                         si_class="vtkSIUnstructuredGridVolumeRepresentationProxy"
                         base_proxygroup="representations"
                         base_proxyname="UnstructuredGridVolumeRepresentation">
      <IntVectorProperty command="SetUseDataParititions"
                         default_values="1"
                         name="UseDataParititions"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <!-- end of StructuredGridVolumeRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkImageVolumeRepresentation"
                         name="UniformGridVolumeRepresentation"
                         processes="client|renderserver|dataserver"
                         si_class="vtkSIProxy">
      <Documentation>Representation for rendering a vtkImageData as
      volume.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkImageData" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="any"
                          name="input_array_any">
        </InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for this
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetInputArrayToProcess"
                            element_types="0 0 0 0 2"
                            name="ColorArrayName"
                            no_custom_default="1"
                            number_of_elements="5">
        <Documentation>
          Set the array to color with. One must specify the field association and
          the array name of the array. If the array is missing, scalar coloring will
          automatically be disabled.
        </Documentation>
        <RepresentedArrayListDomain name="array_list"
                         input_domain_name="input_array_any">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </RepresentedArrayListDomain>
        <FieldDataDomain name="field_list"
                         disable_update_domain_entries="1"
                         force_point_cell_data="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetPosition"
                            default_values="0 0 0"
                            name="Position"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScale"
                            default_values="1 1 1"
                            name="Scale"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientation"
                            default_values="0 0 0"
                            name="Orientation"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrigin"
                            default_values="0 0 0"
                            name="Origin"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetPickable"
                         default_values="1"
                         name="Pickable"
                         number_of_elements="1">
        <Hints>
          <NoDefault />
        </Hints>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetInterpolationType"
                         default_values="2"
                         name="InterpolationType"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Nearest"
                 value="0" />
          <Entry text="Linear"
                 value="1" />
          <Entry text="Cubic"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <ProxyProperty command="SetColor"
                     name="LookupTable" >
        <ProxyGroupDomain name="groups">
          <Group name="transfer_functions" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <DoubleVectorProperty command="SetAmbient"
                            default_values="0.0"
                            name="Ambient"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuse"
                            default_values="1.0"
                            name="Diffuse"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecular"
                            default_values="0.0"
                            name="Specular"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularPower"
                            default_values="100.0"
                            name="SpecularPower"
                            number_of_elements="1">
        <DoubleRangeDomain max="100"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetShade"
                         default_values="0"
                         name="Shade"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Enable/Disable shading.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetIndependantComponents"
                         default_values="1"
                         name="MapScalars"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Enable/Disable independant component usage such a
        unsigned char RGBA data array.</Documentation>
      </IntVectorProperty>
      <ProxyProperty command="SetScalarOpacity"
                     name="ScalarOpacityFunction" >
        <ProxyGroupDomain name="groups">
          <Group name="piecewise_functions" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <IntVectorProperty command="SetRequestedRenderMode"
                         default_values="0"
                         name="VolumeRenderingMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Smart" value="0" />
          <Entry text="Ray Cast Only" value="2" />
          <Entry text="GPU Based" value="4" />
        </EnumerationDomain>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetScalarOpacityUnitDistance"
                            default_values="1"
                            name="ScalarOpacityUnitDistance"
                            number_of_elements="1">
        <BoundsDomain mode="approximate_cell_length"
                      name="bounds" >
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </BoundsDomain>
      </DoubleVectorProperty>
      <!-- end of UniformGridVolumeRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkOutlineRepresentation"
                         name="OutlineRepresentation"
                         processes="client|renderserver|dataserver"
                         base_proxygroup="representations"
                         base_proxyname="SurfaceRepresentation" >
      <Documentation>
        Representation for showing an outline for any dataset.
      </Documentation>
      <!-- end of OutlineRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkImageSliceRepresentation"
                         name="ImageSliceRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation to show 2D images. If the input image has
      3D extents, then this representation shows a single Z
      slice.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Set the input to the representation. Must be a
        vtkImageData producer.</Documentation>
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkImageData" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="any"
                          name="input_array_any"></InputArrayDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for this
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetInputArrayToProcess"
                            element_types="0 0 0 0 2"
                            name="ColorArrayName"
                            no_custom_default="1"
                            number_of_elements="5">
        <Documentation>
          Set the array to color with. One must specify the field association and
          the array name of the array. If the array is missing, scalar coloring will
          automatically be disabled.
        </Documentation>
        <RepresentedArrayListDomain name="array_list"
                         input_domain_name="input_array_any">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </RepresentedArrayListDomain>
        <FieldDataDomain name="field_list"
                         disable_update_domain_entries="1"
                         force_point_cell_data="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </StringVectorProperty>
      <IntVectorProperty command="SetSlice"
                         default_values="0"
                         name="Slice"
                         number_of_elements="1">
        <Documentation>Set the current slice number. Slice number is used to
        load a 2D slice from a 3D input image. If the input image is 2D, then
        the slice number if ignored. The direction of the slice is determined
        by SliceMode.</Documentation>
        <DimensionsDomain name="dims">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
            <Property function="Direction"
                      name="SliceMode" />
          </RequiredProperties>
        </DimensionsDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetSliceMode"
                         default_values="5"
                         label="Slice Direction"
                         name="SliceMode"
                         number_of_elements="1">
        <Documentation>Determines the direction of slicing to obtain a 2D slice
        from a 3D image.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="XY Plane"
                 value="5" />
          <Entry text="YZ Plane"
                 value="6" />
          <Entry text="XZ Plane"
                 value="7" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetMapScalars"
                         default_values="1"
                         name="MapScalars"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>When set to true, LookupTable will always be
        used for scalar mapping. Otherwise, when up to 4 component
        scalars are present, the components are clamped to a valid
        color interval (0-255 for an integral type and 0.0-1.0 for a
        floating point type) and then directly used as
        color.</Documentation>
      </IntVectorProperty>
      <ProxyProperty command="SetLookupTable"
                     name="LookupTable" >
        <Documentation>Set the lookup table to use for scalar
        mapping.</Documentation>
        <ProxyGroupDomain name="groups">
          <Group name="lookup_tables" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <IntVectorProperty command="SetUseXYPlane"
                         default_values="0"
                         name="UseXYPlane"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>When set, the image slice is always rendered in the XY
        plane (Z==0) irrespective of the image bounds. Default if
        Off.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetPosition"
                            default_values="0 0 0"
                            name="Position"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScale"
                            default_values="1 1 1"
                            name="Scale"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientation"
                            default_values="0 0 0"
                            name="Orientation"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrigin"
                            default_values="0 0 0"
                            name="Origin"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetPickable"
                         default_values="1"
                         name="Pickable"
                         number_of_elements="1">
        <Hints>
          <NoDefault />
        </Hints>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetOpacity"
                            default_values="1.0"
                            name="Opacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetAmbient"
                            default_values="0.0"
                            name="Ambient"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuse"
                            default_values="1.0"
                            name="Diffuse"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecular"
                            default_values="0.0"
                            name="Specular"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularPower"
                            default_values="100.0"
                            name="SpecularPower"
                            number_of_elements="1">
        <DoubleRangeDomain max="100"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularColor"
                            default_values="1.0 1.0 1.0"
                            name="SpecularColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <!-- End of ImageSliceRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy base_proxygroup="internal_representations"
                         base_proxyname="SurfaceRepresentationBase"
                         class="vtkGeometryRepresentationWithFaces"
                         name="SurfaceRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation to show any dataset in a 3D render
      view.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <IntVectorProperty command="SetBackfaceRepresentation"
                         default_values="400"
                         name="BackfaceRepresentation"
                         number_of_elements="1">
        <Documentation>Choose the representation type for the
        backface.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="Follow Frontface"
                 value="400" />
          <Entry text="Cull Backface"
                 value="401" />
          <Entry text="Cull Frontface"
                 value="402" />
          <Entry text="Points"
                 value="0" />
          <Entry text="Wireframe"
                 value="1" />
          <Entry text="Surface"
                 value="2" />
          <Entry text="Surface With Edges"
                 value="3" />
        </EnumerationDomain>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetBackfaceOpacity"
                            default_values="1.0"
                            name="BackfaceOpacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBackfaceAmbientColor"
                            default_values="1.0 1.0 1.0"
                            name="BackfaceAmbientColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetBackfaceDiffuseColor"
                            default_values="1.0 1.0 1.0"
                            name="BackfaceDiffuseColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SurfaceColor" />
        </Hints>
      </DoubleVectorProperty>
    </RepresentationProxy>
    <!-- ================================================================== -->
    <RepresentationProxy base_proxygroup="internal_representations"
                         base_proxyname="SurfaceRepresentationBase"
                         class="vtkGlyph3DRepresentation"
                         name="Glyph3DRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation to show any dataset in a 3D render
      view.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <InputProperty command="SetInputConnection"
                     label="Glyph Type"
                     name="GlyphType"
                     panel_visibility="advanced"
                     port_index="1">
        <Documentation>Specify the source objects.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkPolyData" />
        </DataTypeDomain>
        <ProxyListDomain name="proxy_list">
          <Proxy group="sources" name="ArrowSource" />
          <Proxy group="sources" name="ConeSource" />
          <Proxy group="sources" name="CubeSource" />
          <Proxy group="sources" name="CylinderSource" />
          <Proxy group="sources" name="LineSource" />
          <Proxy group="sources" name="SphereSource" />
          <Proxy group="sources" name="GlyphSource2D" />
        </ProxyListDomain>
        <Hints>
          <ProxyPropertyWidget selected_proxy_panel_visibility="advanced" />
          <!-- show the selected proxy's panel, only in advanced mode. -->
        </Hints>
      </InputProperty>
      <IntVectorProperty command="SetMeshVisibility"
                         default_values="0"
                         name="MeshVisibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Get/Set the visibility of the original
        mesh.</Documentation>
      </IntVectorProperty>
      <StringVectorProperty command="SetMaskArray"
                            default_values=""
                            label="Mask Array"
                            name="SelectMaskArray"
                            number_of_elements="1"></StringVectorProperty>
      <StringVectorProperty command="SetScaleArray"
                            default_values=""
                            label="Scale Array"
                            name="SelectScaleArray"
                            number_of_elements="1">
        <ArrayListDomain attribute_type="any"
                         input_domain_name="input_array_point"
                         name="array_list"
                         none_string="None">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <IntVectorProperty command="SetScaling"
                         default_values="0"
                         name="Scaling"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Enable/Disable scaling of source
        geometry.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetScaleMode"
                         default_values="0"
                         name="ScaleMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="No Data Scaling Off"
                 value="0" />
          <Entry text="Magnitude"
                 value="1" />
          <Entry text="Vector Components"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <StringVectorProperty command="SetOrientationArray"
                            default_values=""
                            label="Orientation Vectors"
                            name="SelectOrientationVectors"
                            number_of_elements="1">
        <ArrayListDomain attribute_type="Vectors"
                         input_domain_name="input_array_point"
                         name="array_list"
                         none_string="None">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetScaleFactor"
                            default_values="1.0"
                            name="ScaleFactor"
                            number_of_elements="1">
        <BoundsDomain mode="scaled_extent"
                      name="bounds"
                      scale_factor="0.1">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </BoundsDomain>
        <ArrayRangeDomain name="scalar_range">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
            <Property function="ArraySelection"
                      name="SelectScaleArray" />
          </RequiredProperties>
        </ArrayRangeDomain>
        <ArrayRangeDomain name="vector_range">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
            <Property function="ArraySelection"
                      name="SelectOrientationVectors" />
          </RequiredProperties>
        </ArrayRangeDomain>
        <Documentation>The value of this property will be used as a multiplier
        for scaling the glyphs before adding them to the
        output.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetOrient"
                         default_values="0"
                         name="Orient"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>If this property is set to 1, the glyphs will be
        oriented based on the selected orientation vector
        array.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetOrientationMode"
                         default_values="0"
                         name="OrientationMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Direction"
                 value="0" />
          <Entry text="Rotation"
                 value="1" />
        </EnumerationDomain>
        <Documentation>Orientation mode indicates if the OrientationArray
        provides the direction vector for the orientation or the rotations
        around each axes. Default is DIRECTION.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetMasking"
                         default_values="0"
                         name="Masking"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Tells the mapper to skip glyphing input points that
        haves false values in the mask array. If there is no mask array (id
        access mode is set and there is no such id, or array name access mode
        is set and the there is no such name), masking is silently ignored. A
        mask array is a vtkBitArray with only one component.</Documentation>
      </IntVectorProperty>
      <!-- end of Glyph3DRepresentation -->
    </RepresentationProxy>
    <!-- ================================================================== -->
    <RepresentationProxy class="vtkDataLabelRepresentation"
                         name="DataLabelRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation used to add labels to points/cells of any
      dataset.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <InputArrayDomain name="input_array_any"></InputArrayDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for this
        representation.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetPointLabelColor"
                            default_values="1 1 0"
                            name="PointLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetPointLabelOpacity"
                            default_values="1.0"
                            name="PointLabelOpacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1.0"
                           min="0.0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetPointLabelFontFamily"
                         default_values="0"
                         name="PointLabelFontFamily"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Arial"
                 value="0" />
          <Entry text="Courier"
                 value="1" />
          <Entry text="Times"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelBold"
                         default_values="0"
                         name="PointLabelBold"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelItalic"
                         default_values="0"
                         name="PointLabelItalic"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelShadow"
                         default_values="0"
                         name="PointLabelShadow"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelFontSize"
                         default_values="18"
                         name="PointLabelFontSize"
                         number_of_elements="1">
        <IntRangeDomain min="0"
                        name="range" />
      </IntVectorProperty>
      <StringVectorProperty command="SetPointLabelFormat"
                            default_values=""
                            name="PointLabelFormat"
                            number_of_elements="1">
        <Documentation>
          This should be a printf-style format string. By default,
          the mapper will try to print each component of the tuple
          using a sane format: d for integers, f for floats, g for
          doubles, ld for longs, et cetera. If you need a different
          format, set it here. You can do things like limit the number
          of significant digits, add prefixes/suffixes, basically
          anything that printf can do. Leave empty to auto select an
          appropriate format.
        </Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetPointLabelJustification"
                         default_values="0"
                         name="PointLabelJustification"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Left"
                 value="0" />
          <Entry text="Center"
                 value="1" />
          <Entry text="Right"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelVisibility"
                         default_values="0"
                         name="PointLabelVisibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetPointLabelMode"
                         default_values="6"
                         name="PointLabelMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="IDs"
                 value="0" />
          <Entry text="Scalars"
                 value="1" />
          <Entry text="Vectors"
                 value="2" />
          <Entry text="Normals"
                 value="3" />
          <Entry text="TCoords"
                 value="4" />
          <Entry text="Tensors"
                 value="5" />
          <Entry text="FieldData"
                 value="6" />
        </EnumerationDomain>
      </IntVectorProperty>
      <StringVectorProperty command="SetPointFieldDataArrayName"
                            name="PointFieldDataArrayName"
                            number_of_elements="1">
        <ArrayListDomain input_domain_name="input_array"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetCellLabelColor"
                            default_values="0.0 1.0 0.0"
                            name="CellLabelColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetCellLabelOpacity"
                            default_values="1.0"
                            name="CellLabelOpacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1.0"
                           min="0.0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetCellLabelFontFamily"
                         default_values="0"
                         name="CellLabelFontFamily"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Arial"
                 value="0" />
          <Entry text="Courier"
                 value="1" />
          <Entry text="Times"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelBold"
                         default_values="0"
                         name="CellLabelBold"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelItalic"
                         default_values="0"
                         name="CellLabelItalic"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelShadow"
                         default_values="0"
                         name="CellLabelShadow"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelFontSize"
                         default_values="18"
                         name="CellLabelFontSize"
                         number_of_elements="1">
        <IntRangeDomain min="0"
                        name="range" />
      </IntVectorProperty>
      <StringVectorProperty command="SetCellLabelFormat"
                            default_values=""
                            name="CellLabelFormat"
                            number_of_elements="1">
        <Documentation>
          This should be a printf-style format string. By default,
          the mapper will try to print each component of the tuple
          using a sane format: d for integers, f for floats, g for
          doubles, ld for longs, et cetera. If you need a different
          format, set it here. You can do things like limit the number
          of significant digits, add prefixes/suffixes, basically
          anything that printf can do. Leave empty to auto select an
          appropriate format.
        </Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetCellLabelJustification"
                         default_values="0"
                         name="CellLabelJustification"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Left"
                 value="0" />
          <Entry text="Center"
                 value="1" />
          <Entry text="Right"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelVisibility"
                         default_values="0"
                         name="CellLabelVisibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetCellLabelMode"
                         default_values="6"
                         name="CellLabelMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="IDs"
                 value="0" />
          <Entry text="Scalars"
                 value="1" />
          <Entry text="Vectors"
                 value="2" />
          <Entry text="Normals"
                 value="3" />
          <Entry text="TCoords"
                 value="4" />
          <Entry text="Tensors"
                 value="5" />
          <Entry text="FieldData"
                 value="6" />
        </EnumerationDomain>
      </IntVectorProperty>
      <StringVectorProperty command="SetCellFieldDataArrayName"
                            name="CellFieldDataArrayName"
                            number_of_elements="1">
        <ArrayListDomain input_domain_name="input_array"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
      </StringVectorProperty>
      <!-- End of DataLabelRepresentation -->
    </RepresentationProxy>
    <!-- ================================================================== -->
    <RepresentationProxy class="vtkSelectionRepresentation"
                         name="SelectionRepresentation"
                         processes="client|renderserver|dataserver"
                         si_class="vtkSIProxy">
      <Documentation>Proxy to show a selection as geometry.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <InputArrayDomain name="input_array_any"></InputArrayDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Get/Set the visibility of the
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetColor"
                            default_values="1.0 0.0 1.0"
                            name="Color"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SelectionColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLineWidth"
                            default_values="2.0"
                            name="LineWidth"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOpacity"
                            default_values="1"
                            name="Opacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetPointSize"
                            default_values="5.0"
                            name="PointSize"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetRepresentation"
                         default_values="1"
                         name="Representation"
                         panel_widget="display_representation_selector"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Points"
                 value="0" />
          <Entry text="Wireframe"
                 value="1" />
          <Entry text="Surface"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseOutline"
                         default_values="0"
                         name="UseOutline"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetPosition"
                            default_values="0 0 0"
                            name="Position"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScale"
                            default_values="1 1 1"
                            name="Scale"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientation"
                            default_values="0 0 0"
                            name="Orientation"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrigin"
                            default_values="0 0 0"
                            name="Origin"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>

      <DoubleVectorProperty argument_is_array="1"
                            command="SetUserTransform"
                            default_values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"
                            name="UserTransform"
                            number_of_elements="16">
        <Documentation>
          In addition to the instance variables such as position and
          orientation, you can add an additional transformation for your own
          use. This transformation is concatenated with the actor's internal
          transformation, which you implicitly create through the use of
          Position, Origin, Orientation. The value is 4x4 matrix for the linear
          tranform to use.
        </Documentation>
      </DoubleVectorProperty>

      <SubProxy command="SetLabelRepresentation">
        <Proxy name="LabelRepresentation"
               proxygroup="representations"
               proxyname="DataLabelRepresentation" />
        <ExposedProperties>
          <Property name="CellFieldDataArrayName" />
          <Property name="CellLabelBold" />
          <Property name="CellLabelColor" />
          <Property name="CellLabelFontFamily" />
          <Property name="CellLabelFontSize" />
          <Property name="CellLabelFormat" />
          <Property name="CellLabelItalic" />
          <Property name="CellLabelJustification" />
          <Property name="CellLabelOpacity" />
          <Property name="CellLabelShadow" />
          <Property name="CellLabelVisibility" />
          <Property name="PointFieldDataArrayName" />
          <Property name="PointLabelBold" />
          <Property name="PointLabelColor" />
          <Property name="PointLabelFontFamily" />
          <Property name="PointLabelFontSize" />
          <Property name="PointLabelFormat" />
          <Property name="PointLabelItalic" />
          <Property name="PointLabelJustification" />
          <Property name="PointLabelOpacity" />
          <Property name="PointLabelShadow" />
          <Property name="PointLabelVisibility" />
        </ExposedProperties>
      </SubProxy>

      <PropertyGroup label="Cell Label Font" panel_visibility="never" panel_widget="FontEditor">
        <Property name="CellLabelBold" function="Bold"/>
        <Property name="CellLabelColor" function="Color"/>
        <Property name="CellLabelFontFamily" function="Family"/>
        <Property name="CellLabelFontSize" function="Size"/>
        <Property name="CellLabelItalic" function="Italics"/>
        <Property name="CellLabelJustification" function="Justification"/>
        <Property name="CellLabelOpacity" function="Opacity"/>
        <Property name="CellLabelShadow" function="Shadow"/>
      </PropertyGroup>

      <PropertyGroup label="Point Label Font" panel_visibility="never" panel_widget="FontEditor">
        <Property name="PointLabelBold" function="Bold"/>
        <Property name="PointLabelColor" function="Color"/>
        <Property name="PointLabelFontFamily" function="Family"/>
        <Property name="PointLabelFontSize" function="Size"/>
        <Property name="PointLabelItalic" function="Italics"/>
        <Property name="PointLabelJustification" function="Justification"/>
        <Property name="PointLabelOpacity" function="Opacity"/>
        <Property name="PointLabelShadow" function="Shadow"/>
      </PropertyGroup>

      <!-- End of SelectionRepresentation -->
    </RepresentationProxy>
    <!-- ================================================================== -->
    <RepresentationProxy class="vtkMoleculeRepresentation"
                         name="MoleculeRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation for a vtkMolecule.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkMolecule" />
        </DataTypeDomain>
        <Documentation>Set the input molecule for the
        representation.</Documentation>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Set the visibility for this
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetMoleculeRenderMode"
                         default_values="0"
                         label="Render Mode"
                         name="MoleculeRenderMode"
                         number_of_elements="1"
                         panel_visibility="default">
        <EnumerationDomain name="enum">
          <Entry text="Ball and Stick"
                 value="0" />
          <Entry text="Space Filling"
                 value="1" />
          <Entry text="Liquorice"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <!-- End of MoleculeRepresentation -->
    </RepresentationProxy>
    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              class="vtkXYChartRepresentation"
                              name="XYChartRepresentationBase"
                              processes="client|dataserver|renderserver">
      <Documentation>API for representations used by XYChartView and XYBarChartView.
      </Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty clean_command="ResetCompositeDataSetIndices"
                         command="AddCompositeDataSetIndex"
                         default_values="1"
                         number_of_elements="1"
                         name="CompositeDataSetIndex"
                         number_of_elements_per_command="1"
                         panel_visibility="default"
                         repeat_command="1">
        <CompositeTreeDomain mode="leaves" name="tree">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
        <Documentation>This property lists the ids of the blocks to extract
        from the input multiblock dataset.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="AttributeType"
                         number_of_elements="1">
        <Documentation>Select the attribute data to render.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseIndexForXAxis"
                         default_values="1"
                         name="UseIndexForXAxis"
                         number_of_elements="1">
        <ChartUseIndexForAxisDomain name="bool">
          <RequiredProperties>
            <Property function="ArraySelection" name="XArrayName" />
          </RequiredProperties>
        </ChartUseIndexForAxisDomain>
        <Documentation>When set, the array index will be used for X axis,
        otherwise the array identified by XArrayName will be
        used.</Documentation>
      </IntVectorProperty>
      <StringVectorProperty command="SetXAxisSeriesName"
                            default_values=""
                            name="XArrayName"
                            number_of_elements="1">
        <Documentation>Set the array to use on X axis. This is used only when
        UseIndexForXAxis is set to 0.</Documentation>
        <ChartSeriesListDomain name="array_list"
                              hide_partial_arrays="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
          </RequiredProperties>
        </ChartSeriesListDomain>
        <Hints>
          <!-- the widget for this property is only enabled, when
          UseIndexForXAxis is unchecked. -->
          <PropertyWidgetDecorator type="EnableWidgetDecorator">
            <Property name="UseIndexForXAxis" function="boolean_invert" />
          </PropertyWidgetDecorator>
        </Hints>
      </StringVectorProperty>
      <PropertyGroup label="X Axis Parameters">
        <Property name="UseIndexForXAxis" />
        <Property name="XArrayName" />
      </PropertyGroup>
      <StringVectorProperty command="SetSeriesVisibility"
                            element_types="2 0"
                            name="SeriesVisibility"
                            number_of_elements_per_command="2"
                            repeat_command="1"
                            clean_command="ClearSeriesVisibilities">
        <Documentation>Set the series visibility.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="visibility">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetLabel"
                            clean_command="ClearLabels"
                            element_types="2 2"
                            name="SeriesLabel"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series labels.</Documentation>
        <ChartSeriesSelectionDomain name="array_list" default_mode="label">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetColor"
                            clean_command="ClearColors"
                            element_types="2 1 1 1"
                            name="SeriesColor"
                            number_of_elements_per_command="4"
                            repeat_command="1">
        <Documentation>Set the series line/bar color.</Documentation>
        <ChartSeriesSelectionDomain name="array_list" default_mode="color">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetAxisCorner"
                            clean_command="ClearAxisCorners"
                            element_types="2 0"
                            name="SeriesPlotCorner"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series axis corner.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="value"
                                    default_value="0">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <!--
          Set the palette SelectionColor color to all the plots in the chart.
        -->
      <DoubleVectorProperty command="SetSelectionColor"
                            default_values="1.0 0.0 1.0"
                            name="Color"
                            number_of_elements="3"
                            panel_visibility="never">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SelectionColor" />
        </Hints>
      </DoubleVectorProperty>
      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>

      <!-- End of XYChartRepresentationBase -->
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              class="vtkPVHistogramChartRepresentation"
                              name="HistogramChartRepresentation"
                              processes="client|dataserver|renderserver">
      <Documentation>Representation used by XYHistogramChartView.</Documentation>
            <Documentation>API for representations used by XYChartView and XYBarChartView.
      </Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <StringVectorProperty animateable="0"
                            command="SetInputArrayToProcess"
                            element_types="0 0 0 0 2"
                            name="SelectInputArray"
                            number_of_elements="5">
        <ArrayListDomain attribute_type="Scalars"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
        <FieldDataDomain name="field_list">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
        <Documentation>This property indicates the name of the array from which
        to compute the histogram.</Documentation>
      </StringVectorProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetUseColorMapping"
                         number_of_elements="1"
                         default_values="0"
                         name="UseColorMapping"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>
          Use color mapping for the histogram.
        </Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetHistogramColor"
                            default_values="0 0 1"
                            name="HistogramColor"
                            number_of_elements="3"
                            panel_widget="color_selector"
                            panel_visibility="default">
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="UseColorMapping" function="boolean_invert" />
          </PropertyWidgetDecorator>
        </Hints>
        <Documentation>Sets the color for the histograms.</Documentation>
      </DoubleVectorProperty>
      <ProxyProperty command="SetLookupTable"
                     name="LookupTable"
                     panel_visibility="never">
        <Documentation>Sets the lookup table to use for scalar
        mapping.</Documentation>
        <ProxyGroupDomain name="groups">
          <Group name="lookup_tables" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
               <!-- See vtkSMChartRepresentationProxy::SetPropertyModifiedFlag()
                    for the details on naming this property -->
          <InputProperty command="SetInputConnection"
                         name="OriginalSelectionInput"/>
        </RepresentationProxy>
      </SubProxy>

      <IntVectorProperty command="SetBinCount"
                         default_values="256"
                         name="BinCount"
                         number_of_elements="1">
        <IntRangeDomain max="1000"
                        min="1"
                        name="range" />
        <Documentation>The value of this property specifies the number of bins
        for the histogram.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty animateable="0"
                         command="SetComponent"
                         default_values="0"
                         name="Component"
                         number_of_elements="1">
        <NumberOfComponentsDomain name="comps">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
            <Property function="ArraySelection"
                      name="SelectInputArray" />
          </RequiredProperties>
        </NumberOfComponentsDomain>
        <Documentation>The value of this property specifies the array component
        from which the histogram should be computed.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseCustomBinRanges"
                         default_values="0"
                         name="UseCustomBinRanges"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
        <Documentation>When set to true, CustomBinRanges will be used instead
        of using the full range for the selected array. By default, set to
        false.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetCustomBinRanges"
                            default_values="0.0 100.0"
                            name="CustomBinRanges"
                            number_of_elements="2"
                            panel_visibility="advanced">
        <Documentation>Set custom bin ranges to use. These are used only when
        UseCustomBinRanges is set to true.</Documentation>
        <ArrayRangeDomain name="scalar_range">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
            <Property function="ArraySelection"
                      name="SelectInputArray" />
          </RequiredProperties>
        </ArrayRangeDomain>
        <Hints>
          <PropertyWidgetDecorator type="ShowWidgetDecorator">
            <Property name="UseCustomBinRanges" function="boolean" />
          </PropertyWidgetDecorator>
        </Hints>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetHistogramLineStyle"
                         name="HistogramLineStyle"
                         number_of_elements="1"
                         default_values="0"
                         panel_visibility="advanced">
         <Documentation>Set the line style to use for drawing a border around the histogram bins.
         </Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Solid" value="1" />
          <Entry text="Dash" value="2" />
          <Entry text="Dot" value="3" />
          <Entry text="Dash Dot" value="4" />
          <Entry text="Dash Dot Dot" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy class="vtkPVParallelCoordinatesRepresentation"
                              name="ParallelCoordinatesRepresentation"
                              processes="client|dataserver|renderserver">
      <Documentation>Representation used by
      ParallelCoordinatesChartView.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetCompositeDataSetIndex"
                         default_values="1"
                         name="CompositeDataSetIndex"
                         number_of_elements="1">
        <Documentation>In case of Composite datasets, set the flat index of the
        dataset to pass. The flat index must point to a non-empty,
        non-composite dataset for anything to be passed through. If the input
        is not a composite dataset, then this index is ignored.</Documentation>
        <CompositeTreeDomain mode="leaves"
                             name="tree">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="FieldAssociation"
                         number_of_elements="1">
        <Documentation>Select the attribute data to pass.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>

      <StringVectorProperty command="SetSeriesVisibility"
                            element_types="2 0"
                            name="SeriesVisibility"
                            number_of_elements_per_command="2"
                            repeat_command="1"
                            clean_command="ClearSeriesVisibilities">
        <Documentation>Set the series visibility.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="visibility">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="FieldAssociation" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
        <Hints>
          <!-- when present, the SeriesEditor widget will allow user to
          re-order the series which will affect the rendered plot -->
          <SeriesEditor supports_reordering="1" />
        </Hints>
      </StringVectorProperty>

      <DoubleVectorProperty command="SetColor"
                            name="Color"
                            number_of_elements="3"
                            default_values="0.0 0.0 0.0"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series line color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOpacity"
                            name="Opacity"
                            number_of_elements="1"
                            default_values="0.1"
                            panel_visibility="advanced">
        <Documentation>Set the opacity of the lines.</Documentation>
        <DoubleRangeDomain name="range" min="0" max="1" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetLineThickness"
                         name="LineThickness"
                         number_of_elements="1"
                         default_values="2"
                         panel_visibility="advanced">
        <Documentation>Set the series line thickness.</Documentation>
        <IntRangeDomain name="range" min="1" max="10" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLineStyle"
                         name="LineStyle"
                         number_of_elements="1"
                         default_values="1"
                         panel_visibility="advanced">
        <Documentation>Set the series line style.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Solid" value="1" />
          <Entry text="Dash" value="2" />
          <Entry text="Dot" value="3" />
          <Entry text="Dash Dot" value="4" />
          <Entry text="Dash Dot Dot" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>

      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor" >
        <Property name="SeriesVisibility" function="SeriesVisibility" />
      </PropertyGroup>

      <PropertyGroup label="Styling">
        <Property name="Color" />
        <Property name="Opacity" />
        <Property name="LineThickness" />
        <Property name="LineStyle" />
      </PropertyGroup>

      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy class="vtkPVBoxChartRepresentation"
                                 name="BoxChartRepresentation"
                                 processes="client|dataserver|renderserver">
      <Documentation>Representation used by BoxChartView.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetCompositeDataSetIndex"
                         default_values="1"
                         name="CompositeDataSetIndex"
                         number_of_elements="1">
        <Documentation>In case of Composite datasets, set the flat index of the
        dataset to pass. The flat index must point to a non-empty,
        non-composite dataset for anything to be passed through. If the input
        is not a composite dataset, then this index is ignored.</Documentation>
        <CompositeTreeDomain mode="leaves"
                             name="tree">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="FieldAssociation"
                         number_of_elements="1">
        <Documentation>Select the attribute data to pass.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>

      <StringVectorProperty command="SetSeriesVisibility"
                            element_types="2 0"
                            name="SeriesVisibility"
                            number_of_elements_per_command="2"
                            repeat_command="1"
                            clean_command="ClearSeriesVisibilities">
        <Documentation>Set the series visibility.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="visibility">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="FieldAssociation" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
        <Hints>
          <!-- when present, the SeriesEditor widget will allow user to
          re-order the series which will affect the rendered plot -->
          <SeriesEditor supports_reordering="1" />
        </Hints>
      </StringVectorProperty>
      <StringVectorProperty command="SetSeriesColor"
                            element_types="2 1 1 1"
                            name="SeriesColor"
                            number_of_elements_per_command="4"
                            repeat_command="1"
                            clean_command="ClearSeriesColors">
        <Documentation>Set the series box plot color.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="color">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="FieldAssociation" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>

      <DoubleVectorProperty command="SetColor"
                            name="Color"
                            number_of_elements="3"
                            default_values="0.0 0.0 0.0"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series line color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetLineThickness"
                         name="LineThickness"
                         number_of_elements="1"
                         default_values="2"
                         panel_visibility="advanced">
        <Documentation>Set the series line thickness.</Documentation>
        <IntRangeDomain name="range" min="1" max="10" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLineStyle"
                         name="LineStyle"
                         number_of_elements="1"
                         default_values="1"
                         panel_visibility="advanced">
        <Documentation>Set the series line style.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Solid" value="1" />
          <Entry text="Dash" value="2" />
          <Entry text="Dot" value="3" />
          <Entry text="Dash Dot" value="4" />
          <Entry text="Dash Dot Dot" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetLegend"
                         default_values="1"
                         name="Legend"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the legend.</Documentation>
      </IntVectorProperty>

      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor" >
        <Property name="SeriesVisibility"
                  function="SeriesVisibility" />
        <Property name="SeriesColor"
                  function="SeriesColor" />
      </PropertyGroup>

      <PropertyGroup label="Box Styling">
        <Property name="Color" />
        <Property name="LineThickness" />
        <Property name="LineStyle" />
        <Property name="Legend" />
      </PropertyGroup>

      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              class="vtkPVPlotMatrixRepresentation"
                              name="PlotMatrixRepresentation"
                              processes="client|dataserver|renderserver">
      <Documentation>Representation used by PlotMatrixView.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetCompositeDataSetIndex"
                         default_values="1"
                         name="CompositeDataSetIndex"
                         number_of_elements="1">
        <Documentation>In case of Composite datasets, set the flat index of the
        dataset to pass. The flat index must point to a non-empty,
        non-composite dataset for anything to be passed through. If the input
        is not a composite dataset, then this index is ignored.</Documentation>
        <CompositeTreeDomain mode="leaves"
                             name="tree">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="FieldAssociation"
                         number_of_elements="1">
        <Documentation>Select the attribute data to pass.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>

      <StringVectorProperty command="SetSeriesVisibility"
                            element_types="2 0"
                            name="SeriesVisibility"
                            number_of_elements_per_command="2"
                            repeat_command="1"
                            clean_command="ClearSeriesVisibilities">
        <Documentation>Set the series visibility.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="visibility">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="FieldAssociation" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
        <Hints>
          <!-- when present, the SeriesEditor widget will allow user to
          re-order the series which will affect the rendered plot -->
          <SeriesEditor supports_reordering="1" />
        </Hints>
      </StringVectorProperty>

      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor" >
        <Property name="SeriesVisibility" function="SeriesVisibility" />
      </PropertyGroup>

      <DoubleVectorProperty command="SetColor"
                            default_values="0 0 0"
                            name="ScatterPlotsColor"
                            number_of_elements="3"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Sets the color.</Documentation>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetHistogramColor"
                            default_values="0 0 0"
                            name="HistogramColor"
                            number_of_elements="3"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Sets the color for the histograms.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetMarkerStyle"
                         default_values="4"
                         name="ScatterPlotMarkerStyle"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <Documentation>Property which sets the marker style for the scatter
        plots.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0"/>
          <Entry text="Cross" value="1"/>
          <Entry text="Plus" value="2"/>
          <Entry text="Square" value="3"/>
          <Entry text="Circle" value="4"/>
          <Entry text="Diamond" value="5"/>
        </EnumerationDomain>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetMarkerSize"
                            default_values="5"
                            name="ScatterPlotMarkerSize"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Property which sets the marker size for the scatter
        plots.</Documentation>
        <DoubleRangeDomain name="range" min="1" max="20" />
      </DoubleVectorProperty>

      <DoubleVectorProperty command="SetActivePlotColor"
                            default_values="0 0 0"
                            name="ActivePlotColor"
                            number_of_elements="3"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Sets the color for the active plot.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetActivePlotMarkerStyle"
                         default_values="4"
                         name="ActivePlotMarkerStyle"
                         number_of_elements="1"
                         panel_visibility="advanced">
        <Documentation>Property which sets the marker style for the active
        plot.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0"/>
          <Entry text="Cross" value="1"/>
          <Entry text="Plus" value="2"/>
          <Entry text="Square" value="3"/>
          <Entry text="Circle" value="4"/>
          <Entry text="Diamond" value="5"/>
        </EnumerationDomain>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetActivePlotMarkerSize"
                            default_values="8"
                            name="ActivePlotMarkerSize"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Property which sets the marker size for the active
        plots.</Documentation>
        <DoubleRangeDomain name="range" min="1" max="20" />
      </DoubleVectorProperty>

      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>

      <PropertyGroup label="Styling">
        <Property name="ScatterPlotsColor" />
        <Property name="HistogramColor" />
        <Property name="ScatterPlotMarkerStyle" />
        <Property name="ScatterPlotMarkerSize" />
      </PropertyGroup>

      <PropertyGroup label="Styling (Active Plot)">
        <Property name="ActivePlotColor" />
        <Property name="ActivePlotMarkerStyle" />
        <Property name="ActivePlotMarkerSize" />
      </PropertyGroup>
      <!-- End of PlotMatrixRepresentation -->
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              base_proxyname="XYChartRepresentationBase"
                              class="vtkXYChartRepresentation"
                              name="XYChartRepresentation"
                              processes="client|dataserver|renderserver"
                              post_creation="SetChartTypeToLine">
      <Documentation>Representation used by XYChartView.</Documentation>
      <StringVectorProperty command="SetLineStyle"
                            clean_command="ClearLineStyles"
                            element_types="2 0"
                            name="SeriesLineStyle"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series line style.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="value"
                                    default_value="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetLineThickness"
                            clean_command="ClearLineThicknesses"
                            element_types="2 0"
                            name="SeriesLineThickness"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series line thickness.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="value"
                                    default_value="2">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetMarkerStyle"
                            clean_command="ClearMarkerStyles"
                            element_types="2 0"
                            name="SeriesMarkerStyle"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series marker style.</Documentation>
        <ChartSeriesSelectionDomain name="array_list"
                                    default_mode="value"
                                    default_value="0">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </ChartSeriesSelectionDomain>
      </StringVectorProperty>

      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor"
                     panel_visibility="default" >
        <Property name="SeriesVisibility"
                  function="SeriesVisibility" />
        <Property name="SeriesColor"
                  function="SeriesColor" />
        <Property name="SeriesLineThickness"
                  function="SeriesLineThickness" />
        <Property name="SeriesLineStyle"
                  function="SeriesLineStyle" />
        <Property name="SeriesLabel"
                  function="SeriesLabel" />
        <Property name="SeriesMarkerStyle"
                  function="SeriesMarkerStyle" />
        <Property name="SeriesPlotCorner"
                  function="SeriesPlotCorner"/>
      </PropertyGroup>

      <StringVectorProperty command="SetSeriesLabelPrefix"
                            name="SeriesLabelPrefix"
                            number_of_elements="1"
                            default_value=""
                            panel_visibility="advanced">
      <Documentation>
        Specify a string to prefix to the **SeriesLabel** (**Legend Name**) for each
        of series being plotted. This will get prefixed to the labels (legend names) specified
        for each of the series individually via the **Series Parameters**.
      </Documentation>
      </StringVectorProperty>

    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              base_proxyname="XYChartRepresentation"
                              class="vtkQuartileChartRepresentation"
                              name="QuartileChartRepresentation"
                              processes="client|dataserver|renderserver"
                              post_creation="SetChartTypeToArea">
      <Documentation>Representation used by Quartile Chart View.</Documentation>
      <IntVectorProperty name="ShowQuartiles"
                         command="SetQuartileVisibility"
                         number_of_elements="1"
                         default_values="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether to render the area for the q1/q3 quartiles, if available.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty name="ShowRanges"
                         command="SetRangeVisibility"
                         number_of_elements="1"
                         default_values="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether to render the area for the min/max range, if available.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty name="ShowAverage"
                         command="SetAverageVisibility"
                         number_of_elements="1"
                         default_values="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether to render the line for the average value, if available.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty name="ShowMedian"
                         command="SetMedianVisibility"
                         number_of_elements="1"
                         default_values="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether to render the line for the median value, if available.
        </Documentation>
      </IntVectorProperty>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy base_proxygroup="representations"
                              base_proxyname="XYChartRepresentationBase"
                              class="vtkXYChartRepresentation"
                              name="XYBarChartRepresentation"
                              processes="client|dataserver|renderserver"
                              post_creation="SetChartTypeToBar">
      <Documentation>Representation used by XYBarChartView.</Documentation>
      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor"
                     panel_visibility="default" >
        <Property name="SeriesVisibility"
                  function="SeriesVisibility" />
        <Property name="SeriesColor"
                  function="SeriesColor" />
        <Property name="SeriesLabel"
                  function="SeriesLabel" />
        <Property name="SeriesPlotCorner"
                  function="SeriesPlotCorner"/>
      </PropertyGroup>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy class="vtkPVBagChartRepresentation"
                              name="XYBagChartRepresentation"
                              processes="client|dataserver|renderserver" >
      <Documentation>Representation used by XYBagChartView.</Documentation>

      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty clean_command="ResetCompositeDataSetIndices"
                   command="AddCompositeDataSetIndex"
                   default_values="2 3 4"
                   number_of_elements="3"
                   name="CompositeDataSetIndex"
                   number_of_elements_per_command="1"
                   panel_visibility="default"
                   repeat_command="1">
        <CompositeTreeDomain mode="leaves" name="tree">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
        <Documentation>
          This property lists the ids of the blocks to extract
          from the input multiblock dataset.
        </Documentation>
        <Hints>
          <NoDefault/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="AttributeType"
                         number_of_elements="1">
        <Documentation>Select the attribute data to render.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseIndexForXAxis"
                         default_values="0"
                         name="UseIndexForXAxis"
                         number_of_elements="1">
        <!-- We deliberately don't use ChartUseIndexForAxisDomain domain here
             since we don't want the property's default to be updated at runtime
             using the value for XArrayName.
        -->
        <BooleanDomain name="bool" />
        <Documentation>When set, the array index will be used for X axis,
        otherwise the array identified by XAxisSeriesName will be
        used.</Documentation>
      </IntVectorProperty>
      <StringVectorProperty command="SetXAxisSeriesName"
                            default_values="x"
                            name="XArrayName"
                            number_of_elements="1">
        <Documentation>Set the array to use on X axis. This is used only when
        UseIndexForXAxis is set to 0.</Documentation>
        <BagChartSeriesListDomain name="array_list"
                                  hide_partial_arrays="0"
                                  array_type="x">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </BagChartSeriesListDomain>
        <Hints>
          <!-- the widget for this property is only enabled, when
          UseIndexForXAxis is unchecked. -->
          <PropertyWidgetDecorator type="EnableWidgetDecorator">
            <Property name="UseIndexForXAxis" function="boolean_invert" />
          </PropertyWidgetDecorator>
        </Hints>
      </StringVectorProperty>
      <StringVectorProperty command="SetYAxisSeriesName"
                            default_values=""
                            name="YArrayName"
                            number_of_elements="1">
        <Documentation>Set the bag plot Y serie.</Documentation>
        <BagChartSeriesListDomain name="array_list"
                                  hide_partial_arrays="0"
                                  array_type="y">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </BagChartSeriesListDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetDensitySeriesName"
                            default_values=""
                            name="DensityArrayName"
                            number_of_elements="1">
        <Documentation>Set the bag plot density serie.</Documentation>
        <BagChartSeriesListDomain name="array_list"
                                  hide_partial_arrays="0"
                                  array_type="density">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </BagChartSeriesListDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetBagColor"
                            name="BagColor"
                            number_of_elements="3"
                            default_values="1.0 0.0 0.0"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series bag color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLineColor"
                            name="LineColor"
                            number_of_elements="3"
                            default_values="0.0 0.0 0.0"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series points color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetLineThickness"
                         name="LineThickness"
                         number_of_elements="1"
                         default_values="2"
                         panel_visibility="advanced">
        <Documentation>Set the series line thickness.</Documentation>
        <IntRangeDomain name="range" min="1" max="10" />
      </IntVectorProperty>
      <IntVectorProperty command="SetLineStyle"
                         name="LineStyle"
                         number_of_elements="1"
                         default_values="1"
                         panel_visibility="advanced">
        <Documentation>Set the series line style.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Solid" value="1" />
          <Entry text="Dash" value="2" />
          <Entry text="Dot" value="3" />
          <Entry text="Dash Dot" value="4" />
          <Entry text="Dash Dot Dot" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetPointColor"
                            name="PointColor"
                            number_of_elements="3"
                            default_values="0.0 0.0 0.0"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series points color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetPointSize"
                            default_values="1"
                            name="PointSize"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <Documentation>Set the size of the points.</Documentation>
        <IntRangeDomain name="range" min="1" max="10" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetPUserColor"
                                  name="PUserColor"
                                  number_of_elements="3"
                                  default_values="0.5 0.0 0.5"
                                  panel_widget="color_selector"
                                  panel_visibility="advanced">
        <Documentation>Set the series P99 color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetP50Color"
                            name="P50Color"
                            number_of_elements="3"
                            default_values="0.2 0.0 0.2"
                            panel_widget="color_selector"
                            panel_visibility="advanced">
        <Documentation>Set the series P50 color.</Documentation>
        <DoubleRangeDomain name="range" min="0 0 0" max="1 1 1" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetGridLineThickness"
                         name="GridLineThickness"
                         number_of_elements="1"
                         default_values="2"
                         panel_visibility="advanced">
        <Documentation>Set the series line thickness.</Documentation>
        <IntRangeDomain name="range" min="1" max="10" />
      </IntVectorProperty>
      <IntVectorProperty command="SetGridLineStyle"
                         name="GridLineStyle"
                         number_of_elements="1"
                         default_values="1"
                         panel_visibility="advanced">
        <Documentation>Set the series line style.</Documentation>
        <EnumerationDomain name="enum">
          <Entry text="None" value="0" />
          <Entry text="Solid" value="1" />
          <Entry text="Dash" value="2" />
          <Entry text="Dot" value="3" />
          <Entry text="Dash Dot" value="4" />
          <Entry text="Dash Dot Dot" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>
      <PropertyGroup label="Plot Axis"
                     panel_visibility="default" >
        <Property name="UseIndexForXAxis" />
        <Property name="XArrayName" />
        <Property name="YArrayName" />
        <Property name="DensityArrayName" />
      </PropertyGroup>
      <PropertyGroup label="Bag Styling"
                     panel_visibility="default" >
        <Property name="BagColor" />
        <Property name="LineThickness" />
        <Property name="LineStyle" />
        <Property name="LineColor" />
        <Property name="PointSize" />
        <Property name="PointColor" />
      </PropertyGroup>
      <PropertyGroup label="Grid Styling"
                     panel_visibility="default" >
        <Property name="PUserColor" />
        <Property name="P50Color" />
        <Property name="GridLineThickness" />
        <Property name="GridLineStyle" />
      </PropertyGroup>
      <!--
          Set the palette SelectionColor color to all the plots in the chart.
        -->
      <DoubleVectorProperty command="SetSelectionColor"
                            default_values="1.0 0.0 1.0"
                            name="Color"
                            number_of_elements="3"
                            panel_visibility="never">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SelectionColor" />
        </Hints>
      </DoubleVectorProperty>
      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <ChartRepresentationProxy class="vtkXYChartRepresentation"
                              name="XYFunctionalBagChartRepresentation"
                              processes="client|dataserver|renderserver"
                              post_creation="SetChartTypeToFunctionalBag">
      <Documentation>Representation used by XYFunctionalBagChartView.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain composite_data_supported="1"
                        name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetCompositeDataSetIndex"
                         default_values="1"
                         name="CompositeDataSetIndex"
                         number_of_elements="1">
        <Documentation>
          In case of Composite datasets, set the flat index of the
          dataset to pass. The flat index must point to a non-empty,
          non-composite dataset for anything to be passed through. If the input
          is not a composite dataset, then this index is ignored.
        </Documentation>
        <CompositeTreeDomain mode="leaves"
                             name="tree">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="AttributeType"
                         number_of_elements="1">
        <Documentation>Select the attribute data to render.</Documentation>
        <FieldDataDomain disable_update_domain_entries="1"
                         enable_field_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetUseIndexForXAxis"
                         default_values="1"
                         name="UseIndexForXAxis"
                         number_of_elements="1">
        <ChartUseIndexForAxisDomain name="bool">
          <RequiredProperties>
            <Property function="ArraySelection" name="XArrayName" />
          </RequiredProperties>
        </ChartUseIndexForAxisDomain>
        <Documentation>When set, the array index will be used for X axis,
        otherwise the array identified by XArrayName will be
        used.</Documentation>
      </IntVectorProperty>
      <StringVectorProperty command="SetXAxisSeriesName"
                            default_values=""
                            name="XArrayName"
                            number_of_elements="1">
        <Documentation>Set the array to use on X axis. This is used only when
        UseIndexForXAxis is set to 0.</Documentation>
        <ChartSeriesListDomain name="array_list"
                              hide_partial_arrays="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
          </RequiredProperties>
        </ChartSeriesListDomain>
        <Hints>
          <!-- the widget for this property is only enabled, when
          UseIndexForXAxis is unchecked. -->
          <PropertyWidgetDecorator type="EnableWidgetDecorator">
            <Property name="UseIndexForXAxis" function="boolean_invert" />
          </PropertyWidgetDecorator>
        </Hints>
      </StringVectorProperty>
      <PropertyGroup label="X Axis Parameters">
        <Property name="UseIndexForXAxis" />
        <Property name="XArrayName" />
      </PropertyGroup>
      <StringVectorProperty command="SetLabel"
                            clean_command="ClearLabels"
                            element_types="2 2"
                            name="SeriesLabel"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series labels.</Documentation>
        <FunctionalBagChartSeriesSelectionDomain name="array_list"
                                    default_mode="label"
                                    flatten_table="false">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </FunctionalBagChartSeriesSelectionDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetColor"
                            clean_command="ClearColors"
                            element_types="2 1 1 1"
                            name="SeriesColor"
                            number_of_elements_per_command="4"
                            repeat_command="1">
        <Documentation>Set the series line/bar color.</Documentation>
        <FunctionalBagChartSeriesSelectionDomain name="array_list"
                                    default_mode="color"
                                    flatten_table="false">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </FunctionalBagChartSeriesSelectionDomain>
      </StringVectorProperty>
      <IntVectorProperty command="SetChartType"
                         default_values="5"
                         name="ChartType"
                         number_of_elements="1"
                         panel_visibility="never">
        <EnumerationDomain name="enum">
          <Entry text="Line" value="0" />
          <Entry text="Bar" value="2" />
          <Entry text="Bag" value="4" />
          <Entry text="FunctionalBag" value="5" />
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetFlattenTable"
                         default_values="0"
                         name="FlattenTable"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Flatten the table, i.e. split any multicomponent
        columns into separate components.</Documentation>
      </IntVectorProperty>

      <StringVectorProperty command="SetSeriesVisibility"
                            clean_command="ClearSeriesVisibilities"
                            element_types="2 0"
                            name="SeriesVisibility"
                            number_of_elements_per_command="2"
                            repeat_command="1">
        <Documentation>Set the series visibility.</Documentation>
        <FunctionalBagChartSeriesSelectionDomain name="array_list"
                                    default_mode="visibility"
                                    flatten_table="false">
          <RequiredProperties>
            <Property function="Input" name="Input" />
            <Property function="FieldDataSelection" name="AttributeType" />
            <Property function="CompositeIndexSelection" name="CompositeDataSetIndex" />
          </RequiredProperties>
        </FunctionalBagChartSeriesSelectionDomain>
      </StringVectorProperty>

      <PropertyGroup label="Series Parameters"
                     panel_widget="SeriesEditor"
                     panel_visibility="default" >
        <Property name="SeriesVisibility"
                  function="SeriesVisibility" />
        <Property name="SeriesColor"
                  function="SeriesColor" />
        <Property name="SeriesLabel"
                  function="SeriesLabel" />
      </PropertyGroup>
      <!--
          Set the palette SelectionColor color to all the plots in the chart.
        -->
      <DoubleVectorProperty command="SetSelectionColor"
                            default_values="1.0 0.0 1.0"
                            name="Color"
                            number_of_elements="3"
                            panel_visibility="never">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SelectionColor" />
        </Hints>
      </DoubleVectorProperty>
      <SubProxy command="SetSelectionRepresentation">
        <!--
          SelectionRepresentation proxy is used to convey the selection to view.
          We keep this separate as subproxy so that when the selection is
          modified, we don't have to update the representation as well, we can
          only update the SelectionRepresentation.
        -->
        <RepresentationProxy name="SelectionRepresentation"
               class="vtkChartSelectionRepresentation"
               processes="client|dataserver|renderserver">
          <InputProperty command="SetInputConnection"
                         name="SelectionInput"/>
        </RepresentationProxy>
      </SubProxy>
    </ChartRepresentationProxy>

    <!-- =================================================================== -->
    <SpreadSheetRepresentationProxy class="vtkSpreadSheetRepresentation"
                                    name="SpreadSheetRepresentation"
                                    processes="client|dataserver|renderserver">
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataObject" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetGenerateCellConnectivity"
                         default_values="0"
                         name="GenerateCellConnectivity"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
        <Documentation>Generation of the cell connectivity.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetFieldAssociation"
                         default_values="0"
                         name="FieldAssociation"
                         number_of_elements="1">
        <Documentation>Select the attribute data to pass.</Documentation>
        <FieldDataDomain enable_field_data="1"
                         force_point_cell_data="1"
                         name="enum">
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </IntVectorProperty>

      <IntVectorProperty clean_command="RemoveAllCompositeDataSetIndices"
                         command="AddCompositeDataSetIndex"
                         name="CompositeDataSetIndex"
                         number_of_elements_per_command="1"
                         panel_visibility="default"
                         repeat_command="1">
        <CompositeTreeDomain mode="all" name="tree" default_mode="nonempty-leaf">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </CompositeTreeDomain>
        <Hints>
          <WidgetHeight number_of_rows="20" />
        </Hints>
        <Documentation>
          In case of composite datasets, set the list of flat indices to
          show in the spreadsheet view. If the input is not a composite dataset
          the value is ignored. If nothing is selected for composite dataset, it
          is same as selecting the root node i.e. all blocks in the dataset.
          Note, then multiple blocks are being shown in the spreadsheet view,
          partial arrays, if any are skipped.
        </Documentation>
      </IntVectorProperty>
      <InputProperty command="SetInputConnection"
                     is_internal="1"
                     name="InternalInput1"
                     port_index="1">
        <Documentation>Internal property. Please don't touch
        this.</Documentation>
      </InputProperty>
      <!-- end of SpreadSheetRepresentation -->
    </SpreadSheetRepresentationProxy>
    <!-- =================================================================== -->
    <RepresentationProxy class="vtkTextSourceRepresentation"
                         name="TextSourceRepresentation"
                         processes="client|dataserver|renderserver"
                         si_class="vtkSIProxy">
      <Documentation>Representation proxy used to show text.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkTable" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetInteractivity"
                         default_values="1"
                         name="Interactivity"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether user should be able to interactively place the text in the view.
        </Documentation>
      </IntVectorProperty>
      <SubProxy command="SetTextWidgetRepresentation">
        <Proxy name="TextWidgetRepresentation"
               proxygroup="representations"
               proxyname="TextWidgetRepresentation"></Proxy>
        <ExposedProperties>
          <!-- properties for Text -->
          <Property name="Orientation" panel_visibility="never"/>
          <PropertyGroup label="Font Properties" panel_widget="FontEditor">
            <Property name="Color" function="Color"/>
            <Property name="Opacity" function="Opacity"/>
            <Property name="FontFamily" function="Family"/>
            <Property name="Bold" function="Bold"/>
            <Property name="Italic" function="Italics" />
            <Property name="Shadow" function="Shadow"/>
            <Property name="FontSize" function="Size"/>
            <Property name="Justification" function="Justification"/>
          </PropertyGroup>
          <!-- properties for Text Position-->
          <PropertyGroup label="Text Position" panel_widget="TextLocationEditor">
            <Property name="WindowLocation" />
            <Property name="Position" />
            <Property name="Position2" panel_visibility="never"/>
            <Property name="PositionInfo" />
            <Property name="Position2Info" />
          </PropertyGroup>
          <Property name="TextScaleMode" panel_visibility="never"/>
          <Property name="Resizable" panel_visibility="never"/>
        </ExposedProperties>
      </SubProxy>
      <!-- End of TextSourceRepresentation -->
    </RepresentationProxy>
    <!-- =================================================================== -->
    <RepresentationProxy class="vtkProgressBarSourceRepresentation"
                         name="ProgressBarSourceRepresentation"
                         processes="client|dataserver|renderserver"
                         si_class="vtkSIProxy">
      <Documentation>Representation proxy used to show ProgressBar.</Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <Documentation>Data input for the representation.</Documentation>
        <DataTypeDomain composite_data_supported="0"
                        name="input_type">
          <DataType value="vtkTable" />
        </DataTypeDomain>
      </InputProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1"
                         panel_visibility="never">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetInteractivity"
                         default_values="1"
                         name="Interactivity"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>
          Set whether user should be able to interactively place the progressBar in the view.
        </Documentation>
      </IntVectorProperty>
      <SubProxy command="SetProgressBarWidgetRepresentation">
        <Proxy name="ProgressBarWidgetRepresentation"
               proxygroup="representations"
               proxyname="ProgressBarWidgetRepresentation"></Proxy>
        <ExposedProperties>
          <Property name="Position" />
          <Property name="Position2" panel_visibility="never"/>
          <Property name="PositionInfo" />
          <Property name="Position2Info" />
          <Property name="ProgressBarColor"/>
          <Property name="SecondaryProgressBarColor"/>
          <Property name="DrawBackground"/>
        </ExposedProperties>
      </SubProxy>
      <!-- End of ProgressBarSourceRepresentation -->
    </RepresentationProxy>
    <!-- =================================================================== -->
    <Proxy class="vtkPVFrustumActor"
           name="FrustumWidget"
           processes="client|dataserver|renderserver">
      <Documentation>Representation for a frustum</Documentation>
      <DoubleVectorProperty argument_is_array="1"
                            command="SetFrustum"
                            default_values="0 0 0 1 0 0 0 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 1 1"
                            name="Frustum"
                            number_of_elements="24">
        <Documentation>Specify the corners of the outline when in Oriented
        mode, the values are supplied as 8*3 double values.</Documentation>
      </DoubleVectorProperty>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetColor"
                            default_values="0.5 0.5 0.5"
                            name="Color"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="TextAnnotationColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLineWidth"
                            default_values="3.0"
                            name="LineWidth"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
      </DoubleVectorProperty>
      <!-- End of FrustumWidget -->
    </Proxy>

    <!-- ================================================================== -->
    <RepresentationProxy name="PythonRepresentation"
                        class="vtkPythonRepresentation"
                        processes="client|dataserver|renderserver">
      <InputProperty command="SetInputConnection" name="Input"/>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Visibility of the representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy name="GeometrySliceRepresentation"
                base_proxygroup="internal_representations"
                base_proxyname="SurfaceRepresentationBase"
                class="vtkGeometrySliceRepresentation"
                processes="client|renderserver|dataserver">
      <Documentation>
        GeometrySliceRepresentation add support to show multiple slices in the view.
        This is used by CompositeMultiSliceRepresentation.
      </Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkDataSet" />
        </DataTypeDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>

      <IntVectorProperty name="ShowOutline"
        command="SetShowOutline"
        number_of_elements="1"
        default_values="0">
        <Documentation>
          Check to show data outline when showing "Slices".
        </Documentation>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
    </RepresentationProxy>

    <!-- ================================================================ -->
    <PVRepresentationProxy name="CompositeMultiSliceRepresentation"
                           base_proxygroup="representations"
                           base_proxyname="GeometryRepresentation"
                           class="vtkPVCompositeRepresentation"
                           processes="client|renderserver|dataserver" >
       <RepresentationType  subproxy="GeometrySliceRepresentation"
         text="Slices" subtype="Surface"/>
       <SubProxy>
         <Proxy name="GeometrySliceRepresentation"
           proxygroup="representations"
           proxyname="GeometrySliceRepresentation">
         </Proxy>
         <ShareProperties subproxy="SurfaceRepresentation">
           <Exception name="Input" />
           <Exception name="Visibility" />
         </ShareProperties>
         <ExposedProperties>
           <PropertyGroup label="Slices Parameters">
             <Property name="ShowOutline"
                       panel_visibility="advanced"
                       panel_visibility_default_for_representation="slices" />
           </PropertyGroup>
         </ExposedProperties>
       </SubProxy>
    </PVRepresentationProxy>

    <!-- ================================================================ -->
    <PVRepresentationProxy name="CompositeOrthographicSliceRepresentation"
                           base_proxygroup="representations"
                           base_proxyname="CompositeMultiSliceRepresentation"
                           class="vtkPVCompositeOrthographicSliceRepresentation"
                           processes="client|renderserver|dataserver">
      <SubProxy command="SetSliceRepresentation0">
        <Proxy name="GeometrySliceRepresentationX"
               proxygroup="representations"
               proxyname="GeometrySliceRepresentation">
        </Proxy>
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
      </SubProxy>
      <SubProxy command="SetSliceRepresentation1">
        <Proxy name="GeometrySliceRepresentationY"
               proxygroup="representations"
               proxyname="GeometrySliceRepresentation">
        </Proxy>
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
      </SubProxy>
      <SubProxy command="SetSliceRepresentation2">
        <Proxy name="GeometrySliceRepresentationZ"
               proxygroup="representations"
               proxyname="GeometrySliceRepresentation">
        </Proxy>
        <ShareProperties subproxy="SurfaceRepresentation">
          <Exception name="Input" />
          <Exception name="Visibility" />
        </ShareProperties>
      </SubProxy>
    </PVRepresentationProxy>
  </ProxyGroup>

  <ProxyGroup name="views">
    <!-- ================================================================== -->
    <ComparativeViewProxy base_proxygroup="internal_views"
                          base_proxyname="ComparativeViewBase"
                          class="vtkPVComparativeView"
                          name="ComparativeRenderView"
                          label="Render View (Comparative)">
      <Documentation>The is comparative view comprising of individual
      "RenderView" proxies for each panel in the comparative view
      grid.</Documentation>
      <SubProxy>
        <Proxy name="RootView"
               proxygroup="views"
               proxyname="RenderView"></Proxy>
        <ExposedProperties>
          <Property name="HiddenRepresentations" />
          <Property name="HiddenProps" />
          <Property name="LODThreshold" />
          <Property name="LODResolution" />

          <Property name="CenterAxesVisibility" />
          <PropertyGroup label="Orientation Axes">
            <Property name="OrientationAxesVisibility" />
            <Property name="OrientationAxesInteractivity"
                      panel_visibility="advanced"/>
            <Property name="OrientationAxesLabelColor"
                      panel_visibility="advanced"/>
            <Property name="OrientationAxesOutlineColor"
                      panel_visibility="advanced"/>
          </PropertyGroup>
          <PropertyGroup label="Lights" panel_widget="LightsEditor"
                         panel_visibility="advanced">
            <!-- Light Kit -->
            <Property name="UseLight"/>
            <!-- Key Light -->
            <Property name="KeyLightWarmth"/>
            <Property name="KeyLightIntensity"/>
            <Property name="KeyLightElevation"/>
            <Property name="KeyLightAzimuth"/>
            <!-- Fill Light -->
            <Property name="FillLightWarmth"/>
            <Property name="FillLightK:F Ratio"/>
            <Property name="FillLightElevation"/>
            <Property name="FillLightAzimuth"/>
            <!-- Back Light -->
            <Property name="BackLightWarmth"/>
            <Property name="BackLightK:B Ratio"/>
            <Property name="BackLightElevation"/>
            <Property name="BackLightAzimuth"/>
            <!-- Head Light -->
            <Property name="HeadLightWarmth"/>
            <Property name="HeadLightK:H Ratio"/>
            <Property name="MaintainLuminance"/>

            <!-- Light -->
            <Property name="LightSwitch"/>
            <Property name="LightAmbientColor"/>
            <Property name="LightSpecularColor"/>
            <Property name="LightDiffuseColor"/>
            <Property name="LightIntensity"/>
            <Property name="LightType"/>
          </PropertyGroup>

          <!-- ActiveCamera -->
          <Property name="CameraPositionInfo" panel_visibility="never"/>
          <Property name="CameraPosition" panel_visibility="never"/>
          <Property name="CameraFocalPointInfo" panel_visibility="never"/>
          <Property name="CameraFocalPoint" panel_visibility="never"/>
          <Property name="CameraViewUpInfo" panel_visibility="never"/>
          <Property name="CameraViewUp" panel_visibility="never"/>
          <Property name="CameraViewAngle" panel_visibility="never"/>
          <Property name="CameraParallelScale" panel_visibility="never"/>
          <Property name="CameraParallelScaleInfo" panel_visibility="never"/>
          <Property name="CameraParallelProjection"
                    panel_visibility="advanced"/>
          <Property name="EyeAngle" panel_visibility="never"/>

          <PropertyGroup label="Background" panel_widget="BackgroundEditor">
            <Property name="Background"/>
            <Property name="Background2"/>
            <Property name="UseGradientBackground"/>
            <Property name="UseTexturedBackground"/>
            <Property name="BackgroundTexture"/>
          </PropertyGroup>

          <!-- Interactor -->
          <Property name="InteractionMode" panel_visibility="never"/>
          <Property name="Camera3DManipulators" panel_visibility="never"/>
          <Property name="Camera2DManipulators" panel_visibility="never"/>
          <Property name="CenterOfRotation" panel_visibility="never"/>
          <Property name="RotationFactor" panel_visibility="never"/>
          <Property name="NonInteractiveRenderDelay" panel_visibility="never"/>
          <Property name="EnableRenderOnInteraction" panel_visibility="never"/>
          <!-- Renderer -->
          <PropertyGroup label="Stereo">
            <Property name="StereoRender"/>
            <Property name="StereoType"/>
            <Property name="ServerStereoType"/>
          </PropertyGroup>
        </ExposedProperties>
        <!-- End of "RootView" subproxy -->
      </SubProxy>
      <!-- End of ComparativeRenderView -->
    </ComparativeViewProxy>
    <!-- ================================================================== -->
    <ComparativeViewProxy base_proxygroup="internal_views"
                          base_proxyname="ComparativeViewBase"
                          class="vtkPVComparativeView"
                          name="ComparativeXYChartView"
                          label="Line Chart View (Comparative)">
      <Documentation>The is comparative view comprising of individual
      "XYChartView" proxies for each panel in the comparative view
      grid.</Documentation>
      <SubProxy>
        <Proxy name="RootView"
               proxygroup="views"
               proxyname="XYChartView"></Proxy>
        <ExposedProperties>
          <PropertyGroup label="Title">
            <Property name="ChartTitle"/>
            <Property name="ChartTitleAlignment"/>
          </PropertyGroup>
          <PropertyGroup label="Chart Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="ChartTitleColor" function="Color"/>
            <Property name="ChartTitleFontFamily" function="Family"/>
            <Property name="ChartTitleBold" function="Bold" />
            <Property name="ChartTitleItalic" function="Italics"/>
            <Property name="ChartTitleFontSize" function="Size" />
          </PropertyGroup>
          <PropertyGroup label="Legend">
            <Property name="ShowLegend"/>
            <Property name="LegendLocation"/>
            <Property name="LegendPosition"/>
          </PropertyGroup>
          <PropertyGroup label="Legend Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LegendFontFamily" function="Family"/>
            <Property name="LegendBold" function="Bold"/>
            <Property name="LegendItalic" function="Italics"/>
            <Property name="LegendFontSize" function="Size"/>
          </PropertyGroup>
          <PropertyGroup label="Tooltip"
                         panel_visibility="advanced">
            <Property name="TooltipNotation"/>
            <Property name="TooltipPrecision"/>
          </PropertyGroup>

          <!-- left axis -->
          <PropertyGroup label="Left Axis">
            <Property name="LeftAxisTitle"/>
            <Property name="ShowLeftAxisGrid"/>
            <Property name="LeftAxisGridColor"/>
            <Property name="LeftAxisColor"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LeftAxisTitleColor" function="Color"/>
            <Property name="LeftAxisTitleFontFamily" function="Family"/>
            <Property name="LeftAxisTitleBold" function="Bold" />
            <Property name="LeftAxisTitleItalic" function="Italics"/>
            <Property name="LeftAxisTitleFontSize" function="Size" />
          </PropertyGroup>

          <PropertyGroup label="Left Axis Range">
            <Property name="LeftAxisLogScale"/>
            <Property name="LeftAxisUseCustomRange"/>
            <Property name="LeftAxisRangeMinimum"/>
            <Property name="LeftAxisRangeMaximum"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Labels">
            <Property name="ShowLeftAxisLabels"/>
            <Property name="LeftAxisLabelNotation"/>
            <Property name="LeftAxisLabelPrecision"/>
            <Property name="LeftAxisUseCustomLabels"/>
            <Property name="LeftAxisLabels"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LeftAxisLabelColor" function="Color"/>
            <Property name="LeftAxisLabelFontFamily" function="Family"/>
            <Property name="LeftAxisLabelBold" function="Bold" />
            <Property name="LeftAxisLabelItalic" function="Italics"/>
            <Property name="LeftAxisLabelFontSize" function="Size" />
          </PropertyGroup>
          <!-- bottom axis -->
          <PropertyGroup label="Bottom Axis">
            <Property name="BottomAxisTitle"/>
            <Property name="ShowBottomAxisGrid"/>
            <Property name="BottomAxisGridColor"/>
            <Property name="BottomAxisColor"/>
          </PropertyGroup>
          <PropertyGroup label="Bottom Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="BottomAxisTitleColor" function="Color"/>
            <Property name="BottomAxisTitleFontFamily" function="Family"/>
            <Property name="BottomAxisTitleBold" function="Bold" />
            <Property name="BottomAxisTitleItalic" function="Italics"/>
            <Property name="BottomAxisTitleFontSize" function="Size" />
          </PropertyGroup>
          <PropertyGroup label="Bottom Axis Range">
            <Property name="BottomAxisLogScale"/>
            <Property name="BottomAxisUseCustomRange"/>
            <Property name="BottomAxisRangeMinimum"/>
            <Property name="BottomAxisRangeMaximum"/>
          </PropertyGroup>
          <PropertyGroup label="Bottom Axis Labels">
            <Property name="ShowBottomAxisLabels"/>
            <Property name="BottomAxisLabelNotation"/>
            <Property name="BottomAxisLabelPrecision"/>
            <Property name="BottomAxisUseCustomLabels"/>
            <Property name="BottomAxisLabels"/>
          </PropertyGroup>
          <PropertyGroup label="Bottom Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="BottomAxisLabelColor" function="Color"/>
            <Property name="BottomAxisLabelFontFamily" function="Family"/>
            <Property name="BottomAxisLabelBold" function="Bold" />
            <Property name="BottomAxisLabelItalic" function="Italics"/>
            <Property name="BottomAxisLabelFontSize" function="Size" />
          </PropertyGroup>
          <!-- right axis -->
          <PropertyGroup label="Right Axis">
            <Property name="RightAxisTitle"/>
            <Property name="ShowRightAxisGrid"/>
            <Property name="RightAxisGridColor"/>
            <Property name="RightAxisColor"/>
          </PropertyGroup>
          <PropertyGroup label="Right Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="RightAxisTitleColor" function="Color"/>
            <Property name="RightAxisTitleFontFamily" function="Family"/>
            <Property name="RightAxisTitleBold" function="Bold" />
            <Property name="RightAxisTitleItalic" function="Italics"/>
            <Property name="RightAxisTitleFontSize" function="Size" />
          </PropertyGroup>
          <PropertyGroup label="Right Axis Range">
            <Property name="RightAxisLogScale"/>
            <Property name="RightAxisUseCustomRange"/>
            <Property name="RightAxisRangeMinimum"/>
            <Property name="RightAxisRangeMaximum"/>
          </PropertyGroup>
          <PropertyGroup label="Right Axis Labels">
            <Property name="ShowRightAxisLabels"/>
            <Property name="RightAxisLabelNotation"/>
            <Property name="RightAxisLabelPrecision"/>
            <Property name="RightAxisUseCustomLabels"/>
            <Property name="RightAxisLabels"/>
          </PropertyGroup>
          <PropertyGroup label="Right Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="RightAxisLabelColor" function="Color"/>
            <Property name="RightAxisLabelFontFamily" function="Family"/>
            <Property name="RightAxisLabelBold" function="Bold" />
            <Property name="RightAxisLabelItalic" function="Italics"/>
            <Property name="RightAxisLabelFontSize" function="Size" />
          </PropertyGroup>
          <!-- top axis -->
          <PropertyGroup label="Top Axis">
            <Property name="TopAxisTitle"/>
            <Property name="ShowTopAxisGrid"/>
            <Property name="TopAxisGridColor"/>
            <Property name="TopAxisColor"/>
          </PropertyGroup>
          <PropertyGroup label="Top Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="TopAxisTitleColor" function="Color"/>
            <Property name="TopAxisTitleFontFamily" function="Family"/>
            <Property name="TopAxisTitleBold" function="Bold" />
            <Property name="TopAxisTitleItalic" function="Italics"/>
            <Property name="TopAxisTitleFontSize" function="Size" />
          </PropertyGroup>
          <PropertyGroup label="Top Axis Range">
            <Property name="TopAxisLogScale"/>
            <Property name="TopAxisUseCustomRange"/>
            <Property name="TopAxisRangeMinimum"/>
            <Property name="TopAxisRangeMaximum"/>
          </PropertyGroup>
          <PropertyGroup label="Top Axis Labels">
            <Property name="ShowTopAxisLabels"/>
            <Property name="TopAxisLabelNotation"/>
            <Property name="TopAxisLabelPrecision"/>
            <Property name="TopAxisUseCustomLabels"/>
            <Property name="TopAxisLabels"/>
          </PropertyGroup>
          <PropertyGroup label="Top Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="TopAxisLabelColor" function="Color"/>
            <Property name="TopAxisLabelFontFamily" function="Family"/>
            <Property name="TopAxisLabelBold" function="Bold" />
            <Property name="TopAxisLabelItalic" function="Italics"/>
            <Property name="TopAxisLabelFontSize" function="Size" />
          </PropertyGroup>
        </ExposedProperties>
        <!-- End of "RootView" subproxy -->
      </SubProxy>
      <!-- End of ComparativeXYChartView -->
    </ComparativeViewProxy>
    <!-- ================================================================== -->
    <ComparativeViewProxy base_proxygroup="internal_views"
                          base_proxyname="ComparativeViewBase"
                          class="vtkPVComparativeView"
                          name="ComparativeXYBarChartView"
                          label="Bar Chart View (Comparative)">
      <Documentation>The is comparative view comprising of individual
      "XYBarChartView" proxies for each panel in the comparative view
      grid.</Documentation>

      <SubProxy>
        <Proxy name="RootView"
               proxygroup="views"
               proxyname="XYBarChartView"></Proxy>
        <ExposedProperties>
          <PropertyGroup label="Title">
            <Property name="ChartTitle"/>
            <Property name="ChartTitleAlignment"/>
          </PropertyGroup>
          <PropertyGroup label="Chart Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="ChartTitleColor" function="Color"/>
            <Property name="ChartTitleFontFamily" function="Family"/>
            <Property name="ChartTitleBold" function="Bold" />
            <Property name="ChartTitleItalic" function="Italics"/>
            <Property name="ChartTitleFontSize" function="Size" />
          </PropertyGroup>
          <PropertyGroup label="Legend">
            <Property name="ShowLegend"/>
            <Property name="LegendLocation"/>
            <Property name="LegendPosition"/>
          </PropertyGroup>
          <PropertyGroup label="Legend Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LegendFontFamily" function="Family"/>
              <Property name="LegendBold" function="Bold"/>
              <Property name="LegendItalic" function="Italics"/>
              <Property name="LegendFontSize" function="Size"/>
          </PropertyGroup>
          <PropertyGroup label="Tooltip"
                         panel_visibility="advanced">
            <Property name="TooltipNotation"/>
            <Property name="TooltipPrecision"/>
          </PropertyGroup>

          <!-- left axis -->
          <PropertyGroup label="Left Axis">
            <Property name="LeftAxisTitle"/>
            <Property name="ShowLeftAxisGrid"/>
            <Property name="LeftAxisGridColor"/>
            <Property name="LeftAxisColor"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LeftAxisTitleColor" function="Color"/>
            <Property name="LeftAxisTitleFontFamily" function="Family"/>
            <Property name="LeftAxisTitleBold" function="Bold" />
            <Property name="LeftAxisTitleItalic" function="Italics"/>
            <Property name="LeftAxisTitleFontSize" function="Size" />
          </PropertyGroup>

          <PropertyGroup label="Left Axis Range">
            <Property name="LeftAxisLogScale"/>
            <Property name="LeftAxisUseCustomRange"/>
            <Property name="LeftAxisRangeMinimum"/>
            <Property name="LeftAxisRangeMaximum"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Labels">
            <Property name="ShowLeftAxisLabels"/>
            <Property name="LeftAxisLabelNotation"/>
            <Property name="LeftAxisLabelPrecision"/>
            <Property name="LeftAxisUseCustomLabels"/>
            <Property name="LeftAxisLabels"/>
          </PropertyGroup>

          <PropertyGroup label="Left Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="LeftAxisLabelColor" function="Color"/>
            <Property name="LeftAxisLabelFontFamily" function="Family"/>
            <Property name="LeftAxisLabelBold" function="Bold" />
            <Property name="LeftAxisLabelItalic" function="Italics"/>
            <Property name="LeftAxisLabelFontSize" function="Size" />
          </PropertyGroup>
          <!-- bottom axis -->
          <PropertyGroup label="Bottom Axis">
            <Property name="BottomAxisTitle"/>
            <Property name="ShowBottomAxisGrid"/>
            <Property name="BottomAxisGridColor"/>
            <Property name="BottomAxisColor"/>
          </PropertyGroup>

          <PropertyGroup label="Bottom Axis Title Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="BottomAxisTitleColor" function="Color"/>
            <Property name="BottomAxisTitleFontFamily" function="Family"/>
            <Property name="BottomAxisTitleBold" function="Bold" />
            <Property name="BottomAxisTitleItalic" function="Italics"/>
            <Property name="BottomAxisTitleFontSize" function="Size" />
          </PropertyGroup>

          <PropertyGroup label="Bottom Axis Range">
            <Property name="BottomAxisLogScale"/>
            <Property name="BottomAxisUseCustomRange"/>
            <Property name="BottomAxisRangeMinimum"/>
            <Property name="BottomAxisRangeMaximum"/>
          </PropertyGroup>

          <PropertyGroup label="Bottom Axis Labels">
            <Property name="ShowBottomAxisLabels"/>
            <Property name="BottomAxisLabelNotation"/>
            <Property name="BottomAxisLabelPrecision"/>
            <Property name="BottomAxisUseCustomLabels"/>
            <Property name="BottomAxisLabels"/>
          </PropertyGroup>

          <PropertyGroup label="Bottom Axis Label Properties"
                         panel_widget="FontEditor"
                         panel_visibility="advanced">
            <Property name="BottomAxisLabelColor" function="Color"/>
            <Property name="BottomAxisLabelFontFamily" function="Family"/>
            <Property name="BottomAxisLabelBold" function="Bold" />
            <Property name="BottomAxisLabelItalic" function="Italics"/>
            <Property name="BottomAxisLabelFontSize" function="Size" />
          </PropertyGroup>
        </ExposedProperties>
      </SubProxy>

      <!-- End of ComparativeXYBarChartView -->
    </ComparativeViewProxy>
     <!-- ================================================================== -->
     <MultiSliceViewProxy name="MultiSlice" class="vtkPVMultiSliceView"
         processes="client|renderserver|dataserver"
         base_proxygroup="views" base_proxyname="RenderView"
         label="Slice View">
        <DoubleVectorProperty name="XSlicesValues"
          set_number_command="SetNumberOfXSlices"
          command="SetXSlices"
          argument_is_array="1"
          panel_visibility="never">
        </DoubleVectorProperty>
        <DoubleVectorProperty name="YSlicesValues"
          set_number_command="SetNumberOfYSlices"
          command="SetYSlices"
          argument_is_array="1"
          panel_visibility="never">
        </DoubleVectorProperty>
        <DoubleVectorProperty name="ZSlicesValues"
          set_number_command="SetNumberOfZSlices"
          command="SetZSlices"
          argument_is_array="1"
          panel_visibility="never">
        </DoubleVectorProperty>
        <StringVectorProperty name="XTitle"
          number_of_elements="1"
          default_values="X"
          panel_visibility="never" />
        <StringVectorProperty name="YTitle"
          number_of_elements="1"
          default_values="Y"
          panel_visibility="never" />
        <StringVectorProperty name="ZTitle"
          number_of_elements="1"
          default_values="Z"
          panel_visibility="never" />
     </MultiSliceViewProxy>

     <!-- ================================================================== -->
     <PythonViewProxy name="PythonView" class="vtkPythonView"
                      label="Python View"
                      processes="client|dataserver|renderserver"
                      base_proxygroup="internal_views"
                      base_proxyname="ViewBase"
                      representation_name="PythonRepresentation">
       <StringVectorProperty command="SetScript"
                             name="Script"
                             number_of_elements="1">
         <Hints>
           <Widget type="multi_line" syntax="python"/>
         </Hints>
         <Documentation>This property contains the text of a Python program used
         to generate a plot. Use the TAB key to end editing and generate the
         plot.</Documentation>
       </StringVectorProperty>
       <IntVectorProperty command="GetNumberOfVisibleDataObjects"
                          name="NumberOfVisibleDataObjects"
                          number_of_elements="1"
                          default_values="1"
                          information_only="1"
                          panel_visibility="never">
   <SimpleIntInformationHelper/>
       </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>

     </PythonViewProxy>

     <!-- ================================================================== -->
  </ProxyGroup>

  <!-- ==================================================================== -->
  <ProxyGroup name="internal_representations">
    <!-- group for representations not meant to be used directly, but that
    should be created in a vtkPVCompositeRepresentation. Helps us keep the
    properties manageable, since we don't need to expose too many properties
    from these. Only public API properties need to be defined for these proxies
    (along with "Input" and "Representation", if applicable).
    -->

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkAMROutlineRepresentation"
                         name="AMROutlineRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation for showing an outline for AMR
      dataset that is streaming capable.</Documentation>

      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkOverlappingAMR" />
        </DataTypeDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>

      <!-- end of AMROutlineRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkAMRStreamingVolumeRepresentation"
                         name="AMRVolumeRepresentation"
                         processes="client|renderserver|dataserver">
      <Documentation>
        Representation for rendering Overlapping AMR as volume.
      </Documentation>
      <InputProperty command="SetInputConnection"
                     name="Input">
        <DataTypeDomain name="input_type">
          <DataType value="vtkOverlappingAMR" />
        </DataTypeDomain>
        <InputArrayDomain attribute_type="any"
                          name="input_array_any">
        </InputArrayDomain>
        <Documentation>Set the input to the representation.</Documentation>
      </InputProperty>
      <StringVectorProperty command="SetInputArrayToProcess"
                            element_types="0 0 0 0 2"
                            name="ColorArrayName"
                            no_custom_default="1"
                            number_of_elements="5">
        <Documentation>
          Set the array to color with. One must specify the field association and
          the array name of the array. If the array is missing, scalar coloring will
          automatically be disabled.
        </Documentation>
        <RepresentedArrayListDomain name="array_list"
                         input_domain_name="input_array_any">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </RepresentedArrayListDomain>
        <FieldDataDomain name="field_list"
                         disable_update_domain_entries="1"
                         force_point_cell_data="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetPosition"
                            default_values="0 0 0"
                            name="Position"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScale"
                            default_values="1 1 1"
                            name="Scale"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientation"
                            default_values="0 0 0"
                            name="Orientation"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrigin"
                            default_values="0 0 0"
                            name="Origin"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetPickable"
                         default_values="1"
                         name="Pickable"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty command="SetInterpolationType"
                         default_values="2"
                         name="InterpolationType"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Nearest"
                 value="0" />
          <Entry text="Linear"
                 value="1" />
          <Entry text="Cubic"
                 value="2" />
        </EnumerationDomain>
      </IntVectorProperty>
      <ProxyProperty command="SetColor"
                     name="LookupTable">
        <ProxyGroupDomain name="groups">
          <Group name="transfer_functions" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <DoubleVectorProperty command="SetAmbient"
                            default_values="0.0"
                            name="Ambient"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuse"
                            default_values="1.0"
                            name="Diffuse"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecular"
                            default_values="0.0"
                            name="Specular"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularPower"
                            default_values="100.0"
                            name="SpecularPower"
                            number_of_elements="1">
        <DoubleRangeDomain max="100"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetShade"
                         default_values="1"
                         name="Shade"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Enable/Disable shading.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetNumberOfSamples"
                         default_values="64 128 64"
                         name="NumberOfSamples"
                         number_of_elements="3">
        <Documentation>
          Set the number of samples used to create an uniform grid
          from the AMR.
        </Documentation>
        <IntRangeDomain name="range" />
      </IntVectorProperty>
      <ProxyProperty command="SetScalarOpacity"
                     name="ScalarOpacityFunction">
        <ProxyGroupDomain name="groups">
          <Group name="piecewise_functions" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <IntVectorProperty command="SetRequestedRenderMode"
                         default_values="0"
                         name="VolumeRenderingMode"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Smart"
                 value="0" />
          <Entry text="Ray Cast Only"
                 value="2" />
          <Entry text="GPU Based"
                 value="4" />
        </EnumerationDomain>
      </IntVectorProperty>

      <IntVectorProperty command="SetResamplingMode"
                         default_values="0"
                         name="ResamplingMode"
                         number_of_elements="1"
                         panel_visibility="default" >
        <EnumerationDomain name="enum">
          <Entry text="Over Data Bounds" value="0" />
          <Entry text="Using View Frustum" value="1" />
        </EnumerationDomain>
      </IntVectorProperty>

      <IntVectorProperty command="SetStreamingRequestSize"
                         default_values="10"
                         name="StreamingRequestSize"
                         number_of_elements="1"
                         panel_visibility="default">
        <IntRangeDomain name="range" min="1" max="10000" />
        <Documentation>
          Set the number of blocks to request at a given time on a single
          process when streaming.
        </Documentation>
      </IntVectorProperty>

      <DoubleVectorProperty command="SetScalarOpacityUnitDistance"
                            default_values="1"
                            name="ScalarOpacityUnitDistance"
                            number_of_elements="1">
        <BoundsDomain mode="approximate_cell_length"
                      name="bounds" >
          <RequiredProperties>
            <Property function="Input"
                      name="Input" />
          </RequiredProperties>
        </BoundsDomain>
      </DoubleVectorProperty>
      <!-- end of AMRVolumeRepresentation -->
    </RepresentationProxy>

    <!-- ================================================================== -->
    <RepresentationProxy class="vtkGeometryRepresentation"
                         name="SurfaceRepresentationBase"
                         processes="client|renderserver|dataserver">
      <Documentation>Representation to show any dataset in a 3D render
      view.</Documentation>
      <IntVectorProperty command="SetVisibility"
                         default_values="1"
                         name="Visibility"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Get/Set the visibility of the
        representation.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetForceUseCache"
                         default_values="0"
                         is_internal="1"
                         name="ForceUseCache"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </IntVectorProperty>
      <DoubleVectorProperty command="SetForcedCacheKey"
                            default_values="none"
                            is_internal="1"
                            name="ForcedCacheKey"
                            number_of_elements="1">
        <DoubleRangeDomain name="range" />
        <Documentation>Typically UseCache and CacheKey are updated by the View
        and representations cache based on what the view tells it. However in
        some cases we may want to force a representation to cache irrespective
        of the view (e.g. comparative views). In which case these ivars can up
        set. If ForcedCacheKey is true, it overrides UseCache and CacheKey.
        Instead, ForcedCacheKey is used.</Documentation>
      </DoubleVectorProperty>
      <StringVectorProperty command="SetInputArrayToProcess"
                            element_types="0 0 0 0 2"
                            name="ColorArrayName"
                            no_custom_default="1"
                            number_of_elements="5">
        <Documentation>
          Set the array to color with. One must specify the field association and
          the array name of the array. If the array is missing, scalar coloring will
          automatically be disabled.
        </Documentation>
        <RepresentedArrayListDomain name="array_list">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </RepresentedArrayListDomain>
        <FieldDataDomain name="field_list"
                         disable_update_domain_entries="1">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </FieldDataDomain>
      </StringVectorProperty>
      <StringVectorProperty command="SetRepresentation"
                            default_values="Surface"
                            name="Representation"
                            panel_widget="display_representation_selector"
                            number_of_elements="1">
        <StringListDomain name="string_list">
          <String value="Points" />
          <String value="Wireframe" />
          <String value="Surface" />
          <String value="Surface With Edges" />
        </StringListDomain>
      </StringVectorProperty>
      <DoubleVectorProperty command="SetAmbient"
                            default_values="0.0"
                            name="Ambient"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuse"
                            default_values="1.0"
                            name="Diffuse"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecular"
                            default_values="0.0"
                            name="Specular"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetSuppressLOD"
                         default_values="0"
                         name="SuppressLOD"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetAmbientColor"
                            default_values="1.0 1.0 1.0"
                            name="AmbientColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="ForegroundColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetDiffuseColor"
                            default_values="1.0 1.0 1.0"
                            name="DiffuseColor"
                            number_of_elements="3"
                            panel_widget="color_selector_with_palette">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="SurfaceColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularColor"
                            default_values="1.0 1.0 1.0"
                            name="SpecularColor"
                            number_of_elements="3">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetLineWidth"
                            default_values="1.0"
                            name="LineWidth"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetPointSize"
                            default_values="2.0"
                            name="PointSize"
                            number_of_elements="1">
        <DoubleRangeDomain min="0"
                           name="range" />
      </DoubleVectorProperty>
      <IntVectorProperty command="SetInterpolation"
                         default_values="1"
                         name="Interpolation"
                         number_of_elements="1">
        <EnumerationDomain name="enum">
          <Entry text="Flat"
                 value="0" />
          <Entry text="Gouraud"
                 value="1" />
          <!--<Entry value="2" text="Phong" />-->
        </EnumerationDomain>
      </IntVectorProperty>
      <IntVectorProperty command="SetTriangulate"
                         default_values="0"
                         name="Triangulate"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Triangulate the geometry internally to avoid rendering
        issues of non-convex polygons. This feature has a processing and memory
        cost, it should be enabled only when needed.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetNonlinearSubdivisionLevel"
                         default_values="1"
                         name="NonlinearSubdivisionLevel"
                         number_of_elements="1">
        <IntRangeDomain max="4"
                        min="0"
                        name="range" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetOpacity"
                            default_values="1.0"
                            name="Opacity"
                            number_of_elements="1">
        <DoubleRangeDomain max="1"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetSpecularPower"
                            default_values="100.0"
                            name="SpecularPower"
                            number_of_elements="1">
        <DoubleRangeDomain max="100"
                           min="0"
                           name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetEdgeColor"
                            default_values="0 0 0.5"
                            name="EdgeColor"
                            number_of_elements="3">
        <Documentation>Set the edge color. This color is used to draw the edge
        for the polygonal data when EdgeVisibility is on.</Documentation>
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <GlobalPropertyLink type="ColorPalette" property="EdgeColor" />
        </Hints>
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetPosition"
                            default_values="0 0 0"
                            label="Translation"
                            name="Position"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetScale"
                            default_values="1 1 1"
                            name="Scale"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrientation"
                            default_values="0 0 0"
                            name="Orientation"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty command="SetOrigin"
                            default_values="0 0 0"
                            name="Origin"
                            number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>

      <DoubleVectorProperty argument_is_array="1"
                            command="SetUserTransform"
                            default_values="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"
                            name="UserTransform"
                            number_of_elements="16">
        <Documentation>
          In addition to the instance variables such as position and
          orientation, you can add an additional transformation for your own
          use. This transformation is concatenated with the actor's internal
          transformation, which you implicitly create through the use of
          Position, Origin, Orientation. The value is 4x4 matrix for the linear
          tranform to use.
        </Documentation>
      </DoubleVectorProperty>

      <IntVectorProperty command="SetPickable"
                         default_values="1"
                         name="Pickable"
                         number_of_elements="1">
        <Hints>
          <NoDefault />
        </Hints>
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <ProxyProperty command="SetTexture"
                     name="Texture"
                     panel_widget="texture_selector"
                     null_on_empty="1">
        <ProxyGroupDomain name="groups">
          <Group name="textures" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <ProxyProperty command="SetLookupTable"
                     name="LookupTable">
        <Documentation>Set the lookup-table to use to map data array to colors.
        Lookuptable is only used with MapScalars to ON.</Documentation>
        <ProxyGroupDomain name="groups">
          <Group name="lookup_tables" />
        </ProxyGroupDomain>
      </ProxyProperty>
      <IntVectorProperty command="SetMapScalars"
                         default_values="1"
                         name="MapScalars"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>When set to True, LookupTable will always be
        used for scalar mapping. Otherwise, when up to 4 component
        scalars are present, the components are clamped to a valid
        color interval (0-255 for an integral type and 0.0-1.0 for a
        floating point type) and then directly used as
        color.</Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetInterpolateScalarsBeforeMapping"
                         default_values="1"
                         name="InterpolateScalarsBeforeMapping"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>When set to true (default), texture coordinates
        are sent to and interpolated by the graphics card. This is
        equivalent with interpolating scalars and then mapping them to
        obtain colors between points. Otherwise, colors are sent to
        and interpolated by the graphics card.
        </Documentation>
      </IntVectorProperty>
      <IntVectorProperty command="SetStatic"
                         default_values="0"
                         name="StaticMode"
                         number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty name="BlockVisibility"
                         command="SetBlockVisibility"
                         clean_command="RemoveBlockVisibilities"
                         number_of_elements_per_command="2"
                         repeatable="1">
        <Documentation>
          Set the visibility for a block. Value is (property, visibility).
        </Documentation>
      </IntVectorProperty>
      <DoubleMapProperty name="BlockColor"
                         command="SetBlockColor"
                         clean_command="RemoveBlockColors"
                         number_of_components="3"
                         repeatable="1">
        <Documentation>
          Set the color for a block. Value is (index, r, g, b).
        </Documentation>
      </DoubleMapProperty>
      <DoubleMapProperty name="BlockOpacity"
                         command="SetBlockOpacity"
                         clean_command="RemoveBlockOpacities"
                         number_of_components="1"
                         repeatable="1">
        <Documentation>
          Set the opacity for a block. Value is (index, alpha).
        </Documentation>
      </DoubleMapProperty>
      <IntVectorProperty command="SetBlockColorsDistinctValues"
                         default_values="7"
                         name="BlockColorsDistinctValues"
                         number_of_elements="1"
                         panel_visibility="never">
        <Documentation>
          Determines the number of distinct values in
          vtkBlockColors. This array is added to each block if
          the dataset is a composite dataset. The array has one value
          set to (blockIndex % BlockColorsDistinctValues)
        </Documentation>
        <IntRangeDomain min="2" name="range" />
        <Hints>
          <PropertyLink group="settings"
                        proxy="GeneralSettings"
                        property="BlockColorsDistinctValues"/>
        </Hints>
      </IntVectorProperty>
      <IntVectorProperty command="SetEnableScaling"
                         default_values="0"
                         name="OSPRayUseScaleArray"
                         label="OSPRay Use Scale Array"
                         number_of_elements="1">
        <Documentation>
          Allows OSPRay implicit points and lines to be sized by an array.
        </Documentation>
        <BooleanDomain name="bool" />
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </IntVectorProperty>
      <StringVectorProperty command="SetScalingArrayName"
                            default_values=""
                            name="OSPRayScaleArray"
                            label="OSPRay Scale Array"
                            number_of_elements="1"
                            panel_visibility="advanced">
        <ArrayListDomain input_domain_name="input_array_point"
                         name="array_list">
          <RequiredProperties>
            <Property function="Input" name="Input" />
          </RequiredProperties>
        </ArrayListDomain>
        <Documentation>
          Choice of an array for OSPRay implicit points and lines sizes.
        </Documentation>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </StringVectorProperty>
      <ProxyProperty command="SetScalingFunction"
                     name="OSPRayScaleFunction"
                     label="OSPRay Scale Function"
                     panel_visibility="advanced"
                     panel_widget="transfer_function_editor">
        <Documentation>Set the piecewise function used to map data array to sprite size.
        ScaleTransferFunction is only used if ScaleByArray is set.</Documentation>
        <ProxyGroupDomain name="groups">
          <Group name="piecewise_functions" />
        </ProxyGroupDomain>
        <ProxyListDomain name="proxy_list">
          <Proxy group="piecewise_functions"
                 name="PiecewiseFunction" />
        </ProxyListDomain>
        <Hints>
          <PropertyWidgetDecorator type="OSPRayHidingDecorator" />
        </Hints>
      </ProxyProperty>
      <!-- End of SurfaceRepresentationBase -->
    </RepresentationProxy>

  </ProxyGroup>
</ServerManagerConfiguration>
