<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>

   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <title>Chart Prototype</title>

   <style type="text/css">

      form, legend, button
      {
         font-family: Verdana, sans serif;
         font-weight: bold;
         color: #fff;
      }

      fieldset
      {
         color: #fff;
         border: solid #fff;
         width: 300px;
         padding: 10px;
      }

      textarea
      {
         background-color: #fffacd;
         border: #f68318 1px solid;
      }

      button
      {
         font-weight: bold;
         background-color: #f68318;
         border: #f68318 1px solid;
      }

      #chart1
      {
         position: absolute;
         top: 5px;
         left: 470px;
      }

      #filler1
      {
         position: absolute;
         top: 5px;
         left: 625px;
      }

      #filler2
      {
         position: absolute;
         top: 170px;
         left: 350px;
      }

      #xmlForm
      {
         position: absolute;
         top: 400px;
         left: 350px;
      }

      #xmlDataButton
      {
         position: relative;
         left: 210px;
      }

      p
      {
         border: solid #f68318 2px;
         padding: 10px;
         color: #fff;
      }

   </style>


   <script type='text/javascript'>

      var chart1 = null;
      var ChartInstance = null;
      var pieChart = null;
      var pieChartInstance = null;

      function Init()
      {
         chart1 = document.getElementById( 'chart1' );
         ChartInstance = chart1.contentWindow;
         //alert('ChartInstance: ' + ChartInstance)
         if ( !ChartInstance )
         {
            ChartInstance = chart1.window;
         }
         //alert('ChartInstance: ' + ChartInstance)
      }


      function InputXMLData()
      {
         xAxis = document.getElementById( 'xAxis' ).value;
         ChartInstance.setDataAxis( "x", xAxis );
         yAxis = document.getElementById( 'yAxis' ).value;
         ChartInstance.setDataAxis( "y", yAxis );
         Series1 = document.getElementById( 'Series1' ).value;
         ChartInstance.setDataAxis( "series1", Series1 );
         Series2 = document.getElementById( 'Series2' ).value;
         ChartInstance.setDataAxis( "series2", Series2 );

         xmlData = document.getElementById( 'xmlData' );
         ChartInstance.ProcessData( xmlData.value, false, DataLoaded );
      }


      function DataLoaded( success )
      {
         //window.status(success);
         if ( true == success )
         {
            chartType = document.getElementById( 'chartTypeList' ).value;
            ChartInstance.SetChartType( null, chartType );

            var threeD = document.getElementById( 'toggle3D' );
            ChartInstance.Toggle3D( null, threeD.checked );

            ChartInstance.DrawChart( ShowCallback );
            //ChartInstance.RerenderChart( ShowCallback );

         }
      }

      function ShowCallback( success )
      {
         //window.status(success);
      }


      function GetOutput( caller, outputString )
      {
         var outputIdBox = document.getElementById( 'outputId' );
         outputIdBox.value = caller.name;

         var outputValueBox = document.getElementById( 'outputValue' );
         outputValueBox.value = outputString;

         //AddChartInstance( caller, outputString );
      }


      function SelectChartType( checkbox )
      {
         var value = checkbox.value;
         var checked = checkbox.checked;

         var threeD = document.getElementById( 'threeD' );
         Toggle3D( threeD.checked );

         ChartInstance.SetChartType( value, checked );
      }


      function ChangeChartType( value )
      {

         ChartInstance.SetChartType( null, value );

         //var threeD = document.getElementById( 'threeD' );
         //Toggle3D( null, threeD.checked );
      }


      function ToggleDisplay( value )
      {
         chart1.parentNode.style.visibility = value;
      }

      function ToggleChart3D( value )
      {
         ChartInstance.Toggle3D( null, value );
         ChartInstance.DrawChart();
      }


      function SetDimensions()
      {
         var width = document.getElementById('width').value;
         var height = document.getElementById('height').value;
         SetChartSize( width, height );
      }


      var currentWidth = 450;
      var currentHeight = 410;
      function ExpandCollapse()
      {
         if ( 450 == currentWidth )
         {
            currentWidth = 980;
         }
         else
         {
            currentWidth = 450;
         }

         ChartInstance.SetChartDimensions( currentWidth, currentHeight );
         ChartInstance.DrawChart( DataLoaded );

         SetChartSize( currentWidth, currentHeight );
      }


      function SetChartSize( width, height )
      {
         width = Number( width );
         height = Number( height );

         chart1.setAttribute( 'width', width );
         chart1.setAttribute( 'height', height );

         ChartInstance.SetChartDimensions( width, height );
         ChartInstance.DrawChart();
      };

      function ExpandChart( instance )
      {
         var width = instance.getAttribute( 'width' );
         var height = instance.getAttribute( 'height' );

         SetChartSize( width * 2, height * 2 );
      };

      function ShrinkChart( instance )
      {
         var width = instance.getAttribute( 'width' );
         var height = instance.getAttribute( 'height' );

         SetChartSize( width/2, height/2 );
      };


      function AddChartInstance( caller, value )
      {
         if ( caller.name )
         {
            var chart = document.getElementById( caller.name );
            var height = Number(chart.getAttribute( 'height' ));

            var div = document.createElement('div');
            div.style.position = 'absolute';
            div.style.top = height + 40 + 'px';
            div.style.left = '350px';

            pieChart = document.createElement('iframe');
            pieChart.name = 'pieChart';
            //pieChart.setSrc = 'chart.svg';
            pieChart.setAttribute( 'id', 'pieChart');
            //pieChart.setAttribute( 'name', 'pieChart');
            pieChart.setAttribute( 'src', 'chart.svg');
            pieChart.setAttribute( 'frameborder', '0');
            pieChart.setAttribute( 'width', '200');
            pieChart.setAttribute( 'height', '200');
            div.appendChild( pieChart );

            var allCharts = document.getElementById( 'allCharts' );
            allCharts.appendChild( div );
            pieChart.setAttribute( 'src', 'chart.svg');

            //alert(pieChart.name)

            setTimeout( PopulateNewChart, 500);
         }

      };


      function PopulateNewChart( caller, value )
      {
         pieChartInstance = pieChart.contentWindow;
         if ( !pieChartInstance )
         {
            pieChartInstance = pieChart.window;
         }

         pieChartInstance.SetChartType( 'pie', true );
         pieChartInstance.AddItem( 10, value );

      };


/*
*
*  drillDown
*
*  Function to send drilldown information to server.
*
*  Doug Schepers <doug@6thsenseanalytics.com>
*
*/
      function drillDown( id )
      {
         window.clipboardData.setData("text", id);
         alert( id );

      };


/*
*
*  RegisterColor
*
*  Function and arrays to coordinate colors among all chart on a page.
*
*  Doug Schepers <doug@6thsenseanalytics.com>
*
*/

/*
   Master object to store assigned colors by category.

   The first level of the map is indexed by the category. If category is null,
   the default area should be used.

   For each category is has an embedded obj with:

   curIdx: the current index in the master color palette
   colorMap: map of strings to colors
   */
      var assignedColorObj = { "default" : { curIdx: 0, colorMap: {}}} ;

       var masterColorList =  ['rgb(97, 115, 169)', 'rgb(141, 166, 66)', 'rgb(152, 52, 28)', 'rgb(253, 200, 97)', 'rgb(138, 164, 201)', 'rgb(111, 117, 0)', 'rgb(184, 127, 50)', 'rgb(214, 198, 110)', 'rgb(94, 82, 139)', 'rgb(103, 153, 32)', 'rgb(200, 87, 60)', 'rgb(127, 89, 52)', 'rgb(255, 0, 0)', 'rgb(0, 0, 255)', 'rgb(0, 255, 0)', 'rgb(255, 165, 0)', 'rgb(128, 0, 128)', 'rgb(255, 215, 0)', 'rgb(255, 20, 147)', 'rgb( 32, 178, 170)', 'rgb(220, 20, 60)', 'rgb(106, 90, 205)', 'rgb( 25, 25, 112)', 'rgb(102, 205, 170)', 'rgb(255, 99, 71)', 'rgb(238, 130, 238)', 'rgb(255, 255, 0)', 'rgb(128, 128, 128)', 'rgb(233, 150, 122)', 'rgb(184, 134, 11)', 'rgb(143, 188, 143)', 'rgb(173, 255, 47)', 'rgb(255, 0, 255)', 'rgb( 72, 61, 139)', 'rgb(138, 43, 226)', 'rgb(178, 34, 34)', 'rgb(144, 238, 144)', 'rgb(0, 0, 128)', 'rgb(244, 164, 96)', 'rgb(0, 128, 0)', 'rgb(219, 112, 147)', 'rgb( 47, 79, 79)', 'rgb(255, 127, 80)', 'rgb(0, 191, 255)', 'rgb(188, 143, 143)', 'rgb(148, 0, 211)', 'rgb(139, 69, 19)', 'rgb(107, 142, 35)', 'rgb(0, 0, 0)', 'rgb(218, 112, 214)', 'rgb(165, 42, 42)', 'rgb( 95, 158, 160)', 'rgb(127, 255, 0)', 'rgb(210, 105, 30)', 'rgb(100, 149, 237)', 'rgb(0, 0, 139)', 'rgb(0, 139, 139)', 'rgb(0, 100, 0)', 'rgb(189, 183, 107)', 'rgb(139, 0, 139)', 'rgb(255, 0, 255)', 'rgb( 85, 107, 47)', 'rgb(255, 140, 0)', 'rgb(153, 50, 204)', 'rgb(139, 0, 0)', 'rgb(105, 105, 105)', 'rgb(0, 206, 209)', 'rgb( 34, 139, 34)', 'rgb(218, 165, 32)', 'rgb(255, 105, 180)', 'rgb(205, 92, 92)', 'rgb( 30, 144, 255)', 'rgb( 75, 0, 130)', 'rgb(124, 252, 0)', 'rgb(240, 128, 128)', 'rgb(119, 136, 153)', 'rgb( 50, 205, 50)', 'rgb(128, 0, 0)', 'rgb(0, 0, 205)', 'rgb(186, 85, 211)', 'rgb( 60, 179, 113)', 'rgb(123, 104, 238)', 'rgb(255, 160, 122)', 'rgb( 72, 209, 204)', 'rgb(199, 21, 133)', 'rgb(128, 128, 0)', 'rgb(255, 69, 0)', 'rgb(147, 112, 219)', 'rgb(205, 133, 63)', 'rgb(221, 160, 221)', 'rgb(0, 250, 154)', 'rgb( 65, 105, 225)', 'rgb(250, 128, 114)', 'rgb( 46, 139, 87)', 'rgb(160, 82, 45)', 'rgb(112, 128, 144)', 'rgb(0, 255, 127)', 'rgb( 70, 130, 180)', 'rgb(210, 180, 140)', 'rgb(0, 128, 128)'];

      /*
      GetColor

      @param str the str label to get a color for
      @param category (optional) category the str belongs in
      @returns a color for that string within the category
      */
      function GetColor ( str, category ) {

         ///alert( str + ' ' + category )

         if ( ! category ) {
            category = "default";
         }
         var catColorObj = assignedColorObj[category];
         if ( ! catColorObj ) {
            catColorObj = { curIdx: 0, colorMap: {} };
            assignedColorObj[category] = catColorObj;
         }

         var color = catColorObj.colorMap[str];
         if ( ! color ) {
            var curIdx = catColorObj.curIdx;
            color = masterColorList[curIdx];

            catColorObj.curIdx = (curIdx + 1) % masterColorList.length;
            catColorObj.colorMap[str] = color;
         }
         return color;
      };


   /*
   GetTextInput

   @param label: the str label to display in promot
   @returns a text string input by the user
   */
   function GetTextInput( label )
   {
      var textInput = prompt('Please enter ' + label + ':', '');
      return textInput;
   };


      function Export()
      {
         var chartData = ChartInstance.ExportChart();
         var debugOutput = document.getElementById( 'debugOutput' );
         debugOutput.value = chartData;
         //window.clipboardData.setData("text", chartData);
         //alert( chartData );

         //var popup = window.open('', 'export', 'height=500,width=500');
         //popup.document.write( chartData );
         //popup.close();
      };


      function ShowDebugInfo()
      {
         var debugInfo = ChartInstance.ShowSVGDebug();
         var debugOutput = document.getElementById( 'debugOutput' );
         debugOutput.value = debugInfo;
      };

   </script>

</head>

<body bgcolor='#1b99c2' onload='Init()'>

   <form name='chartProps' id='chartProps' action='/' method='post' onsubmit='return false;'>
      <fieldset>
         <legend align='center'>
            XML Data Input
         </legend>
         <label for='xmlData'>XML:</label>
         <button id='xmlDataButton' onclick='InputXMLData(); return false;'/>Input XML Data</button>
         <textarea id='xmlData' name='xmlData' rows='20' cols='50'>
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Header>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<xmla:ExecuteResponse xmlns:xmla="urn:schemas-microsoft-com:xml-analysis">
  <xmla:return>
    <root xmlns="urn:schemas-microsoft-com:xml-analysis:mddataset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:EX="urn:schemas-microsoft-com:xml-analysis:exception">
      <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:schemas-microsoft-com:xml-analysis:mddataset" xmlns="urn:schemas-microsoft-com:xml-analysis:mddataset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sql="urn:schemas-microsoft-com:xml-sql" elementFormDefault="qualified">
        <xsd:complexType name="MemberType">
          <xsd:sequence>
            <xsd:element name="UName" type="xsd:string"/>
            <xsd:element name="Caption" type="xsd:string"/>
            <xsd:element name="LName" type="xsd:string"/>
            <xsd:element name="LNum" type="xsd:unsignedInt"/>
            <xsd:element name="DisplayInfo" type="xsd:unsignedInt"/>
            <xsd:sequence maxOccurs="unbounded" minOccurs="0">
              <xsd:any processContents="lax" maxOccurs="unbounded"/>
            </xsd:sequence>
          </xsd:sequence>
          <xsd:attribute name="Hierarchy" type="xsd:string"/>
        </xsd:complexType>
        <xsd:complexType name="PropType">
          <xsd:attribute name="name" type="xsd:string"/>
        </xsd:complexType>
        <xsd:complexType name="TupleType">
          <xsd:sequence maxOccurs="unbounded">
            <xsd:element name="Member" type="MemberType"/>
          </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="MembersType">
          <xsd:sequence maxOccurs="unbounded">
            <xsd:element name="Member" type="MemberType"/>
          </xsd:sequence>
          <xsd:attribute name="Hierarchy" type="xsd:string"/>
        </xsd:complexType>
        <xsd:complexType name="TuplesType">
          <xsd:sequence maxOccurs="unbounded">
            <xsd:element name="Tuple" type="TupleType"/>
          </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="CrossProductType">
          <xsd:sequence>
            <xsd:choice minOccurs="0" maxOccurs="unbounded">
              <xsd:element name="Members" type="MembersType"/>
              <xsd:element name="Tuples" type="TuplesType"/>
            </xsd:choice>
          </xsd:sequence>
          <xsd:attribute name="Size" type="xsd:unsignedInt"/>
        </xsd:complexType>
        <xsd:complexType name="OlapInfo">
          <xsd:sequence>
            <xsd:element name="CubeInfo">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element name="Cube" maxOccurs="unbounded">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element name="CubeName" type="xsd:string"/>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <xsd:element name="AxesInfo">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element name="AxisInfo" maxOccurs="unbounded">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element name="HierarchyInfo" minOccurs="0" maxOccurs="unbounded">
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:sequence maxOccurs="unbounded">
                                <xsd:element name="UName" type="PropType"/>
                                <xsd:element name="Caption" type="PropType"/>
                                <xsd:element name="LName" type="PropType"/>
                                <xsd:element name="LNum" type="PropType"/>
                                <xsd:element name="DisplayInfo" type="PropType" minOccurs="0" maxOccurs="unbounded"/>
                              </xsd:sequence>
                              <xsd:sequence>
                                <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
                              </xsd:sequence>
                            </xsd:sequence>
                          </xsd:complexType>
                          <xsd:attribute name="name" type="xsd:string" use="required"/>
                        </xsd:element>
                      </xsd:sequence>
                      <xsd:attribute name="name" type="xsd:string"/>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <xsd:element name="CellInfo">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                    <xsd:choice>
                      <xsd:element name="Value" type="PropType"/>
                      <xsd:element name="FmtValue" type="PropType"/>
                      <xsd:element name="BackColor" type="PropType"/>
                      <xsd:element name="ForeColor" type="PropType"/>
                      <xsd:element name="FontName" type="PropType"/>
                      <xsd:element name="FontSize" type="PropType"/>
                      <xsd:element name="FontFlags" type="PropType"/>
                      <xsd:element name="FormatString" type="PropType"/>
                      <xsd:element name="NonEmptyBehavior" type="PropType"/>
                      <xsd:element name="SolveOrder" type="PropType"/>
                      <xsd:element name="Updateable" type="PropType"/>
                      <xsd:element name="Visible" type="PropType"/>
                      <xsd:element name="Expression" type="PropType"/>
                    </xsd:choice>
                  </xsd:sequence>
                  <xsd:sequence maxOccurs="unbounded" minOccurs="0">
                    <xsd:any processContents="lax" maxOccurs="unbounded"/>
                  </xsd:sequence>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="Axes">
          <xsd:sequence maxOccurs="unbounded">
            <xsd:element name="Axis">
              <xsd:complexType>
                <xsd:choice minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="CrossProduct" type="CrossProductType"/>
                  <xsd:element name="Tuples" type="TuplesType"/>
                  <xsd:element name="Members" type="MembersType"/>
                </xsd:choice>
                <xsd:attribute name="name" type="xsd:string"/>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
        <xsd:complexType name="CellData">
          <xsd:sequence>
            <xsd:element name="Cell" minOccurs="0" maxOccurs="unbounded">
              <xsd:complexType>
                <xsd:sequence maxOccurs="unbounded">
                  <xsd:choice>
                    <xsd:element name="Value"/>
                    <xsd:element name="FmtValue" type="xsd:string"/>
                    <xsd:element name="BackColor" type="xsd:unsignedInt"/>
                    <xsd:element name="ForeColor" type="xsd:unsignedInt"/>
                    <xsd:element name="FontName" type="xsd:string"/>
                    <xsd:element name="FontSize" type="xsd:unsignedShort"/>
                    <xsd:element name="FontFlags" type="xsd:unsignedInt"/>
                    <xsd:element name="FormatString" type="xsd:string"/>
                    <xsd:element name="NonEmptyBehavior" type="xsd:unsignedShort"/>
                    <xsd:element name="SolveOrder" type="xsd:unsignedInt"/>
                    <xsd:element name="Updateable" type="xsd:unsignedInt"/>
                    <xsd:element name="Visible" type="xsd:unsignedInt"/>
                    <xsd:element name="Expression" type="xsd:string"/>
                  </xsd:choice>
                </xsd:sequence>
                <xsd:attribute name="CellOrdinal" type="xsd:unsignedInt" use="required"/>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
        <xsd:element name="root">
          <xsd:complexType>
            <xsd:sequence maxOccurs="unbounded">
              <xsd:element name="OlapInfo" type="OlapInfo"/>
              <xsd:element name="Axes" type="Axes"/>
              <xsd:element name="CellData" type="CellData"/>
            </xsd:sequence>
          </xsd:complexType>
        </xsd:element>
      </xsd:schema>
      <OlapInfo>
        <CubeInfo>
          <Cube>
            <CubeName>ActiveTime</CubeName>
          </Cube>
        </CubeInfo>
        <AxesInfo>
          <AxisInfo name="Axis0">
            <HierarchyInfo name="Measures">
              <UName name="[Measures].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Measures].[MEMBER_CAPTION]"/>
              <LName name="[Measures].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Measures].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Measures].[DISPLAY_INFO]"/>
            </HierarchyInfo>
          </AxisInfo>
          <AxisInfo name="Axis1">
            <HierarchyInfo name="Principal">
              <UName name="[Principal].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Principal].[MEMBER_CAPTION]"/>
              <LName name="[Principal].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Principal].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Principal].[DISPLAY_INFO]"/>
            </HierarchyInfo>
            <HierarchyInfo name="Time">
              <UName name="[Time].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Time].[MEMBER_CAPTION]"/>
              <LName name="[Time].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Time].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Time].[DISPLAY_INFO]"/>
            </HierarchyInfo>
          </AxisInfo>
          <AxisInfo name="SlicerAxis">
            <HierarchyInfo name="Artifact">
              <UName name="[Artifact].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Artifact].[MEMBER_CAPTION]"/>
              <LName name="[Artifact].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Artifact].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Artifact].[DISPLAY_INFO]"/>
            </HierarchyInfo>
            <HierarchyInfo name="System">
              <UName name="[System].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[System].[MEMBER_CAPTION]"/>
              <LName name="[System].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[System].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[System].[DISPLAY_INFO]"/>
            </HierarchyInfo>
            <HierarchyInfo name="Tool">
              <UName name="[Tool].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Tool].[MEMBER_CAPTION]"/>
              <LName name="[Tool].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Tool].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Tool].[DISPLAY_INFO]"/>
            </HierarchyInfo>
            <HierarchyInfo name="Category">
              <UName name="[Category].[MEMBER_UNIQUE_NAME]"/>
              <Caption name="[Category].[MEMBER_CAPTION]"/>
              <LName name="[Category].[LEVEL_UNIQUE_NAME]"/>
              <LNum name="[Category].[LEVEL_NUMBER]"/>
              <DisplayInfo name="[Category].[DISPLAY_INFO]"/>
            </HierarchyInfo>
          </AxisInfo>
        </AxesInfo>
        <CellInfo>
          <Value name="VALUE"/>
          <FmtValue name="FORMATTED_VALUE"/>
          <FormatString name="FORMAT_STRING"/>
        </CellInfo>
      </OlapInfo>
      <Axes>
        <Axis name="Axis0">
          <Tuples>
            <Tuple>
              <Member Hierarchy="Measures">
                <UName>[Measures].[Active Hours]</UName>
                <Caption>Active Hours</Caption>
                <LName>[Measures].[MeasuresLevel]</LName>
                <LNum>0</LNum>
                <DisplayInfo>0</DisplayInfo>
              </Member>
            </Tuple>
          </Tuples>
        </Axis>
        <Axis name="Axis1">
          <Tuples>
            <Tuple>
              <Member Hierarchy="Principal">
                <UName>[Principal].[All Principals].[3].[202]</UName>
                <Caption>brec@6thsenseanalytics.com</Caption>
                <LName>[Principal].[User]</LName>
                <LNum>2</LNum>
                <DisplayInfo>0</DisplayInfo>
              </Member>
              <Member Hierarchy="Time">
                <UName>[Time].[All Times].[2006].[2]</UName>
                <Caption>2006-02-01</Caption>
                <LName>[Time].[Month]</LName>
                <LNum>2</LNum>
                <DisplayInfo>28</DisplayInfo>
              </Member>
            </Tuple>
            <Tuple>
              <Member Hierarchy="Principal">
                <UName>[Principal].[All Principals].[3].[202]</UName>
                <Caption>brec@6thsenseanalytics.com</Caption>
                <LName>[Principal].[User]</LName>
                <LNum>2</LNum>
                <DisplayInfo>131072</DisplayInfo>
              </Member>
              <Member Hierarchy="Time">
                <UName>[Time].[All Times].[2006].[3]</UName>
                <Caption>2006-03-01</Caption>
                <LName>[Time].[Month]</LName>
                <LNum>2</LNum>
                <DisplayInfo>131103</DisplayInfo>
              </Member>
            </Tuple>
            <Tuple>
              <Member Hierarchy="Principal">
                <UName>[Principal].[All Principals].[292600].[204]</UName>
                <Caption>randy@6thsensesoftware.com</Caption>
                <LName>[Principal].[User]</LName>
                <LNum>2</LNum>
                <DisplayInfo>0</DisplayInfo>
              </Member>
              <Member Hierarchy="Time">
                <UName>[Time].[All Times].[2006].[2]</UName>
                <Caption>2006-02-01</Caption>
                <LName>[Time].[Month]</LName>
                <LNum>2</LNum>
                <DisplayInfo>131100</DisplayInfo>
              </Member>
            </Tuple>
            <Tuple>
              <Member Hierarchy="Principal">
                <UName>[Principal].[All Principals].[292600].[204]</UName>
                <Caption>randy@6thsensesoftware.com</Caption>
                <LName>[Principal].[User]</LName>
                <LNum>2</LNum>
                <DisplayInfo>131072</DisplayInfo>
              </Member>
              <Member Hierarchy="Time">
                <UName>[Time].[All Times].[2006].[3]</UName>
                <Caption>2006-03-01</Caption>
                <LName>[Time].[Month]</LName>
                <LNum>2</LNum>
                <DisplayInfo>131103</DisplayInfo>
              </Member>
            </Tuple>
          </Tuples>
        </Axis>
        <Axis name="SlicerAxis">
          <Tuples>
            <Tuple>
              <Member Hierarchy="Artifact">
                <UName>[Artifact].[All Artifacts]</UName>
                <Caption>All Artifacts</Caption>
                <LName>[Artifact].[(All)]</LName>
                <LNum>0</LNum>
                <DisplayInfo>64</DisplayInfo>
              </Member>
              <Member Hierarchy="System">
                <UName>[System].[All Systems]</UName>
                <Caption>All Systems</Caption>
                <LName>[System].[(All)]</LName>
                <LNum>0</LNum>
                <DisplayInfo>0</DisplayInfo>
              </Member>
              <Member Hierarchy="Tool">
                <UName>[Tool].[All Tools]</UName>
                <Caption>All Tools</Caption>
                <LName>[Tool].[(All)]</LName>
                <LNum>0</LNum>
                <DisplayInfo>10</DisplayInfo>
              </Member>
              <Member Hierarchy="Category">
                <UName>[Category].[All Categories]</UName>
                <Caption>All Categories</Caption>
                <LName>[Category].[(All)]</LName>
                <LNum>0</LNum>
                <DisplayInfo>8</DisplayInfo>
              </Member>
            </Tuple>
          </Tuples>
        </Axis>
      </Axes>
      <CellData>
        <Cell CellOrdinal="0">
          <Value xsi:type="xsd:double">57.25</Value>
          <FmtValue>57.25</FmtValue>
          <FormatString>###0.00</FormatString>
        </Cell>
        <Cell CellOrdinal="1">
          <Value xsi:type="xsd:double">184.5</Value>
          <FmtValue>184.50</FmtValue>
          <FormatString>###0.00</FormatString>
        </Cell>
        <Cell CellOrdinal="2">
          <Value xsi:type="xsd:double">54.666666666666664</Value>
          <FmtValue>54.67</FmtValue>
          <FormatString>###0.00</FormatString>
        </Cell>
        <Cell CellOrdinal="3">
          <Value xsi:type="xsd:double">130.75</Value>
          <FmtValue>130.75</FmtValue>
          <FormatString>###0.00</FormatString>
        </Cell>
      </CellData>
    </root>
  </xmla:return>
</xmla:ExecuteResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
   </textarea>
         <br />
         <label for='xAxis'>X Axis:</label>
         <input type='text' id='xAxis' value='Time' />
         <br />
         <label for='yAxis'>Y Axis:</label>
         <input type='text' id='yAxis' value='' />
         <br />
         <label for='Series1'>Series1:</label>
         <input type='text' id='Series1' value='Principal' />
         <br />
         <label for='Series2'>Series2:</label>
         <input type='text' id='Series2' value='' />
         <br />

      <select id='chartTypeList' name='chartTypeList' size='5'>
         <option selected='true' value='bar'>bar</option>
         <option value='line'>line</option>
         <option value='pie'>pie</option>
         <option value='area'>area</option>
         <option value='point'>point</option>
      </select>
      <input type='checkbox' id='toggle3D' name='toggle3D' value='threeD' checked='false'/>
      <label for='toggle3D'>3D</label>
      <br />
      </fieldset>
         <br />
      <fieldset>
         <legend align='center'>
            Chart Type
         </legend>
         <input type='radio' id='bar' name='chartType' value='bar' onclick='ChangeChartType( this.value ); return false; ' checked='true'/>
         <label for='bar'>bar</label>
         <input type='radio' id='line' name='chartType' value='line' onclick='ChangeChartType( this.value ); return false; '/>
         <label for='line'>line</label>
         <input type='radio' id='area' name='chartType' value='area' onclick='ChangeChartType( this.value ); return false; '/>
         <label for='area'>area</label>
         <br />
         <input type='radio' id='point' name='chartType' value='point' onclick='ChangeChartType( this.value ); return false; '/>
         <label for='point'>point</label>
         <input type='radio' id='pie' name='chartType' value='pie' onclick='ChangeChartType( this.value ); return false; '/>
         <label for='pie'>pie</label>
         <!--
         <br />
         <input type='checkbox' id='toggle3D' value='threeD' onclick='ToggleChart3D(this.checked ); return false;' checked='true'/>
         <label for='toggle3D'>3D</label>
         -->


         <br />
      </fieldset>
      <fieldset>
         <legend align='center'>
            Chart Dimensions
         </legend>
         <label for='width'>Width:</label>
         <input type='text' id='width' value='275' />
         <br />
         <label for='height'>Height:</label>
         <input type='text' id='height' value='180' />
         <br />
         <br />

         <button id='valueButton' onclick='SetDimensions(); return false;'/>Set Dimensions</button>
         <button id='valueButton' onclick='ExpandCollapse(); return false;'/>Expand/Collapse</button>
         <br />
      </fieldset>
      <fieldset>
         <legend align='center'>
            Chart Output
         </legend>
         <label for='outputId'>Output Id:</label>
         <input type='text' id='outputId' value='' />
         <br />
         <label for='outputValue'>Output Value:</label>
         <input type='text' id='outputValue' value='' />
         <br />
         <button id='valueButton' onclick='Export(); return false;'/>Export Chart</button>
         <br />
      </fieldset>
      <fieldset>
         <legend align='center'>
            Display
         </legend>
         <input type='radio' id='show' name='showHide' value='visible' onclick='ToggleDisplay( this.value ); return false;' checked='true'/>
         <label for='show'>Show</label>
         <input type='radio' id='hide' name='showHide' value='hidden' onclick='ToggleDisplay( this.value ); return false;'/>
         <label for='hide'>Hide</label>

         <br />
      </fieldset>

      <fieldset>
         <legend align='center'>
           Debug
         </legend>
         <button id='debugButton' onclick='ShowDebugInfo(); return false;'/>Show Debug Info</button>
         <br />
         <label for='debugOutput'>Debug Output:</label>
         <textarea id='debugOutput' name='debugOutput' rows='20' cols='50'>
         </textarea>
      </fieldset>
   </form>


   <!-- <embed id='chart' src='chart.svg' width='275' height='150' type='image/svg+xml'/> -->
   <!-- onmouseover='ExpandChart( this )' onmouseout='ShrinkChart( this )' -->

   <div id='allCharts'>
      <iframe id='chart1' name='chart1' src='chart.svg' width='450' height='410' frameborder='0'>Please use FF1.5+, Opera 9+, or IE with an SVG plugin!</iframe>
   </div>

   <!--

   -->
</body>
</html>
