MINI MINI MANI MO
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="file://rdbms/xml/orarep/report.xsd"/>
<xs:include schemaLocation="file://rdbms/xml/orarep/report_ref.xsd"/>
<xs:include schemaLocation="file://rdbms/xml/orarep/stat.xsd"/>
<xs:include schemaLocation="file://rdbms/xml/orarep/stat_group.xsd"/>
<xs:include schemaLocation="file://rdbms/xml/orarep/info.xsd"/>
<xs:include schemaLocation="file://rdbms/xml/orarep/info_group.xsd"/>
<!-- Create a schema for a set of lower-level elements -->
<xs:element name="counts">
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:choice>
<xs:element ref="stat"/>
<xs:element ref="stat_group"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="statement_stats">
<xs:complexType>
<xs:sequence>
<xs:element ref="counts"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- FIXME duplicated with auto_summary, need to create new file -->
<!-- of shared tags -->
<xs:element name="finding_stats">
<xs:complexType>
<xs:sequence>
<xs:element ref="counts"/>
<xs:element name="benefits">
<xs:complexType>
<xs:sequence>
<xs:element ref="stat_group" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sqlset_info">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" />
<xs:element name="owner" type="xs:string" />
<xs:element name="description" type="xs:string" />
<xs:element name="nb_sql" type="xs:nonNegativeInteger" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sysstat_finding_summary">
<xs:complexType>
<xs:sequence>
<xs:element ref="info_group" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- elements for statistic and index summary information -->
<!-- FIXME these should go into a shared library -->
<!-- of utility tags needed by both sqltune and auto sqltune -->
<xs:element name="stat_finding_summary">
<xs:complexType>
<xs:sequence>
<xs:element name="object" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element ref="info_group" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="index_finding_summary">
<xs:complexType>
<xs:sequence>
<xs:element name="index" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element ref="info_group" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- Put these elements together to form the report schema -->
<xs:element name="report">
<xs:complexType>
<xs:complexContent>
<xs:extension base="reportType">
<xs:sequence>
<xs:element name="summary">
<xs:complexType>
<xs:sequence>
<xs:element name="sqlset_info" minOccurs="0" />
<xs:element name="sql_task">
<xs:complexType>
<xs:sequence>
<xs:element ref="info_group" minOccurs="2" maxOccurs="2" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="statistics">
<xs:complexType>
<xs:sequence>
<xs:element ref="statement_stats"/>
<xs:element ref="finding_stats"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="sysstat_finding_summary" />
<xs:element ref="stat_finding_summary" />
<xs:element ref="index_finding_summary" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>
OHA YOOOO