File: /var/www/vhost/disk-apps/magento.bikenow.co/vendor/magento/module-analytics/etc/reports.xsd
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="config">
<xs:complexType>
<xs:sequence>
<xs:element name="report" type="reportDeclaration" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="reportDeclaration">
<xs:sequence>
<xs:element name="source" type="sourceDeclaration" minOccurs="1" maxOccurs="1" />
<xs:any minOccurs="0"/>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="connection" type="xs:string"/>
<xs:attribute name="iterator" type="xs:string"/>
</xs:complexType>
<xs:complexType name="sourceDeclaration">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="attribute" type="attributeDeclaration" minOccurs="1" maxOccurs="unbounded" />
<xs:element name="link-source" type="linkSourceDeclaration" minOccurs="0" maxOccurs="61" />
<xs:element name="filter" type="filterDeclaration" minOccurs="0" maxOccurs="unbounded" />
</xs:choice>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="alias" type="xs:string"/>
</xs:complexType>
<xs:complexType name="linkSourceDeclaration">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="attribute" type="attributeDeclaration" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="filter" type="filterDeclaration" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="using" type="filterDeclaration" minOccurs="1" maxOccurs="unbounded" />
</xs:choice>
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="alias" type="xs:string"/>
<xs:attribute name="link-type" type="xs:string"/>
</xs:complexType>
<xs:complexType name="attributeDeclaration">
<xs:attribute name="name" type="xs:string" use="required"/>
<xs:attribute name="alias" type="xs:string"/>
<xs:attribute name="function" type="functionDeclaration"/>
<xs:attribute name="group" type="xs:boolean" default="false"/>
<xs:attribute name="distinct" type="xs:boolean" default="false"/>
</xs:complexType>
<xs:complexType name="filterDeclaration">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="filter" type="filterDeclaration" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="condition" type="conditionDeclaration" minOccurs="1" maxOccurs="unbounded" />
</xs:choice>
<xs:attribute name="glue" type="glueType" default="and" />
</xs:complexType>
<xs:complexType name="conditionDeclaration" mixed="true">
<xs:attribute name="attribute" type="xs:string" use="required" />
<xs:attribute name="operator" type="xs:string" use="required" />
<xs:attribute name="type" type="valueType" default="value" />
</xs:complexType>
<xs:simpleType name="valueType">
<xs:restriction base="xs:string">
<xs:enumeration value="value" />
<xs:enumeration value="variable" />
<xs:enumeration value="identifier" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="functionDeclaration">
<xs:restriction base="xs:string">
<xs:enumeration value="count" />
<xs:enumeration value="lower" />
<xs:enumeration value="date" />
<xs:enumeration value="sum" />
<xs:enumeration value="max" />
<xs:enumeration value="avg" />
<xs:enumeration value="min" />
<xs:enumeration value="sha1" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="glueType">
<xs:restriction base="xs:string">
<xs:enumeration value="and" />
<xs:enumeration value="or" />
</xs:restriction>
</xs:simpleType>
</xs:schema>