Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Uncaught TypeError: Cannot read property 'uri' of undefined #62

Open
ghost opened this issue Jun 16, 2016 · 4 comments
Open

Uncaught TypeError: Cannot read property 'uri' of undefined #62

ghost opened this issue Jun 16, 2016 · 4 comments

Comments

@ghost
Copy link

ghost commented Jun 16, 2016

When I try to use xs:import I got an error

Uncaught TypeError: Cannot read property 'uri' of undefined

Both xsd schemes are correct.

@bbpennel
Copy link
Member

Could you share the schemas or at least snippets of the beginning portions
of each?

On Thu, Jun 16, 2016 at 9:16 AM, Arseniy [email protected] wrote:

When I try to use xs:import I got an error

Uncaught TypeError: Cannot read property 'uri' of undefined

Both xsd schemes are correct.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#62, or mute
the thread
https://github.com/notifications/unsubscribe/AA7MUhuxhydP9LbaP1txoy3LwIzkXI0rks5qMUyhgaJpZM4I3X5c
.

@ghost
Copy link
Author

ghost commented Jun 16, 2016

Shure. Both schemes in same folder

Here is a main scheme

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:report="http://analytics.com/report/v1.1" elementFormDefault="qualified" targetNamespace="http://analytics.com/report/v1.1" version="1.0">
  <xs:include schemaLocation="elements.xsd"/>
  <xs:element name="ap-report" type="report:ApReport"/>
  <xs:complexType final="extension restriction" name="ApReport">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="page-format" type="report:ReportPageFormat"/>
          <xs:element minOccurs="0" name="parameters">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="parameter" type="report:ReportParameter"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="resources">
            <xs:complexType>
              <xs:sequence>
                <xs:choice maxOccurs="unbounded" minOccurs="0">
                  <xs:element name="palette" type="report:PaletteResource"/>
                  <xs:element name="image" type="report:ImageResource"/>
                </xs:choice>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="datasets">
            <xs:complexType>
              <xs:sequence>
                <xs:choice maxOccurs="unbounded" minOccurs="0">
                  <xs:element name="inline-data-set" type="report:InlineDataSet"/>
                  <xs:element name="remote-data-set" type="report:RemoteDataSet"/>
                </xs:choice>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="eventHandlers">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="eventHandler" type="report:EventHandler"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="viewports">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="viewport" type="report:ViewPort"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="guide">
            <xs:complexType>
              <xs:sequence>
                <xs:choice maxOccurs="unbounded" minOccurs="0">
                  <xs:element name="report" type="report:ReportGuideItem"/>
                  <xs:element name="component" type="report:ComponentGuideItem"/>
                </xs:choice>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="help" type="report:ReportHelp"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="autoApply" type="xs:boolean"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="Element">
    <xs:sequence/>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ReportPageFormat">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="format" type="report:PageFormat"/>
        <xs:attribute name="orientation" type="report:PageOrientation"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ReportParameter">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="type" type="report:PrimitiveType" use="required"/>
        <xs:attribute name="visibility" type="report:ReportParameterVisibility" use="required"/>
        <xs:attribute name="sharedKey" type="xs:normalizedString"/>
        <xs:attribute name="dataset" type="xs:normalizedString"/>
        <xs:attribute name="expression" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="PaletteResource">
    <xs:complexContent>
      <xs:extension base="report:Resource">
        <xs:sequence/>
        <xs:attribute name="source" type="report:PaletteSourceRef"/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="Resource">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="ImageResource">
    <xs:complexContent>
      <xs:extension base="report:Resource">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:base64Binary" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="InlineDataSet">
    <xs:complexContent>
      <xs:extension base="report:DataSet">
        <xs:sequence>
          <xs:element name="data">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" name="row" type="report:InlineDataSetRow"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="DataSet">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="page" type="report:IntBindable"/>
          <xs:element minOccurs="0" name="pageSize" type="report:IntBindable"/>
          <xs:element minOccurs="0" name="fields">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="field" type="report:DataSetField"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="filters">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="filter" type="report:DataSetFilter"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="orders">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="order" type="report:DataSetOrder"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="InlineDataSetRow">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="cell" type="report:InlineDataSetCell"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="InlineDataSetCell">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="IntBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:int"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="bindableBase">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="bind" type="xs:normalizedString"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="DataSetField">
    <xs:sequence>
      <xs:element minOccurs="0" name="hidden" type="report:ExpressionBindable"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:normalizedString" use="required"/>
    <xs:attribute name="type" type="report:PrimitiveType"/>
    <xs:attribute name="title" type="xs:string"/>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ExpressionBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="expression" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="DataSetFilter">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="value" type="report:ObjectBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="ObjectBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="DataSetOrder">
    <xs:sequence>
      <xs:element minOccurs="0" name="hidden" type="report:ExpressionBindable"/>
      <xs:element name="direction" type="report:DataSetOrderDirectionBindable"/>
    </xs:sequence>
    <xs:attribute name="id" type="xs:normalizedString" use="required"/>
  </xs:complexType>

  <xs:complexType name="DataSetOrderDirectionBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="report:DataSetOrderDirection"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="RemoteDataSet">
    <xs:complexContent>
      <xs:extension base="report:DataSet">
        <xs:sequence/>
        <xs:attribute name="dataSource" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="EventHandler">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:choice maxOccurs="unbounded" minOccurs="0">
            <xs:element name="report-call" type="report:EventHandlerReportCall"/>
            <xs:element name="call" type="report:EventHandlerComponentCall"/>
          </xs:choice>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="EventHandlerReportCall">
    <xs:complexContent>
      <xs:extension base="report:EventHandlerCall">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="EventHandlerCall">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="parameter" type="report:EventHandlerCallParameter"/>
        </xs:sequence>
        <xs:attribute name="call" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="EventHandlerCallParameter">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="from" type="xs:normalizedString"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="EventHandlerComponentCall">
    <xs:complexContent>
      <xs:extension base="report:EventHandlerCall">
        <xs:sequence/>
        <xs:attribute name="ref" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ViewPort">
    <xs:complexContent>
      <xs:extension base="report:BaseNestedComponent">
        <xs:sequence/>
        <xs:attribute name="type" type="report:ViewPortType" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="BaseNestedComponent">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:any namespace="##other" processContents="lax" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType name="ReportGuideItem">
    <xs:simpleContent>
      <xs:extension base="report:GuideItem"/>
    </xs:simpleContent>
  </xs:complexType>

  <xs:complexType name="GuideItem">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute name="title" type="xs:string"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:complexType name="ComponentGuideItem">
    <xs:simpleContent>
      <xs:extension base="report:GuideItem">
        <xs:attribute name="for" type="xs:normalizedString" use="required"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

  <xs:simpleType name="ReportHelp">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>

  <xs:complexType final="extension restriction" name="BoolArrayBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:boolean"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="BoolBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:boolean"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="DatetimeArrayBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:dateTime"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="DatetimeBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:dateTime"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="IntArrayBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:int"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="NumberArrayBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:double"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="NumberBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:double"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="StringArrayBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="StringBindable">
    <xs:complexContent>
      <xs:extension base="report:bindableBase">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="Component">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="currentProfile" type="report:StringBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="scope" type="xs:normalizedString"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType abstract="true" name="Profile">
    <xs:complexContent>
      <xs:extension base="report:Element">
        <xs:sequence/>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="parent" type="xs:normalizedString"/>
        <xs:attribute name="permission" type="xs:normalizedString"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="inlineDataSetHelper">
    <xs:sequence/>
  </xs:complexType>

  <xs:complexType name="NestedComponent">
    <xs:complexContent>
      <xs:extension base="report:BaseNestedComponent">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:simpleType name="PageFormat">
    <xs:restriction base="xs:string">
      <xs:enumeration value="A4"/>
      <xs:enumeration value="A2"/>
      <xs:enumeration value="A3"/>
      <xs:enumeration value="A1"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="PageOrientation">
    <xs:restriction base="xs:string">
      <xs:enumeration value="portrait"/>
      <xs:enumeration value="landscape"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="PrimitiveType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="bool"/>
      <xs:enumeration value="intArray"/>
      <xs:enumeration value="stringArray"/>
      <xs:enumeration value="numberArray"/>
      <xs:enumeration value="int"/>
      <xs:enumeration value="number"/>
      <xs:enumeration value="datetime"/>
      <xs:enumeration value="string"/>
      <xs:enumeration value="boolArray"/>
      <xs:enumeration value="datetimeArray"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ReportParameterVisibility">
    <xs:restriction base="xs:string">
      <xs:enumeration value="public"/>
      <xs:enumeration value="private"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="PaletteSourceRef">
    <xs:restriction base="xs:string">
      <xs:enumeration value="default"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="DataSetOrderDirection">
    <xs:restriction base="xs:string">
      <xs:enumeration value="asc"/>
      <xs:enumeration value="desc"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ViewPortType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="main"/>
      <xs:enumeration value="filter"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

And elements.xsd

<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://analytics.com/report/v1.1" xmlns:pkg="http://analytics.com/components/v1.1" elementFormDefault="qualified" targetNamespace="http://analytics.com/components/v1.1" version="1.0">

  <xs:import namespace="http://analytics.com/report/v1.1"/>

  <xs:element name="ap-area-chart" type="pkg:ApAreaChart"/>

  <xs:element name="ap-bar-chart" type="pkg:ApBarChart"/>

  <xs:element name="ap-button" type="pkg:ApButton"/>

  <xs:element name="ap-checkbox" type="pkg:ApCheckbox"/>

  <xs:element name="ap-checkbox-group" type="pkg:ApCheckboxGroup"/>

  <xs:element name="ap-combobox" type="pkg:ApCombobox"/>

  <xs:element name="ap-combobox-multiple" type="pkg:ApComboboxMultiple"/>

  <xs:element name="ap-datepicker" type="pkg:ApDatepicker"/>

  <xs:element name="ap-dropdown" type="pkg:ApDropdown"/>

  <xs:element name="ap-filter-panel" type="pkg:ApFilterPanel"/>

  <xs:element name="ap-grid" type="pkg:ApGrid"/>

  <xs:element name="ap-legend" type="pkg:ApLegend"/>

  <xs:element name="ap-line-chart" type="pkg:ApLineChart"/>

  <xs:element name="ap-pager" type="pkg:ApPager"/>

  <xs:element name="ap-panel" type="pkg:ApPanel"/>

  <xs:element name="ap-period" type="pkg:ApPeriod"/>

  <xs:element name="ap-pie-chart" type="pkg:ApPieChart"/>

  <xs:element name="ap-pivot-table" type="pkg:ApPivotTable"/>

  <xs:element name="ap-radio-group" type="pkg:ApRadioGroup"/>

  <xs:element name="ap-scatter-chart" type="pkg:ApScatterChart"/>

  <xs:element name="ap-scatter-xy-chart" type="pkg:ApScatterXyChart"/>

  <xs:element name="ap-sensor" type="pkg:ApSensor"/>

  <xs:element name="ap-stack" type="pkg:ApStack"/>

  <xs:element name="ap-table" type="pkg:ApTable"/>

  <xs:element name="ap-text" type="pkg:ApText"/>

  <xs:complexType final="extension restriction" name="ApAreaChart">
    <xs:annotation>
      <xs:documentation><![CDATA[Диаграмма областей]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApAreaChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApAreaChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:ChartColumnAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="pkg:ChartRowAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:ChartValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="stacked" type="xs:boolean"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ChartColumnAxis">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="field" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ChartRowAxis">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="field" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ChartValue">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="label" type="xs:string"/>
        <xs:attribute name="exportLabel" type="xs:boolean"/>
        <xs:attribute name="type" type="pkg:ChartValueType" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApBarChart">
    <xs:annotation>
      <xs:documentation><![CDATA[Гистограмма]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApBarChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApBarChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:ChartColumnAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="pkg:ChartRowAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:ChartValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="stacked" type="xs:boolean"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="idField" type="xs:string"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApButton">
    <xs:annotation>
      <xs:documentation><![CDATA[Кнопка]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApButtonProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApButtonProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence/>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="type" type="pkg:ButtonType"/>
        <xs:attribute name="mode" type="pkg:ButtonMode"/>
        <xs:attribute name="onclick">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApCheckbox">
    <xs:annotation>
      <xs:documentation><![CDATA[Флажок]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApCheckboxProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApCheckboxProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="checkedValue" type="xs:string"/>
        <xs:attribute name="uncheckedValue" type="xs:string"/>
        <xs:attribute name="type" type="pkg:CheckboxType"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApCheckboxGroup">
    <xs:annotation>
      <xs:documentation><![CDATA[Группа флажков]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApCheckboxGroupProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApCheckboxGroupProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringArrayBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string" use="required"/>
        <xs:attribute name="textField" type="xs:string" use="required"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="type" type="pkg:CheckboxGroupType"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApCombobox">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент выбора одного значения из списка]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApComboboxProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApComboboxProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="queryFilterName" type="xs:string"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string" use="required"/>
        <xs:attribute name="textField" type="xs:string" use="required"/>
        <xs:attribute name="textMaxLength" type="xs:int"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="onchange">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApComboboxMultiple">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент выбора нескольких значений из списка]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApComboboxMultipleProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApComboboxMultipleProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringArrayBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="queryFilterName" type="xs:string"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string" use="required"/>
        <xs:attribute name="textField" type="xs:string" use="required"/>
        <xs:attribute name="textMaxLength" type="xs:int"/>
        <xs:attribute name="setFirst" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="onchange">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApDatepicker">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент выбора даты]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApDatepickerProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApDatepickerProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="minDate" type="ns1:DatetimeBindable"/>
          <xs:element minOccurs="0" name="maxDate" type="ns1:DatetimeBindable"/>
          <xs:element minOccurs="0" name="current" type="ns1:DatetimeBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="format" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApDropdown">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент выбора одного значения из списка в виде меню]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApDropdownProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApDropdownProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string" use="required"/>
        <xs:attribute name="textField" type="xs:string" use="required"/>
        <xs:attribute name="textMaxLength" type="xs:int"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApFilterPanel">
    <xs:annotation>
      <xs:documentation><![CDATA[Панель фильтров]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApFilterPanelProfile"/>
          <xs:element minOccurs="0" name="cells">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="cell" type="ns1:NestedComponent"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApFilterPanelProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApGrid">
    <xs:annotation>
      <xs:documentation><![CDATA[Грид]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApGridProfile"/>
          <xs:element minOccurs="0" name="cells">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="cell" type="pkg:ApGridCellNestedComponent"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApGridProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApGridCellNestedComponent">
    <xs:complexContent>
      <xs:extension base="ns1:NestedComponent">
        <xs:sequence/>
        <xs:attribute name="border" type="xs:boolean"/>
        <xs:attribute name="width" type="xs:int" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLegend">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент легенды]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApLegendProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLegendProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="column" type="pkg:ApLegendColumn"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLegendColumn">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="bullet" type="pkg:ApLegendBullet"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLegendBullet">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="css" type="pkg:Css"/>
          <xs:element minOccurs="0" name="marker" type="pkg:Marker"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="point" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="Css">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="color" type="xs:string"/>
        <xs:attribute name="backgroundColor" type="xs:string"/>
        <xs:attribute name="fontStyle" type="pkg:FontStyle"/>
        <xs:attribute name="fontWeight" type="pkg:FontWeight"/>
        <xs:attribute name="textAlign" type="pkg:TextAlign"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="Marker">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="type" type="xs:string"/>
        <xs:attribute name="tooltip" type="xs:string"/>
        <xs:attribute name="set" type="pkg:MarkerSet" use="required"/>
        <xs:attribute name="color" type="pkg:MarkerColor"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLineChart">
    <xs:annotation>
      <xs:documentation><![CDATA[Линейная диаграмма]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApLineChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApLineChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:ChartColumnAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="pkg:ChartRowAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:ChartValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="stacked" type="xs:boolean"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPager">
    <xs:annotation>
      <xs:documentation><![CDATA[Компонент выбора страницы]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApPagerProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPagerProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="pagesButtonCount" type="xs:int"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="onchange">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPanel">
    <xs:annotation>
      <xs:documentation><![CDATA[Панель]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApPanelProfile"/>
          <xs:element minOccurs="0" name="head" type="ns1:NestedComponent">
            <xs:annotation>
              <xs:documentation><![CDATA[Компонент в шапке панели]]></xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="0" name="body" type="ns1:NestedComponent">
            <xs:annotation>
              <xs:documentation><![CDATA[Компонент в основной области панели]]></xs:documentation>
            </xs:annotation>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPanelProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="collapsed" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="condensed" type="xs:boolean"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="collapseable" type="xs:boolean"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPeriod">
    <xs:annotation>
      <xs:documentation><![CDATA[Выбор периода дат]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApPeriodProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPeriodProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="minDate" type="ns1:DatetimeBindable"/>
          <xs:element minOccurs="0" name="maxDate" type="ns1:DatetimeBindable"/>
          <xs:element minOccurs="0" name="from" type="ns1:DatetimeBindable"/>
          <xs:element minOccurs="0" name="to" type="ns1:DatetimeBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="format" type="xs:string"/>
        <xs:attribute name="onchange">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPieChart">
    <xs:annotation>
      <xs:documentation><![CDATA[График]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApPieChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPieChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:ChartRowAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:ChartValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="holeRadius" type="xs:int"/>
        <xs:attribute name="idField" type="xs:string"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPivotTable">
    <xs:annotation>
      <xs:documentation><![CDATA[Сводная таблица]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApPivotTableProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApPivotTableProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:PivotAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="pkg:PivotAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:PivotValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="totalRows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="totalRow" type="pkg:PivotTotalRow"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rules">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="rule" type="pkg:Rule"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="exports">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="export" type="pkg:PivotExport"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotAxis">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="field" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotValue">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
          <xs:element minOccurs="0" name="barChart" type="pkg:PivotBarChart"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="url" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotBarChart">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="positiveColor" type="xs:string"/>
        <xs:attribute name="negativeColor" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotTotalRow">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="total" type="pkg:PivotTotal"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="axisId" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotTotal">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="valueId" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="Rule">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="css" type="pkg:Css"/>
          <xs:element minOccurs="0" name="marker" type="pkg:Marker"/>
          <xs:element minOccurs="0" name="cell" type="pkg:CellRule"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="for" use="required">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="if" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="CellRule">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="tooltip" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="PivotExport">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="allPages" type="xs:boolean"/>
        <xs:attribute name="format" type="pkg:Format" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApRadioGroup">
    <xs:annotation>
      <xs:documentation><![CDATA[Группа переключателей]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApRadioGroupProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApRadioGroupProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string" use="required"/>
        <xs:attribute name="textField" type="xs:string" use="required"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="type" type="pkg:RadioGroupType"/>
        <xs:attribute name="onchange">
          <xs:simpleType>
            <xs:list itemType="xs:string"/>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApScatterChart">
    <xs:annotation>
      <xs:documentation><![CDATA[Точечная диаграмма по категориям]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApScatterChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApScatterChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
          <xs:element minOccurs="0" name="cols">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="col" type="pkg:ChartColumnAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="pkg:ChartRowAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="values">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="value" type="pkg:ChartValue"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="stacked" type="xs:boolean"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="idField" type="xs:string"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApScatterXyChart">
    <xs:annotation>
      <xs:documentation><![CDATA[Точечная диаграмма по координатам]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApScatterXyChartProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApScatterXyChartProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
          <xs:element name="xAxes">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" name="xAxis" type="pkg:XYChartAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element name="yAxes">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" name="yAxis" type="pkg:XYChartAxis"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="points">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="point" type="pkg:XYChartPoint"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="showLegend" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="idField" type="xs:string"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="palette" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="XYChartAxis">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="type" type="pkg:ChartValueType" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="XYChartPoint">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="label" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApSensor">
    <xs:annotation>
      <xs:documentation><![CDATA[Датчик (отображение одного или нескольких значений)]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApSensorProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApSensorProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element name="cells">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" name="cell" type="pkg:SensorCell"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rules">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="rule" type="pkg:Rule"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
        <xs:attribute name="orientation" type="pkg:Orientation"/>
        <xs:attribute name="titlePosition" type="pkg:SensorTitlePosition"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="SensorCell">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApStack">
    <xs:annotation>
      <xs:documentation><![CDATA[Стэк]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApStackProfile"/>
          <xs:element minOccurs="0" name="cells">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="cell" type="pkg:ApStackCellNestedComponent"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApStackProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence/>
        <xs:attribute name="spacing" type="xs:int"/>
        <xs:attribute name="orientation" type="pkg:Orientation" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApStackCellNestedComponent">
    <xs:complexContent>
      <xs:extension base="ns1:NestedComponent">
        <xs:sequence/>
        <xs:attribute name="border" type="xs:boolean"/>
        <xs:attribute name="height" type="xs:int"/>
        <xs:attribute name="width" type="xs:int"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApTable">
    <xs:annotation>
      <xs:documentation><![CDATA[Таблица]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApTableProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApTableProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="current" type="ns1:StringBindable"/>
          <xs:element minOccurs="0" name="columns">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="column" type="pkg:TableColumn"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="group" type="pkg:TableGroup"/>
          <xs:element minOccurs="0" name="totalRows">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="totalRow" type="pkg:TableTotalRow"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="rules">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="rule" type="pkg:Rule"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" name="exports">
            <xs:complexType>
              <xs:sequence>
                <xs:element maxOccurs="unbounded" minOccurs="0" name="export" type="pkg:TableExport"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute name="placeholder" type="xs:string"/>
        <xs:attribute name="idField" type="xs:string"/>
        <xs:attribute name="hidePagination" type="xs:boolean"/>
        <xs:attribute name="setFirst" type="xs:boolean"/>
        <xs:attribute name="dataset" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableColumn">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="isHeaderColumn" type="ns1:ExpressionBindable"/>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
          <xs:element minOccurs="0" name="headerStyle" type="pkg:HeaderStyle"/>
          <xs:element minOccurs="0" name="barChart" type="pkg:TableBarChart"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="title" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="columnGroup" type="xs:string"/>
        <xs:attribute name="orderBy" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="HeaderStyle">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="css" type="pkg:Css"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableBarChart">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:attribute name="positiveColor" type="xs:string"/>
        <xs:attribute name="negativeColor" type="xs:string"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableGroup">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="field" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableTotalRow">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
          <xs:element maxOccurs="unbounded" minOccurs="0" name="total" type="pkg:TableTotal"/>
        </xs:sequence>
        <xs:attribute name="showInGroup" type="xs:boolean"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableTotal">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence>
          <xs:element minOccurs="0" name="hidden" type="ns1:ExpressionBindable"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:normalizedString" use="required"/>
        <xs:attribute name="for" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="TableExport">
    <xs:complexContent>
      <xs:extension base="ns1:Element">
        <xs:sequence/>
        <xs:attribute name="allPages" type="xs:boolean"/>
        <xs:attribute name="format" type="pkg:Format" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApText">
    <xs:annotation>
      <xs:documentation><![CDATA[Текст]]></xs:documentation>
    </xs:annotation>
    <xs:complexContent>
      <xs:extension base="ns1:Component">
        <xs:sequence>
          <xs:element maxOccurs="unbounded" name="profile" type="pkg:ApTextProfile"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:complexType final="extension restriction" name="ApTextProfile">
    <xs:complexContent>
      <xs:extension base="ns1:Profile">
        <xs:sequence>
          <xs:element minOccurs="0" name="css" type="pkg:Css"/>
        </xs:sequence>
        <xs:attribute name="text" type="xs:string"/>
        <xs:attribute name="type" type="pkg:TextType"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:simpleType name="Orientation">
    <xs:restriction base="xs:string">
      <xs:enumeration value="horizontal"/>
      <xs:enumeration value="vertical"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ChartValueType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="int"/>
      <xs:enumeration value="number"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ButtonType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="success"/>
      <xs:enumeration value="link"/>
      <xs:enumeration value="danger"/>
      <xs:enumeration value="default"/>
      <xs:enumeration value="primary"/>
      <xs:enumeration value="info"/>
      <xs:enumeration value="warning"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ButtonMode">
    <xs:restriction base="xs:string">
      <xs:enumeration value="apply"/>
      <xs:enumeration value="default"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="CheckboxType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="default"/>
      <xs:enumeration value="switch"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="CheckboxGroupType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="buttons"/>
      <xs:enumeration value="default"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="FontStyle">
    <xs:restriction base="xs:string">
      <xs:enumeration value="italic"/>
      <xs:enumeration value="normal"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="FontWeight">
    <xs:restriction base="xs:string">
      <xs:enumeration value="bold"/>
      <xs:enumeration value="normal"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="TextAlign">
    <xs:restriction base="xs:string">
      <xs:enumeration value="right"/>
      <xs:enumeration value="left"/>
      <xs:enumeration value="center"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="MarkerSet">
    <xs:restriction base="xs:string">
      <xs:enumeration value="badge"/>
      <xs:enumeration value="circle"/>
      <xs:enumeration value="triangle"/>
      <xs:enumeration value="circleBordered"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="MarkerColor">
    <xs:restriction base="xs:string">
      <xs:enumeration value="navy"/>
      <xs:enumeration value="silver"/>
      <xs:enumeration value="black"/>
      <xs:enumeration value="blue"/>
      <xs:enumeration value="green2"/>
      <xs:enumeration value="orange"/>
      <xs:enumeration value="darkgray"/>
      <xs:enumeration value="red"/>
      <xs:enumeration value="blue2"/>
      <xs:enumeration value="green"/>
      <xs:enumeration value="yellow"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="Format">
    <xs:restriction base="xs:string">
      <xs:enumeration value="excel"/>
      <xs:enumeration value="pdf"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="RadioGroupType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="default"/>
      <xs:enumeration value="buttons"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="SensorTitlePosition">
    <xs:restriction base="xs:string">
      <xs:enumeration value="bottom"/>
      <xs:enumeration value="top"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="TextType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="plain"/>
      <xs:enumeration value="html"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

@JanErikFoss
Copy link

I'm having the same problem. Hoping this will be fixed soon.

@bbpennel
Copy link
Member

bbpennel commented Jul 8, 2016

It seems that the elements defined in elements.xsd are included via BaseNestedComponent through an xs:any allowing for things from any other namespace, is that correct? Based on that, my understanding is that you would need to import rather than include elements.xsd in the report schema since they need to be in their http://analytics.com/components/v1.1 namespace, while include is intended to be used for pulling in schemas into the same target namespace.

When testing, I didn't actually receive the same error you mentioned, so I may need to see the code that is setting up the editor and extracting the schema.

But the editor works correctly for me if your first schema (report.xsd maybe?) to begin with the following:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:report="http://analytics.com/report/v1.1" 
    xmlns:component="http://analytics.com/components/v1.1" 
    targetNamespace="http://analytics.com/report/v1.1" 
    elementFormDefault="qualified" version="1.0">
  <xs:import schemaLocation="elements.xsd"/>

Where I added the component namespace declaration and switched to xs:import

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants