Please note that the contents of this offline web site may be out of date. To access the most recent documentation visit the online version .
Note that links that point to online resources are green in color and will open in a new window.
We would love it if you could give us feedback about this material by filling this form (You have to be online to fill it)



PMML Preprocessing

The Google Prediction API now supports preprocessing your data against a PMML transform specified using PMML 4.0 syntax. Google Prediction does not currently support importing a complete PMML model that includes data. PMML preprocessing can be applied to both categorical or regression models.

Basic Usage

Specify a transformation to apply to your data using a subset of the PMML 4.0 syntax. The resulting transformed file will be used to train your model.

Google Prediction supports the following main elements:

  • <DataDictionary> - This element maps <DataField> elements to features in your original input file. Every child <DataField> element is assigned to an input field. These elements will be referenced by the <TransformationDictionary> elements. The supported data types for <DataField> elements are string, integer, float, double, and boolean. Note that the label or regression value is never referenced or transformed, but is imported unchanged for each example.
  • <TransformationDictionary> - This element describes how each example should be transformed. Values can be constants, modified <DataField> values, or unmodified <DataField> values. Your output file can have more or fewer columns than your input file. Note that the <EXPRESSION> element supports all child elements except <Aggregate> . To include an unmodified feature from the input data, simply specify a <FieldRef> element for that feature.

Note: None of the <...Model> elements are supported. For example: <AssociationModel> , <NaiveBayesModel> , and <TextModel> .

You can find a complete description of all supported elements and attributes below. You can find the full PMML standard at http://dmg.org/pmml-v4-0-1.html .

Example

The following example preprocesses a three-example regression data file with one feature and one value. The training data attempts to train a model that learns the function y=1 + 2*x + x 2 from a set of examples, given 1, x, and x 2 (that is, Prediction will learn the 2*x coefficient through machine learning). The input data consists of two features: y and x. The output data has three features: y, 1, x, x 2 :

Source Data CSV
(y, x)
PMML Transformation Processed Data CSV
4, 1
9, 2
16, 3

y, 1, x, x 2 4, 1, 1, 1
9, 1, 2, 4
16, 1, 3, 9

PMML Transform:

<PMML version="4.0"
    xsi:schemaLocation="http://www.dmg.org/PMML-4_0
    http://www.dmg.org/v4-0/pmml-4-0.xsd"
    xmlns="http://www.dmg.org/PMML-4_0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Header copyright="Copyright (c) 2011 Google, Inc.  All rights reserved.">
    <Application name="Google Prediction API Sample" version="1.4"/>
  </Header>
  <DataDictionary numberOfFields="1">
    <DataField name="X" optype="continuous" dataType="double"/>
  </DataDictionary>
  <TransformationDictionary>
    <DerivedField name="Y1" dataType="double" optype="continuous">
      <Constant>1.0</Constant>
    </DerivedField>
    <DerivedField name="Y2" dataType="double" optype="continuous">
      <FieldRef field="X"/>
    </DerivedField>
    <DerivedField name="Y3" dataType="double" optype="continuous">
      <Apply function="pow">
        <FieldRef field="X"/>
        <Constant>2.0</Constant>
      </Apply>
    </DerivedField>
  </TransformationDictionary>
</PMML>

Detailed Schema

The following schema shows exactly which elements and attributes are supported. The supported elements and attributes are shown in black; the unsupported elements and attributes are shown in gray. You can toggle the page to show or hide both supported and unsupported elements.

Show both (Supported: black; Unsupported: gray)

<xs:schema
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.dmg.org/PMML-4_0"
    xmlns="http://www.dmg.org/PMML-4_0"
    elementFormDefault="unqualified">
  <xs:element name="PMML">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Header"/>
        <xs:element ref="MiningBuildTask" minOccurs="0"/>
        <xs:element ref="DataDictionary"/>
        <xs:element ref="TransformationDictionary" minOccurs="0"/>
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
         <xs:choice>
            <xs:element ref="AssociationModel"/>
            <xs:element ref="ClusteringModel"/>
            <xs:element ref="GeneralRegressionModel"/>
            <xs:element ref="MiningModel"/>
            <xs:element ref="NaiveBayesModel"/>
            <xs:element ref="NeuralNetwork"/>
            <xs:element ref="RegressionModel"/>
            <xs:element ref="RuleSetModel"/>
            <xs:element ref="SequenceModel"/>
            <xs:element ref="SupportVectorMachineModel"/>
            <xs:element ref="TextModel"/>
            <xs:element ref="TimeSeriesModel"/>
            <xs:element ref="TreeModel"/>
          </xs:choice>
        </xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="version" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MiningBuildTask">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MINING-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="associationRules"/>
      <xs:enumeration value="sequences"/>
      <xs:enumeration value="classification"/>
      <xs:enumeration value="regression"/>
      <xs:enumeration value="clustering"/>
      <xs:enumeration value="timeSeries"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Extension">
    <xs:complexType>
      <xs:complexContent mixed="true">
        <xs:restriction base="xs:anyType">
          <xs:sequence>
            <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:attribute name="extender" type="xs:string" use="optional"/>
          <xs:attribute name="name" type="xs:string" use="optional"/>
          <xs:attribute name="value" type="xs:string" use="optional"/>
        </xs:restriction>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="NUMBER">
    <xs:restriction base="xs:double">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INT-NUMBER">
    <xs:restriction base="xs:integer">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="REAL-NUMBER">
    <xs:restriction base="xs:double">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PROB-NUMBER">
    <xs:restriction base="xs:decimal">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PERCENTAGE-NUMBER">
    <xs:restriction base="xs:decimal">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FIELD-NAME">
    <xs:restriction base="xs:string">
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ArrayType" mixed="true">
    <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
    <xs:attribute name="type" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="int"/>
          <xs:enumeration value="real"/>
          <xs:enumeration value="string"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>
 <xs:element name="Array" type="ArrayType"/>
  <xs:group name="NUM-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="INT-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="REAL-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="STRING-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:element name="INT-SparseArray">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Indices" minOccurs="0"/>
        <xs:element ref="INT-Entries" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="defaultValue" type="INT-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="REAL-SparseArray">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Indices" minOccurs="0"/>
        <xs:element ref="REAL-Entries" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="defaultValue" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Indices">
    <xs:simpleType>
      <xs:list itemType="xs:int"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="INT-Entries">
    <xs:simpleType>
      <xs:list itemType="xs:int"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="REAL-Entries">
    <xs:simpleType>
      <xs:list itemType="xs:double"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="Matrix">
    <xs:complexType>
      <xs:choice minOccurs="0">
        <xs:group ref="NUM-ARRAY" maxOccurs="unbounded"/>
        <xs:element ref="MatCell" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attribute name="kind" use="optional" default="any" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="diagonal"/>
            <xs:enumeration value="symmetric"/>
            <xs:enumeration value="any"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="nbRows" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="nbCols" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="diagDefault" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="offDiagDefault" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MatCell">
    <xs:complexType >
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="row" type="INT-NUMBER" use="required"/>
          <xs:attribute name="col" type="INT-NUMBER" use="required"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="Header">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" ref="Application"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Annotation"/>
        <xs:element minOccurs="0" ref="Timestamp"/>
      </xs:sequence>
      <xs:attribute name="copyright" type="xs:string" use="required"/>
      <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Application">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="version" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Annotation">
    <xs:complexType mixed="true">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Timestamp">
    <xs:complexType mixed="true">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DataDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DataField" maxOccurs="unbounded"/>
        <xs:element ref="Taxonomy" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfFields" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DataField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="Interval" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="Value"    minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE" use="required"/>
      <xs:attribute name="taxonomy" type="xs:string"/>
      <xs:attribute name="isCyclic" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="OPTYPE">      
    <xs:restriction base="xs:string">
      <xs:enumeration value="categorical"/>
      <xs:enumeration value="ordinal"/>
      <xs:enumeration value="continuous"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DATATYPE">      
    <xs:restriction base="xs:string">
      <xs:enumeration value="string"/>
      <xs:enumeration value="integer"/>
      <xs:enumeration value="float"/>
      <xs:enumeration value="double"/>
      <xs:enumeration value="boolean"/>
      <xs:enumeration value="date"/>
      <xs:enumeration value="time"/>
      <xs:enumeration value="dateTime"/>
      <xs:enumeration value="dateDaysSince[0]"/>
      <xs:enumeration value="dateDaysSince[1960]"/>
      <xs:enumeration value="dateDaysSince[1970]"/>
      <xs:enumeration value="dateDaysSince[1980]"/>
      <xs:enumeration value="timeSeconds"/>
      <xs:enumeration value="dateTimeSecondsSince[0]"/>
      <xs:enumeration value="dateTimeSecondsSince[1960]"/>
      <xs:enumeration value="dateTimeSecondsSince[1970]"/>
      <xs:enumeration value="dateTimeSecondsSince[1980]"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Value">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="displayValue" type="xs:string"/>
      <xs:attribute name="property" default="valid">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="valid"/>
            <xs:enumeration value="invalid"/>
            <xs:enumeration value="missing"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Interval">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="closure" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="openClosed"/>
            <xs:enumeration value="openOpen"/>
            <xs:enumeration value="closedOpen"/>
            <xs:enumeration value="closedClosed"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="leftMargin" type="NUMBER"/>
      <xs:attribute name="rightMargin" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DefineFunction">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ParameterField" minOccurs="1" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParameterField">
    <xs:complexType>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Apply">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="function" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Taxonomy">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ChildParent" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ChildParent">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="TableLocator"/>
          <xs:element ref="InlineTable"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="childField" type="xs:string" use="required"/>
      <xs:attribute name="parentField" type="xs:string" use="required"/>
      <xs:attribute name="parentLevelField" type="xs:string" use="optional"/>
      <xs:attribute name="isRecursive" use="optional" default="no">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="no"/>
            <xs:enumeration value="yes"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TableLocator">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="InlineTable">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="row" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="row">
    <xs:complexType>
      <xs:complexContent mixed="true">
        <xs:restriction base="xs:anyType">
          <xs:sequence>
            <xs:any processContents="skip" minOccurs="2" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:restriction>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:group name="EXPRESSION">
    <xs:choice>
      <xs:element ref="Constant"/>
      <xs:element ref="FieldRef"/>
      <xs:element ref="NormContinuous"/>
      <xs:element ref="NormDiscrete"/>
      <xs:element ref="Discretize"/>
      <xs:element ref="MapValues"/>
      <xs:element ref="Apply"/>
      <xs:element ref="Aggregate"/>
    </xs:choice>
  </xs:group>
  <xs:element name="TransformationDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DefineFunction"  minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="LocalTransformations">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DerivedField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION"/>
        <xs:element ref="Value" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Constant">
    <xs:complexType>
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="dataType" type="DATATYPE"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="FieldRef">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NormContinuous">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LinearNorm" minOccurs="2" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="mapMissingTo" type="NUMBER"/>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="outliers" type="OUTLIER-TREATMENT-METHOD" default="asIs"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="LinearNorm">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="orig" type="NUMBER" use="required"/>
      <xs:attribute name="norm" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NormDiscrete">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="method" fixed="indicator" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="indicator"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="mapMissingTo" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Discretize">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DiscretizeBin" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="mapMissingTo" type="xs:string"/>
      <xs:attribute name="defaultValue" type="xs:string"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DiscretizeBin">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Interval"/>
      </xs:sequence>
      <xs:attribute name="binValue" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MapValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="FieldColumnPair"/>
        <xs:choice minOccurs="0">
          <xs:element ref="TableLocator"/>
          <xs:element ref="InlineTable"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="mapMissingTo" type="xs:string"/>
      <xs:attribute name="defaultValue" type="xs:string"/>
      <xs:attribute name="outputColumn" type="xs:string" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="FieldColumnPair">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="column" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Aggregate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="function" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="count"/>
            <xs:enumeration value="sum"/>
            <xs:enumeration value="average"/>
            <xs:enumeration value="min"/>
            <xs:enumeration value="max"/>
            <xs:enumeration value="multiset"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="groupField" type="FIELD-NAME"/>
      <xs:attribute name="sqlWhere" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MiningSchema">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="MiningField"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="MiningField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="usageType" type="FIELD-USAGE-TYPE" default="active"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="importance" type="PROB-NUMBER"/>
      <xs:attribute name="outliers" type="OUTLIER-TREATMENT-METHOD" default="asIs"/>
      <xs:attribute name="lowValue" type="NUMBER"/>
      <xs:attribute name="highValue" type="NUMBER"/>
      <xs:attribute name="missingValueReplacement" type="xs:string"/>
      <xs:attribute name="missingValueTreatment" type="MISSING-VALUE-TREATMENT-METHOD"/>
      <xs:attribute name="invalidValueTreatment" type="INVALID-VALUE-TREATMENT-METHOD" default="returnInvalid"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="FIELD-USAGE-TYPE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="active"/>
      <xs:enumeration value="predicted"/>
      <xs:enumeration value="supplementary"/>
      <xs:enumeration value="group"/>
      <xs:enumeration value="order"/>
      <xs:enumeration value="frequencyWeight"/>
      <xs:enumeration value="analysisWeight"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="OUTLIER-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMissingValues"/>
      <xs:enumeration value="asExtremeValues"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="MISSING-VALUE-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMean"/>
      <xs:enumeration value="asMode"/>
      <xs:enumeration value="asMedian"/>
      <xs:enumeration value="asValue"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INVALID-VALUE-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="returnInvalid"/>
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMissing"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ModelStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="UnivariateStats" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UnivariateStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Counts" minOccurs="0"/>
        <xs:element ref="NumericInfo" minOccurs="0"/>
        <xs:element ref="DiscrStats" minOccurs="0"/>
        <xs:element ref="ContStats" minOccurs="0"/>
        <xs:element ref="Anova" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME"/>
      <xs:attribute name="weighted" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Counts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="totalFreq" type="NUMBER" use="required"/>
      <xs:attribute name="missingFreq" type="NUMBER"/>
      <xs:attribute name="invalidFreq" type="NUMBER"/>
      <xs:attribute name="cardinality" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NumericInfo">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Quantile" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="minimum" type="NUMBER"/>
      <xs:attribute name="maximum" type="NUMBER"/>
      <xs:attribute name="mean" type="NUMBER"/>
      <xs:attribute name="standardDeviation" type="NUMBER"/>
      <xs:attribute name="median" type="NUMBER"/>
      <xs:attribute name="interQuartileRange" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Quantile">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="quantileLimit" type="PERCENTAGE-NUMBER" use="required"/>
      <xs:attribute name="quantileValue" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DiscrStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Array" minOccurs="0" maxOccurs="2"/>
      </xs:sequence>
      <xs:attribute name="modalValue" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ContStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Interval" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="FrequenciesType" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="totalValuesSum" type="NUMBER"/>
      <xs:attribute name="totalSquaresSum" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="FrequenciesType">
    <xs:sequence>
      <xs:group ref="NUM-ARRAY" minOccurs="1" maxOccurs="3"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="Anova">
    <xs:complexType>
          <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AnovaRow" minOccurs="3" maxOccurs="3"/>
      </xs:sequence>
      <xs:attribute name="target" type="FIELD-NAME"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AnovaRow">
    <xs:complexType>
          <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="type" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Model"/>
            <xs:enumeration value="Error"/>
            <xs:enumeration value="Total"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="sumOfSquares" type="NUMBER" use="required"/>
      <xs:attribute name="degreesOfFreedom" type="NUMBER" use="required"/>
      <xs:attribute name="meanOfSquares" type="NUMBER"/>
      <xs:attribute name="fValue" type="NUMBER"/>
      <xs:attribute name="pValue" type="PROB-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Partition">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PartitionFieldStats" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="size" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PartitionFieldStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Counts" minOccurs="0"/>
        <xs:element ref="NumericInfo" minOccurs="0"/>
        <xs:group ref="FrequenciesType" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="weighted" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Output">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="OutputField" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OutputField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
      <xs:attribute name="targetField" type="FIELD-NAME"/>
      <xs:attribute name="feature" type="RESULT-FEATURE"/>
      <xs:attribute name="value" type="xs:string"/>
      <xs:attribute name="ruleFeature" type="RULE-FEATURE" default="consequent"/>
      <xs:attribute name="algorithm" default="exclusiveRecommendation">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="recommendation"/>
            <xs:enumeration value="exclusiveRecommendation"/>
            <xs:enumeration value="ruleAssociation"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="rank" type="INT-NUMBER" default="1"/>
      <xs:attribute name="rankBasis" default="confidence">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="confidence"/>
            <xs:enumeration value="support"/>
            <xs:enumeration value="lift"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="rankOrder" default="descending">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="descending"/>
            <xs:enumeration value="ascending"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="isMultiValued" default="0"/>
   </xs:complexType>
  </xs:element>
  <xs:simpleType name="RESULT-FEATURE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="predictedValue"/>
      <xs:enumeration value="predictedDisplayValue"/>
      <xs:enumeration value="probability"/>
      <xs:enumeration value="residual"/>
      <xs:enumeration value="standardError"/>
      <xs:enumeration value="clusterId"/>
      <xs:enumeration value="clusterAffinity"/>
      <xs:enumeration value="entityId"/>
      <xs:enumeration value="entityAffinity"/>
      <xs:enumeration value="warning"/>
      <xs:enumeration value="ruleValue"/>    
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RULE-FEATURE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="antecedent"/>
      <xs:enumeration value="consequent"/>
      <xs:enumeration value="rule"/>
      <xs:enumeration value="ruleId"/>
      <xs:enumeration value="confidence"/>
      <xs:enumeration value="support"/>
      <xs:enumeration value="lift"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Targets">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Target" maxOccurs="unbounded"  />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Target">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="castInteger" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="round"/>
            <xs:enumeration value="ceiling"/>
            <xs:enumeration value="floor"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="min" type="xs:double"/>
      <xs:attribute name="max" type="xs:double"/>
      <xs:attribute name="rescaleConstant" type="xs:double" default="0"/>
      <xs:attribute name="rescaleFactor" type="xs:double" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValue">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Partition" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string"/>
      <xs:attribute name="displayValue" type="xs:string"/>
      <xs:attribute name="priorProbability" type="PROB-NUMBER"/>
      <xs:attribute name="defaultValue" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralNetwork">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="NeuralInputs"/>
        <xs:element maxOccurs="unbounded" ref="NeuralLayer"/>
        <xs:element minOccurs="0" ref="NeuralOutputs"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="activationFunction" type="ACTIVATION-FUNCTION" use="required"/>
      <xs:attribute name="normalizationMethod" type="NN-NORMALIZATION-METHOD" default="none"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER" default="1.0"/>
      <xs:attribute name="numberOfLayers" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralInputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="NeuralInput"/>
      </xs:sequence>
      <xs:attribute name="numberOfInputs" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralLayer">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="Neuron"/>
      </xs:sequence>
      <xs:attribute name="numberOfNeurons" type="xs:nonNegativeInteger"/>
      <xs:attribute name="activationFunction" type="ACTIVATION-FUNCTION"/>
      <xs:attribute name="threshold" type="REAL-NUMBER"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER"/>
      <xs:attribute name="normalizationMethod" type="NN-NORMALIZATION-METHOD"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralOutputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="NeuralOutput"/>
      </xs:sequence>
      <xs:attribute name="numberOfOutputs" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="ACTIVATION-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="threshold"/>
      <xs:enumeration value="logistic"/>
      <xs:enumeration value="tanh"/>
      <xs:enumeration value="identity"/>
      <xs:enumeration value="exponential"/>
      <xs:enumeration value="reciprocal"/>
      <xs:enumeration value="square"/>
      <xs:enumeration value="Gauss"/>
      <xs:enumeration value="sine"/>
      <xs:enumeration value="cosine"/>
      <xs:enumeration value="Elliott"/>
      <xs:enumeration value="arctan"/>
      <xs:enumeration value="radialBasis"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NN-NORMALIZATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="simplemax"/>
      <xs:enumeration value="softmax"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NN-NEURON-ID">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:simpleType name="NN-NEURON-IDREF">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:element name="NeuralInput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField"/>
      </xs:sequence>
      <xs:attribute name="id" type="NN-NEURON-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Neuron">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="Con"/>
      </xs:sequence>
      <xs:attribute name="id" type="NN-NEURON-ID" use="required"/>
      <xs:attribute name="bias" type="REAL-NUMBER"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Con">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="from" type="NN-NEURON-IDREF" use="required"/>
      <xs:attribute name="weight" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralOutput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField"/>
      </xs:sequence>
      <xs:attribute name="outputNeuron" type="NN-NEURON-IDREF" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ComparisonMeasure"/>
        <xs:element ref="ClusteringField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MissingValueWeights" minOccurs="0"/>
        <xs:element ref="Cluster" maxOccurs="unbounded"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="modelClass" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="centerBased"/>
            <xs:enumeration value="distributionBased"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="numberOfClusters" type="INT-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MissingValueWeights">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Cluster">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="KohonenMap" minOccurs="0"/>
        <xs:group ref="NUM-ARRAY" minOccurs="0"/>
        <xs:element ref="Partition" minOccurs="0"/>
        <xs:element ref="Covariances" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="optional"/>
      <xs:attribute name="size" type="xs:nonNegativeInteger" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="KohonenMap">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="coord1" type="xs:float" use="optional"/>
      <xs:attribute name="coord2" type="xs:float" use="optional"/>
      <xs:attribute name="coord3" type="xs:float" use="optional"/>
      </xs:complexType>
  </xs:element>
  <xs:element name="Covariances">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Comparisons" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="isCenterField" default="true">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="true"/>
            <xs:enumeration value="false"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="fieldWeight" type="REAL-NUMBER" default="1"/>
      <xs:attribute name="similarityScale" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="compareFunction" type="COMPARE-FUNCTION" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Comparisons">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="COMPARE-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="absDiff"/>
      <xs:enumeration value="gaussSim"/>
      <xs:enumeration value="delta"/>
      <xs:enumeration value="equal"/>
      <xs:enumeration value="table"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ComparisonMeasure">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="euclidean"/>
          <xs:element ref="squaredEuclidean"/>
          <xs:element ref="chebychev"/>
          <xs:element ref="cityBlock"/>
          <xs:element ref="minkowski"/>
          <xs:element ref="simpleMatching"/>
          <xs:element ref="jaccard"/>
          <xs:element ref="tanimoto"/>
          <xs:element ref="binarySimilarity"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="kind" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="distance"/>
            <xs:enumeration value="similarity"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="compareFunction" type="COMPARE-FUNCTION" default="absDiff"/>
      <xs:attribute name="minimum" type="NUMBER" use="optional"/>
      <xs:attribute name="maximum" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="euclidean">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="squaredEuclidean">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="cityBlock">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="chebychev">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="minkowski">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="p-parameter" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="simpleMatching">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="jaccard">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="tanimoto">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="binarySimilarity">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="c00-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="c01-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="0-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="1-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d00-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d01-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d10-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d11-parameter" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AssociationModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Itemset" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AssociationRule" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTransactions" type="INT-NUMBER" use="required"/>
      <xs:attribute name="maxNumberOfItemsPerTA" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfItemsPerTA" type="REAL-NUMBER"/>
      <xs:attribute name="minimumSupport" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="minimumConfidence" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="lengthLimit" type="INT-NUMBER"/>
      <xs:attribute name="numberOfItems" type="INT-NUMBER" use="required"/>
      <xs:attribute name="numberOfItemsets" type="INT-NUMBER" use="required"/>
      <xs:attribute name="numberOfRules" type="INT-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Item">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="mappedValue" type="xs:string"/>
      <xs:attribute name="weight" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Itemset">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="ItemRef"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="support" type="PROB-NUMBER"/>
      <xs:attribute name="numberOfItems" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ItemRef">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="itemRef" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AssociationRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="antecedent" type="xs:string" use="required"/>
      <xs:attribute name="consequent" type="xs:string" use="required"/>
      <xs:attribute name="support" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="confidence" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="lift" type="xs:float" use="optional"/>
      <xs:attribute name="id" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TreeModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Node"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="missingValueStrategy" type="MISSING-VALUE-STRATEGY" default="none"/>
      <xs:attribute name="missingValuePenalty" type="PROB-NUMBER" default="1.0"/>
      <xs:attribute name="noTrueChildStrategy" type="NO-TRUE-CHILD-STRATEGY" default="returnNullPrediction"/>
      <xs:attribute name="splitCharacteristic" default="multiSplit">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="binarySplit"/>
            <xs:enumeration value="multiSplit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Node">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:choice>
          <xs:sequence>
            <xs:element ref="Partition" minOccurs="0"/>
            <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="Node" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:group ref="EmbeddedModel"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string"/>
      <xs:attribute name="score" type="xs:string"/>
      <xs:attribute name="recordCount" type="NUMBER"/>
      <xs:attribute name="defaultChild" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="PREDICATE">
    <xs:choice>
      <xs:element ref="SimplePredicate"/>
      <xs:element ref="CompoundPredicate"/>
      <xs:element ref="SimpleSetPredicate"/>
      <xs:element ref="True"/>
      <xs:element ref="False"/>
    </xs:choice>
  </xs:group>
  <xs:element name="SimplePredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="operator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="equal"/>
            <xs:enumeration value="notEqual"/>
            <xs:enumeration value="lessThan"/>
            <xs:enumeration value="lessOrEqual"/>
            <xs:enumeration value="greaterThan"/>
            <xs:enumeration value="greaterOrEqual"/>
            <xs:enumeration value="isMissing"/>
            <xs:enumeration value="isNotMissing"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="CompoundPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:sequence minOccurs="2" maxOccurs="unbounded">
          <xs:group ref="PREDICATE"/>
        </xs:sequence>
      </xs:sequence>
      <xs:attribute name="booleanOperator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="or"/>
            <xs:enumeration value="and"/>
            <xs:enumeration value="xor"/>
            <xs:enumeration value="surrogate"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="SimpleSetPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Array"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="booleanOperator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="isIn"/>
            <xs:enumeration value="isNotIn"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="True">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="False">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ScoreDistribution">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="recordCount" type="NUMBER" use="required"/>
      <xs:attribute name="confidence" type="PROB-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MISSING-VALUE-STRATEGY">
    <xs:restriction base="xs:string">
      <xs:enumeration value="lastPrediction"/>
      <xs:enumeration value="nullPrediction"/>
      <xs:enumeration value="defaultChild"/>
      <xs:enumeration value="weightedConfidence"/>
      <xs:enumeration value="aggregateNodes"/>
      <xs:enumeration value="none"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NO-TRUE-CHILD-STRATEGY">
    <xs:restriction base="xs:string">
      <xs:enumeration value="returnNullPrediction"/>
      <xs:enumeration value="returnLastPrediction"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="RegressionModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="RegressionTable" maxOccurs="unbounded"/>
        <!-- optionally, specification of the decision logic -->
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="modelType" use="optional">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="linearRegression"/>
            <xs:enumeration value="stepwisePolynomialRegression"/>
            <xs:enumeration value="logisticRegression"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="targetFieldName" type="FIELD-NAME" use="optional"/>
      <xs:attribute name="normalizationMethod" type="REGRESSIONNORMALIZATIONMETHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="REGRESSIONNORMALIZATIONMETHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="simplemax"/>
      <xs:enumeration value="softmax"/>
      <xs:enumeration value="logit"/>
      <xs:enumeration value="probit"/>
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="exp"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="cauchit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="RegressionTable">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="NumericPredictor" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="CategoricalPredictor" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PredictorTerm" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="intercept" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NumericPredictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="exponent" type="INT-NUMBER" default="1"/>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="CategoricalPredictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PredictorTerm">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="FieldRef" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSetModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="RuleSet"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSet">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="RuleSelectionMethod" minOccurs="1" maxOccurs="unbounded"/>
        <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="Rule" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="recordCount" type="NUMBER" use="optional"/>
      <xs:attribute name="nbCorrect" type="NUMBER" use="optional"/>
      <xs:attribute name="defaultScore" type="xs:string" use="optional"/>
      <xs:attribute name="defaultConfidence" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSelectionMethod">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="criterion" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="weightedSum"/>
            <xs:enumeration value="weightedMax"/>
            <xs:enumeration value="firstHit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:group name="Rule">
    <xs:choice>
      <xs:element ref="SimpleRule"/>
      <xs:element ref="CompoundRule"/>
    </xs:choice>
  </xs:group>
  <xs:element name="SimpleRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
         <xs:group ref="PREDICATE"/>
         <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:string" use="optional"/>
       <xs:attribute name="score" type="xs:string" use="required"/>
       <xs:attribute name="recordCount" type="NUMBER" use="optional"/>
       <xs:attribute name="nbCorrect" type="NUMBER" use="optional"/>
       <xs:attribute name="confidence" type="NUMBER" use="optional"/>
     <xs:attribute name="weight" type="NUMBER" use="optional"/>
   </xs:complexType>
 </xs:element>
  <xs:element name="CompoundRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:group ref="Rule" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectorMachineModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:sequence>
          <xs:choice>
            <xs:element ref="LinearKernelType"/>
            <xs:element ref="PolynomialKernelType"/>
            <xs:element ref="RadialBasisKernelType"/>
            <xs:element ref="SigmoidKernelType"/>
          </xs:choice>
        </xs:sequence>
        <xs:element ref="VectorDictionary"/>
        <xs:element ref="SupportVectorMachine" maxOccurs="unbounded"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="optional" default="0"/>
      <xs:attribute name="svmRepresentation" type="SVM-REPRESENTATION" use="optional" default="SupportVectors"/>
      <xs:attribute name="classificationMethod" type="SVM-CLASSIFICATION-METHOD" use="optional" default="OneAgainstAll"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="SVM-CLASSIFICATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="OneAgainstAll"/>
      <xs:enumeration value="OneAgainstOne"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SVM-REPRESENTATION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="SupportVectors"/>
      <xs:enumeration value="Coefficients"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="LinearKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PolynomialKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="coef0" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="degree" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RadialBasisKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SigmoidKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="coef0" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="VECTOR-ID">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:element name="VectorDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="VectorFields"/>
        <xs:element ref="VectorInstance" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfVectors" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VectorFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="FieldRef" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfFields" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VectorInstance">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="REAL-SparseArray"/>
          <xs:group ref="REAL-ARRAY"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="VECTOR-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectorMachine">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SupportVectors" minOccurs="0"/>
        <xs:element ref="Coefficients"/>
      </xs:sequence>
      <xs:attribute name="targetCategory" type="xs:string" use="optional"/>
      <xs:attribute name="alternateTargetCategory" type="xs:string" use="optional"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectors">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SupportVector" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfSupportVectors" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="numberOfAttributes" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVector">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="vectorId" type="VECTOR-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Coefficients">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Coefficient" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfCoefficients" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="absoluteValue" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Coefficient">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="TextDictionary"/>
        <xs:element ref="TextCorpus"/>
        <xs:element ref="DocumentTermMatrix"/>
        <xs:element ref="TextModelNormalization" minOccurs="0"/>
        <xs:element ref="TextModelSimiliarity" minOccurs="0"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTerms" type="xs:integer" use="required"/>
      <xs:attribute name="numberOfDocuments" type="xs:integer" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Taxonomy" minOccurs="0"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextCorpus">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TextDocument" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextDocument">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="name" type="xs:string" use="optional"/>
      <xs:attribute name="length" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="file" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DocumentTermMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModelNormalization">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="localTermWeights" default="termFrequency">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="termFrequency"/>
            <xs:enumeration value="binary"/>
            <xs:enumeration value="logarithmic"/>
            <xs:enumeration value="augmentedNormalizedTermFrequency"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="globalTermWeights" default="inverseDocumentFrequency">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="inverseDocumentFrequency"/>
            <xs:enumeration value="none"/>
            <xs:enumeration value="GFIDF"/>
            <xs:enumeration value="normal"/>
            <xs:enumeration value="probabilisticInverse"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="documentNormalization" default="none">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="none"/>
            <xs:enumeration value="cosine"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModelSimiliarity">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="similarityType">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="euclidean"/>
            <xs:enumeration value="cosine"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="GeneralRegressionModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Extension"/>
        <xs:element ref="MiningSchema"/>
        <xs:element minOccurs="0" ref="Output"/>
        <xs:element minOccurs="0" ref="ModelStats"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element minOccurs="0" ref="Targets"/>
        <xs:element minOccurs="0" ref="LocalTransformations"/>
        <xs:element ref="ParameterList"/>
        <xs:element minOccurs="0" ref="FactorList"/>
        <xs:element minOccurs="0" ref="CovariateList"/>
        <xs:element ref="PPMatrix"/>
        <xs:element minOccurs="0" ref="PCovMatrix"/>
        <xs:element ref="ParamMatrix"/>
        <xs:element minOccurs="0" ref="EventValues"/>
        <xs:element minOccurs="0" ref="BaseCumHazardTables"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="targetVariableName" type="FIELD-NAME"/>
      <xs:attribute name="modelType" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="regression"/>
            <xs:enumeration value="generalLinear"/>
            <xs:enumeration value="multinomialLogistic"/>
            <xs:enumeration value="ordinalMultinomial"/>
            <xs:enumeration value="generalizedLinear"/>
            <xs:enumeration value="CoxRegression"/>
         </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="targetReferenceCategory" type="xs:string"/>
      <xs:attribute name="cumulativeLink" type="CUMULATIVE-LINK-FUNCTION"/>
      <xs:attribute name="linkFunction" type="LINK-FUNCTION"/>
      <xs:attribute name="linkParameter" type="REAL-NUMBER"/>  
      <xs:attribute name="trialsVariable" type="FIELD-NAME"/>
      <xs:attribute name="trialsValue" type="INT-NUMBER"/>
      <xs:attribute name="distribution" >
      <xs:simpleType >
          <xs:restriction base="xs:string">
            <xs:enumeration value="binomial"/>
            <xs:enumeration value="gamma"/>
            <xs:enumeration value="igauss"/>
            <xs:enumeration value="negbin"/>
            <xs:enumeration value="normal"/>
            <xs:enumeration value="poisson"/>
            <xs:enumeration value="tweedie"/>
          </xs:restriction >
        </xs:simpleType >
      </xs:attribute >
      <xs:attribute name="distParameter" type="REAL-NUMBER"/>  
      <xs:attribute name="offsetVariable" type="FIELD-NAME"/>
      <xs:attribute name="offsetValue" type="REAL-NUMBER"/>
      <xs:attribute name="modelDF" type="REAL-NUMBER"/>
      <xs:attribute name="endTimeVariable" type="FIELD-NAME"/>
      <xs:attribute name="startTimeVariable" type="FIELD-NAME"/>
      <xs:attribute name="subjectIDVariable" type="FIELD-NAME"/>
      <xs:attribute name="statusVariable" type="FIELD-NAME"/>
      <xs:attribute name="baselineStrataVariable" type="FIELD-NAME"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParameterList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Parameter" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Parameter">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="label" type="xs:string"/>
      <xs:attribute name="referencePoint" type="REAL-NUMBER" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="FactorList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Predictor"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CovariateList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Predictor"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Predictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="contrastMatrixType" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PPMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PPCell" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PPCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="predictorName" type="FIELD-NAME" use="required"/>
      <xs:attribute name="parameterName" type="xs:string" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCovMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="PCovCell"/>
      </xs:sequence>
      <xs:attribute name="type">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="model"/>
            <xs:enumeration value="robust"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCovCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="pRow" type="xs:string" use="required"/>
      <xs:attribute name="pCol" type="xs:string" use="required"/>
      <xs:attribute name="tRow" type="xs:string"/>
      <xs:attribute name="tCol" type="xs:string"/>
      <xs:attribute name="value" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParamMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PCell" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="targetCategory" type="xs:string"/>
      <xs:attribute name="parameterName" type="xs:string" use="required"/>
      <xs:attribute name="beta" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="df" type="INT-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaseCumHazardTables">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element maxOccurs="unbounded" ref="BaselineStratum"/>
          <xs:element maxOccurs="unbounded" ref="BaselineCell"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="maxTime" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaselineStratum">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="BaselineCell"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="label" type="xs:string"/>
      <xs:attribute name="maxTime" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaselineCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="time" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="cumHazard" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="EventValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Value"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Interval"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="CUMULATIVE-LINK-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="logit"/>
      <xs:enumeration value="probit"/>
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="cauchit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="LINK-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="identity"/>
      <xs:enumeration value="log"/>
      <xs:enumeration value="logc"/>
      <xs:enumeration value="logit"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="negbin"/>
      <xs:enumeration value="oddspower"/>
      <xs:enumeration value="power"/>
      <xs:enumeration value="probit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SequenceModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Constraints" minOccurs="0"/>
        <xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Itemset" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SetPredicate" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Sequence" maxOccurs="unbounded"/>
        <xs:element ref="SequenceRule" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTransactions" type="INT-NUMBER"/>
      <xs:attribute name="maxNumberOfItemsPerTransaction" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfItemsPerTransaction" type="REAL-NUMBER"/>      
      <xs:attribute name="numberOfTransactionGroups" type="INT-NUMBER"/>
      <xs:attribute name="maxNumberOfTAsPerTAGroup" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfTAsPerTAGroup" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Constraints">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="minimumNumberOfItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumNumberOfAntecedentItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfAntecedentItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumNumberOfConsequentItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfConsequentItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumSupport" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumConfidence" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumLift" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumTotalSequenceTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumTotalSequenceTime" type="REAL-NUMBER"/>
      <xs:attribute name="minimumItemsetSeparationTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumItemsetSeparationTime" type="REAL-NUMBER"/>
      <xs:attribute name="minimumAntConsSeparationTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumAntConsSeparationTime" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="ELEMENT-ID">  
    <xs:restriction base="xs:string">
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SetPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="operator" type="xs:string" fixed="supersetOf"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="DELIMITER">
    <xs:restriction base="xs:string">
      <xs:enumeration value="sameTimeWindow"/>
      <xs:enumeration value="acrossTimeWindows"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="GAP">
    <xs:restriction base="xs:string">
      <xs:enumeration value="true"/>
      <xs:enumeration value="false"/>
      <xs:enumeration value="unknown"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Delimiter">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="delimiter" type="DELIMITER" use="required"/>
      <xs:attribute name="gap" type="GAP" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Time">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="min" type="NUMBER"/>
      <xs:attribute name="max" type="NUMBER"/>
      <xs:attribute name="mean" type="NUMBER"/>
      <xs:attribute name="standardDeviation" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="FOLLOW-SET">
    <xs:sequence>
      <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Delimiter"/>
      <xs:element ref="Time" minOccurs="0"/>
      <xs:element ref="SetReference"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="Sequence">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SetReference"/>
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
          <xs:group ref="FOLLOW-SET"/>
        </xs:sequence>
        <xs:element ref="Time" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="numberOfSets" type="INT-NUMBER"/>
      <xs:attribute name="occurrence" type="INT-NUMBER"/>
      <xs:attribute name="support" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SetReference">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="setId" type="ELEMENT-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SequenceRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AntecedentSequence"/>
        <xs:element ref="Delimiter"/>
        <xs:element ref="Time" minOccurs="0"/>
        <xs:element ref="ConsequentSequence"/>
        <xs:element ref="Time" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="numberOfSets" type="INT-NUMBER" use="required"/>
      <xs:attribute name="occurrence" type="INT-NUMBER" use="required"/>
      <xs:attribute name="support" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="confidence" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="lift" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="SEQUENCE">
    <xs:sequence>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="SequenceReference"/>
      <xs:element ref="Time" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="SequenceReference">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="seqId" type="ELEMENT-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AntecedentSequence">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="SEQUENCE"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ConsequentSequence">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="SEQUENCE"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="NaiveBayesModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
       <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="BayesInputs"/>
        <xs:element ref="BayesOutput"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesInputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="BayesInput"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesInput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" ref="DerivedField"/>
        <xs:element maxOccurs="unbounded" ref="PairCounts"/>
      </xs:sequence>
      <xs:attribute name="fieldName" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesOutput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValueCounts"/>
      </xs:sequence>
      <xs:attribute name="fieldName" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PairCounts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValueCounts"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValueCounts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="TargetValueCount"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValueCount">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="count" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ModelVerification">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="VerificationFields"/>
        <xs:element ref="InlineTable"/>
      </xs:sequence>
      <xs:attribute name="recordCount" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="fieldCount" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VerificationFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="VerificationField"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="VerificationField">
   <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="xs:string" use="required"/>
      <xs:attribute name="column" type="xs:string" use="optional"/>
      <xs:attribute name="precision" type="xs:double" default="1E-6"/>
      <xs:attribute name="zeroThreshold" type="xs:double" default="1E-16"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ModelExplanation">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
          <xs:choice>
            <xs:element ref="PredictiveModelQuality" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="ClusteringModelQuality" minOccurs="0" maxOccurs="unbounded"/>
          </xs:choice>
        <xs:element ref="Correlations" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PredictiveModelQuality">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ConfusionMatrix" minOccurs="0"/>
        <xs:element ref="LiftData" minOccurs="0"/>
        <xs:element ref="ROC" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="targetField" type="xs:string" use="required"/>
      <xs:attribute name="dataName" type="xs:string" use="optional"/>
      <xs:attribute name="dataUsage" default="training">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="training"/>
            <xs:enumeration value="test"/>
            <xs:enumeration value="validation"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="meanError" type="NUMBER" use="optional"/>
      <xs:attribute name="meanAbsoluteError" type="NUMBER" use="optional"/>
      <xs:attribute name="meanSquaredError" type="NUMBER" use="optional"/>
      <xs:attribute name="r-squared" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringModelQuality">
    <xs:complexType>
      <xs:attribute name="dataName" type="xs:string" use="optional"/>
      <xs:attribute name="SSE" type="NUMBER" use="optional"/>
      <xs:attribute name="SSB" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="LiftData">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ModelLiftGraph"/>
        <xs:element ref="OptimumLiftGraph" minOccurs="0"/>
        <xs:element ref="RandomLiftGraph" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="targetFieldValue" type="xs:string"/>
      <xs:attribute name="targetFieldDisplayValue" type="xs:string"/>
      <xs:attribute name="rankingQuality" type="NUMBER"/>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ModelLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OptimumLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RandomLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="LiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="XCoordinates"/>
        <xs:element ref="YCoordinates"/>
        <xs:element ref="BoundaryValues" minOccurs="0"/>
        <xs:element ref="BoundaryValueMeans" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="XCoordinates">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="YCoordinates">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BoundaryValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BoundaryValueMeans">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ROC">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ROCGraph"/>
      </xs:sequence>
      <xs:attribute name="positiveTargetFieldValue" type="xs:string"
                    use="required"/>
      <xs:attribute name="positiveTargetFieldDisplayValue" type="xs:string"/>
      <xs:attribute name="negativeTargetFieldValue" type="xs:string"/>
      <xs:attribute name="negativeTargetFieldDisplayValue" type="xs:string"/>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ROCGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="XCoordinates"/>
        <xs:element ref="YCoordinates"/>
        <xs:element ref="BoundaryValues" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ConfusionMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ClassLabels"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClassLabels">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Correlations">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="CorrelationFields"/>
        <xs:element ref="CorrelationValues"/>
        <xs:element ref="CorrelationMethods" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationMethods">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="MiningModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="Regression"/>
          <xs:element ref="DecisionTree"/>
        </xs:choice>
        <xs:element ref="Segmentation" minOccurs="0"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Segmentation">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Segment" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="multipleModelMethod" type="MULTIPLE-MODEL-METHOD" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Segment">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:choice>
          <xs:element ref="ClusteringModel"/>
          <xs:element ref="GeneralRegressionModel"/>
          <xs:element ref="NaiveBayesModel"/>
          <xs:element ref="NeuralNetwork"/>
          <xs:element ref="RegressionModel"/>
          <xs:element ref="RuleSetModel"/>
          <xs:element ref="SupportVectorMachineModel"/>
          <xs:element ref="TreeModel"/>
          <xs:element ref="Extension"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="optional"/>
      <xs:attribute name="weight" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MULTIPLE-MODEL-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="majorityVote"/>
      <xs:enumeration value="weightedMajorityVote"/>
      <xs:enumeration value="average"/>
      <xs:enumeration value="weightedAverage"/>
      <xs:enumeration value="median"/>
      <xs:enumeration value="max"/>
      <xs:enumeration value="sum"/>
      <xs:enumeration value="selectFirst"/>
      <xs:enumeration value="selectAll"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:group name="EmbeddedModel">
    <xs:sequence>
      <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="Regression"/>
        <xs:element ref="DecisionTree"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:element name="ResultField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
      <xs:attribute name="feature" type="RESULT-FEATURE"/>
      <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Regression">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ResultField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="RegressionTable" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="normalizationMethod" type="REGRESSIONNORMALIZATIONMETHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DecisionTree">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ResultField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Node"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="missingValueStrategy" type="MISSING-VALUE-STRATEGY" default="none"/>
      <xs:attribute name="missingValuePenalty" type="PROB-NUMBER" default="1.0"/>
      <xs:attribute name="noTrueChildStrategy" type="NO-TRUE-CHILD-STRATEGY" default="returnNullPrediction"/>
      <xs:attribute name="splitCharacteristic" default="multiSplit">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="binarySplit"/>
            <xs:enumeration value="multiSplit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeSeriesModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="TimeSeries" minOccurs="0" maxOccurs="3"/>
        <xs:element ref="SpectralAnalysis" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ARIMA" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ExponentialSmoothing" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="SeasonalTrendDecomposition" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="bestFit" type="TIMESERIES-ALGORITHM" use="required"/>
    </xs:complexType>
  </xs:element>    
  <xs:simpleType name="TIMESERIES-ALGORITHM">
    <xs:restriction base="xs:string">
      <xs:enumeration value="ARIMA"/>
      <xs:enumeration value="ExponentialSmoothing"/>
      <xs:enumeration value="SeasonalTrendDecomposition"/>
      <xs:enumeration value="SpectralAnalysis"/>
    </xs:restriction>
  </xs:simpleType>    
  <xs:element name="TimeSeries">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="TimeAnchor" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="TimeException" minOccurs="0" maxOccurs="2"/>
        <xs:element ref="TimeValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="usage" type="TIMESERIES-USAGE" default="original"/>
      <xs:attribute name="startTime" type="REAL-NUMBER"/>
      <xs:attribute name="endTime" type="REAL-NUMBER"/>
      <xs:attribute name="interpolationMethod" type="INTERPOLATION-METHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIMESERIES-USAGE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="original"/>
      <xs:enumeration value="logical"/>
      <xs:enumeration value="prediction"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TimeValue">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Timestamp" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="index" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="time" type="NUMBER" use="optional"/>
      <xs:attribute name="value" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="standardError" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeAnchor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="TimeCycle" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TimeException" minOccurs="0" maxOccurs="2"/>
      </xs:sequence>
      <xs:attribute name="type" type="TIME-ANCHOR"/>
      <xs:attribute name="offset" type="INT-NUMBER"/>
      <xs:attribute name="stepsize" type="INT-NUMBER"/>
      <xs:attribute name="displayName" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeCycle">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="INT-ARRAY" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="length" type="INT-NUMBER"/>
      <xs:attribute name="type" type="VALID-TIME-SPEC"/>
      <xs:attribute name="displayName" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIME-ANCHOR">
    <xs:restriction base="xs:string">
      <xs:enumeration value="dateTimeMillisecdondsSince[0]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1960]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1970]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1980]"/>
      <xs:enumeration value="dateTimeSecdondsSince[0]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1960]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1970]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1980]"/>
      <xs:enumeration value="dateDaysSince[0]"/>
      <xs:enumeration value="dateDaysSince[1960]"/>
      <xs:enumeration value="dateDaysSince[1970]"/>
      <xs:enumeration value="dateDaysSince[1980]"/>
      <xs:enumeration value="dateMonthsSince[0]"/>
      <xs:enumeration value="dateMonthsSince[1960]"/>
      <xs:enumeration value="dateMonthsSince[1970]"/>
      <xs:enumeration value="dateMonthsSince[1980]"/>
      <xs:enumeration value="dateYearsSince[0]"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="VALID-TIME-SPEC">
    <xs:restriction base="xs:string">
      <xs:enumeration value="includeAll"/>
      <xs:enumeration value="includeFromTo"/>
      <xs:enumeration value="excludeFromTo"/>
      <xs:enumeration value="includeSet"/>
      <xs:enumeration value="excludeSet"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TimeException">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="INT-ARRAY" minOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="type" type="TIME-EXCEPTION-TYPE"/>
      <xs:attribute name="count" type="INT-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIME-EXCEPTION-TYPE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="exclude"/>
      <xs:enumeration value="include"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INTERPOLATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="linear"/>
      <xs:enumeration value="exponentialSpline"/>
      <xs:enumeration value="cubicSpline"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ExponentialSmoothing">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Level" minOccurs="1" maxOccurs="1"/>
        <xs:element ref="Trend" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="Seasonality_ExpoSmooth" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="TimeValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="RMSE" type="REAL-NUMBER"/>
      <xs:attribute name="transformation" default="none">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="none"/>
            <xs:enumeration value="logarithmic"/>
            <xs:enumeration value="squareroot"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Seasonality_ExpoSmooth">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="REAL-ARRAY"/>
      </xs:sequence>
      <xs:attribute name="type" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="additive"/>
            <xs:enumeration value="multiplicative"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="period" type="INT-NUMBER" use="required"/>
      <xs:attribute name="unit" type="xs:string" use="optional"/>
      <xs:attribute name="phase" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="delta" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Level">
      <xs:complexType>
        <xs:attribute name="alpha" type="REAL-NUMBER" use="optional"/>
        <xs:attribute name="smoothedValue" type="REAL-NUMBER"/>
        <xs:attribute name="quadraticSmoothedValue" type="REAL-NUMBER"/>
        <xs:attribute name="cubicSmoothedValue" type="REAL-NUMBER"/>
      </xs:complexType>
    </xs:element>
  <xs:element name="Trend">
    <xs:complexType>
      <xs:attribute name="trend" default="additive">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="additive"/>
            <xs:enumeration value="damped_additive"/>
            <xs:enumeration value="multiplicative"/>
            <xs:enumeration value="damped_multiplicative"/>
            <xs:enumeration value="double_exponential"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="phi" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="smoothedValue" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SpectralAnalysis">
  </xs:element>
  <xs:element name="ARIMA">
  </xs:element>
  <xs:element name="SeasonalTrendDecomposition">
  </xs:element>
</xs:schema>

Show only Supported Elements and Attributes

<xs:schema
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.dmg.org/PMML-4_0"
    xmlns="http://www.dmg.org/PMML-4_0"
    elementFormDefault="unqualified">
  <xs:element name="PMML">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Header"/>
        <xs:element ref="DataDictionary"/>
        <xs:element ref="TransformationDictionary" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="version" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Extension">
    <xs:complexType>
      <xs:complexContent mixed="true">
        <xs:restriction base="xs:anyType">
          <xs:sequence>
            <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence> 
          <xs:attribute name="extender" type="xs:string" use="optional"/>
          <xs:attribute name="name" type="xs:string" use="optional"/>
          <xs:attribute name="value" type="xs:string" use="optional"/>
        </xs:restriction>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="NUMBER">
    <xs:restriction base="xs:double">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INT-NUMBER">
    <xs:restriction base="xs:integer">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="REAL-NUMBER">
    <xs:restriction base="xs:double">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PROB-NUMBER">
    <xs:restriction base="xs:decimal">
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Header">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" ref="Application"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Annotation"/>
        <xs:element minOccurs="0" ref="Timestamp"/>
      </xs:sequence>
      <xs:attribute name="copyright" type="xs:string" use="required"/>
      <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DataDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DataField" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfFields" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DataField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="Value"    minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="OPTYPE">      
    <xs:restriction base="xs:string">
      <xs:enumeration value="categorical"/>
      <xs:enumeration value="ordinal"/>
      <xs:enumeration value="continuous"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DATATYPE">      
    <xs:restriction base="xs:string">
      <xs:enumeration value="string"/>
      <xs:enumeration value="integer"/>
      <xs:enumeration value="float"/>
      <xs:enumeration value="double"/>
      <xs:enumeration value="boolean"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Value">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="valid"/>
            <xs:enumeration value="invalid"/>
            <xs:enumeration value="missing"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Interval">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="closure" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="openClosed"/>
            <xs:enumeration value="openOpen"/>
            <xs:enumeration value="closedOpen"/>
            <xs:enumeration value="closedClosed"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="leftMargin" type="NUMBER"/>
      <xs:attribute name="rightMargin" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DefineFunction">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ParameterField" minOccurs="1" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParameterField">
    <xs:complexType>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Apply">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="function" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="InlineTable">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="row" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="row">
    <xs:complexType>
      <xs:complexContent mixed="true">
        <xs:restriction base="xs:anyType">
          <xs:sequence>
            <xs:any processContents="skip" minOccurs="2" maxOccurs="unbounded"/>
          </xs:sequence> 
        </xs:restriction>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:group name="EXPRESSION">
    <xs:choice>
      <xs:element ref="Constant"/>
      <xs:element ref="FieldRef"/>
      <xs:element ref="NormContinuous"/>
      <xs:element ref="NormDiscrete"/>
      <xs:element ref="Discretize"/>
      <xs:element ref="MapValues"/>
      <xs:element ref="Apply"/>
    </xs:choice>
  </xs:group>
  <xs:element name="TransformationDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DefineFunction"  minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="LocalTransformations">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DerivedField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="EXPRESSION"/>
        <xs:element ref="Value" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Constant">
    <xs:complexType>
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="dataType" type="DATATYPE"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="FieldRef">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NormContinuous">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LinearNorm" minOccurs="2" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="mapMissingTo" type="NUMBER"/>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="outliers" type="OUTLIER-TREATMENT-METHOD" default="asIs"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="LinearNorm">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="orig" type="NUMBER" use="required"/>
      <xs:attribute name="norm" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NormDiscrete">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="method" fixed="indicator" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="indicator"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="mapMissingTo" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Discretize">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DiscretizeBin" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="mapMissingTo" type="xs:string"/>
      <xs:attribute name="defaultValue" type="xs:string"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DiscretizeBin">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Interval"/>
      </xs:sequence>
      <xs:attribute name="binValue" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MapValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="FieldColumnPair"/>
        <xs:choice minOccurs="0">
          <xs:element ref="InlineTable"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="mapMissingTo" type="xs:string"/>
      <xs:attribute name="defaultValue" type="xs:string"/>
      <xs:attribute name="outputColumn" type="xs:string" use="required"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="FieldColumnPair">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="column" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="FIELD-USAGE-TYPE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="active"/>
      <xs:enumeration value="predicted"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="OUTLIER-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMissingValues"/>
      <xs:enumeration value="asExtremeValues"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="MISSING-VALUE-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMean"/>
      <xs:enumeration value="asMode"/>
      <xs:enumeration value="asMedian"/>
      <xs:enumeration value="asValue"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INVALID-VALUE-TREATMENT-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="returnInvalid"/>
      <xs:enumeration value="asIs"/>
      <xs:enumeration value="asMissing"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

Show only Unsupported Elements and Attributes

        <xs:element ref="MiningBuildTask" minOccurs="0"/>
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
         <xs:choice>
            <xs:element ref="AssociationModel"/>
            <xs:element ref="ClusteringModel"/>
            <xs:element ref="GeneralRegressionModel"/>
            <xs:element ref="MiningModel"/>
            <xs:element ref="NaiveBayesModel"/>
            <xs:element ref="NeuralNetwork"/>
            <xs:element ref="RegressionModel"/>
            <xs:element ref="RuleSetModel"/>
            <xs:element ref="SequenceModel"/>
            <xs:element ref="SupportVectorMachineModel"/>
            <xs:element ref="TextModel"/>
            <xs:element ref="TimeSeriesModel"/>
            <xs:element ref="TreeModel"/>
          </xs:choice>
        </xs:sequence>
  <xs:element name="MiningBuildTask">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MINING-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="associationRules"/>
      <xs:enumeration value="sequences"/>
      <xs:enumeration value="classification"/>
      <xs:enumeration value="regression"/>
      <xs:enumeration value="clustering"/>
      <xs:enumeration value="timeSeries"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="PERCENTAGE-NUMBER">
    <xs:restriction base="xs:decimal">
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FIELD-NAME">
    <xs:restriction base="xs:string">
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ArrayType" mixed="true">
    <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
    <xs:attribute name="type" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="int"/>
          <xs:enumeration value="real"/>
          <xs:enumeration value="string"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>
 <xs:element name="Array" type="ArrayType"/>
  <xs:group name="NUM-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="INT-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="REAL-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:group name="STRING-ARRAY">
    <xs:choice>
      <xs:element ref="Array"/>
    </xs:choice>
  </xs:group>
  <xs:element name="INT-SparseArray">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Indices" minOccurs="0"/>
        <xs:element ref="INT-Entries" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="defaultValue" type="INT-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="REAL-SparseArray">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Indices" minOccurs="0"/>
        <xs:element ref="REAL-Entries" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="n" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="defaultValue" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Indices">
    <xs:simpleType>
      <xs:list itemType="xs:int"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="INT-Entries">
    <xs:simpleType>
      <xs:list itemType="xs:int"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="REAL-Entries">
    <xs:simpleType>
      <xs:list itemType="xs:double"/>
    </xs:simpleType>
  </xs:element>
  <xs:element name="Matrix">
    <xs:complexType>
      <xs:choice minOccurs="0">
        <xs:group ref="NUM-ARRAY" maxOccurs="unbounded"/>
        <xs:element ref="MatCell" maxOccurs="unbounded"/>
      </xs:choice>
      <xs:attribute name="kind" use="optional" default="any" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="diagonal"/>
            <xs:enumeration value="symmetric"/>
            <xs:enumeration value="any"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="nbRows" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="nbCols" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="diagDefault" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="offDiagDefault" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MatCell">
    <xs:complexType >
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="row" type="INT-NUMBER" use="required"/>
          <xs:attribute name="col" type="INT-NUMBER" use="required"/>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:element name="Application">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="version" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Annotation">
    <xs:complexType mixed="true">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Timestamp">
    <xs:complexType mixed="true">
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
        <xs:element ref="Taxonomy" minOccurs="0" maxOccurs="unbounded"/>
          <xs:element ref="Interval" minOccurs="0" maxOccurs="unbounded"/>
      <xs:attribute name="taxonomy" type="xs:string"/>
      <xs:attribute name="isCyclic" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:enumeration value="date"/>
      <xs:enumeration value="time"/>
      <xs:enumeration value="dateTime"/>
      <xs:enumeration value="dateDaysSince[0]"/>
      <xs:enumeration value="dateDaysSince[1960]"/>
      <xs:enumeration value="dateDaysSince[1970]"/>
      <xs:enumeration value="dateDaysSince[1980]"/>
      <xs:enumeration value="timeSeconds"/>
      <xs:enumeration value="dateTimeSecondsSince[0]"/>
      <xs:enumeration value="dateTimeSecondsSince[1960]"/>
      <xs:enumeration value="dateTimeSecondsSince[1970]"/>
      <xs:enumeration value="dateTimeSecondsSince[1980]"/>
      <xs:attribute name="displayValue" type="xs:string"/>
      <xs:attribute name="property" default="valid">
  <xs:element name="Taxonomy">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ChildParent" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ChildParent">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="TableLocator"/>
          <xs:element ref="InlineTable"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="childField" type="xs:string" use="required"/>
      <xs:attribute name="parentField" type="xs:string" use="required"/>
      <xs:attribute name="parentLevelField" type="xs:string" use="optional"/>
      <xs:attribute name="isRecursive" use="optional" default="no">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="no"/>
            <xs:enumeration value="yes"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TableLocator">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
      <xs:element ref="Aggregate"/>
          <xs:element ref="TableLocator"/>
  <xs:element name="Aggregate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="function" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="count"/>
            <xs:enumeration value="sum"/>
            <xs:enumeration value="average"/>
            <xs:enumeration value="min"/>
            <xs:enumeration value="max"/>
            <xs:enumeration value="multiset"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="groupField" type="FIELD-NAME"/>
      <xs:attribute name="sqlWhere" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MiningSchema">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="MiningField"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="MiningField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="usageType" type="FIELD-USAGE-TYPE" default="active"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="importance" type="PROB-NUMBER"/>
      <xs:attribute name="outliers" type="OUTLIER-TREATMENT-METHOD" default="asIs"/>
      <xs:attribute name="lowValue" type="NUMBER"/>
      <xs:attribute name="highValue" type="NUMBER"/>
      <xs:attribute name="missingValueReplacement" type="xs:string"/>
      <xs:attribute name="missingValueTreatment" type="MISSING-VALUE-TREATMENT-METHOD"/>
      <xs:attribute name="invalidValueTreatment" type="INVALID-VALUE-TREATMENT-METHOD" default="returnInvalid"/>
    </xs:complexType>
  </xs:element>
      <xs:enumeration value="supplementary"/>
      <xs:enumeration value="group"/>
      <xs:enumeration value="order"/>
      <xs:enumeration value="frequencyWeight"/>
      <xs:enumeration value="analysisWeight"/>
  <xs:element name="ModelStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="UnivariateStats" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UnivariateStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Counts" minOccurs="0"/>
        <xs:element ref="NumericInfo" minOccurs="0"/>
        <xs:element ref="DiscrStats" minOccurs="0"/>
        <xs:element ref="ContStats" minOccurs="0"/>
        <xs:element ref="Anova" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME"/>
      <xs:attribute name="weighted" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute> 
    </xs:complexType>
  </xs:element>
  <xs:element name="Counts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="totalFreq" type="NUMBER" use="required"/>
      <xs:attribute name="missingFreq" type="NUMBER"/>
      <xs:attribute name="invalidFreq" type="NUMBER"/>
      <xs:attribute name="cardinality" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NumericInfo">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Quantile" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="minimum" type="NUMBER"/>
      <xs:attribute name="maximum" type="NUMBER"/>
      <xs:attribute name="mean" type="NUMBER"/>
      <xs:attribute name="standardDeviation" type="NUMBER"/>
      <xs:attribute name="median" type="NUMBER"/>
      <xs:attribute name="interQuartileRange" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Quantile">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="quantileLimit" type="PERCENTAGE-NUMBER" use="required"/>
      <xs:attribute name="quantileValue" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DiscrStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Array" minOccurs="0" maxOccurs="2"/>
      </xs:sequence>
      <xs:attribute name="modalValue" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ContStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Interval" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="FrequenciesType" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="totalValuesSum" type="NUMBER"/>
      <xs:attribute name="totalSquaresSum" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="FrequenciesType">
    <xs:sequence>
      <xs:group ref="NUM-ARRAY" minOccurs="1" maxOccurs="3"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="Anova">
    <xs:complexType>
          <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AnovaRow" minOccurs="3" maxOccurs="3"/>
      </xs:sequence>
      <xs:attribute name="target" type="FIELD-NAME"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AnovaRow">
    <xs:complexType>
          <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="type" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="Model"/>
            <xs:enumeration value="Error"/>
            <xs:enumeration value="Total"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="sumOfSquares" type="NUMBER" use="required"/>
      <xs:attribute name="degreesOfFreedom" type="NUMBER" use="required"/>
      <xs:attribute name="meanOfSquares" type="NUMBER"/>
      <xs:attribute name="fValue" type="NUMBER"/>
      <xs:attribute name="pValue" type="PROB-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Partition">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PartitionFieldStats" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="size" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PartitionFieldStats">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Counts" minOccurs="0"/>
        <xs:element ref="NumericInfo" minOccurs="0"/>
        <xs:group ref="FrequenciesType" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="weighted" default="0">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Output">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="OutputField" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OutputField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
      <xs:attribute name="targetField" type="FIELD-NAME"/>
      <xs:attribute name="feature" type="RESULT-FEATURE"/>
      <xs:attribute name="value" type="xs:string"/>
      <xs:attribute name="ruleFeature" type="RULE-FEATURE" default="consequent"/>
      <xs:attribute name="algorithm" default="exclusiveRecommendation">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="recommendation"/>
            <xs:enumeration value="exclusiveRecommendation"/>
            <xs:enumeration value="ruleAssociation"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="rank" type="INT-NUMBER" default="1"/>
      <xs:attribute name="rankBasis" default="confidence">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="confidence"/>
            <xs:enumeration value="support"/>
            <xs:enumeration value="lift"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="rankOrder" default="descending">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="descending"/>
            <xs:enumeration value="ascending"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="isMultiValued" default="0"/>
   </xs:complexType>
  </xs:element>
  <xs:simpleType name="RESULT-FEATURE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="predictedValue"/>
      <xs:enumeration value="predictedDisplayValue"/>
      <xs:enumeration value="probability"/>
      <xs:enumeration value="residual"/>
      <xs:enumeration value="standardError"/>
      <xs:enumeration value="clusterId"/>
      <xs:enumeration value="clusterAffinity"/>
      <xs:enumeration value="entityId"/>
      <xs:enumeration value="entityAffinity"/>
      <xs:enumeration value="warning"/>
      <xs:enumeration value="ruleValue"/>    
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RULE-FEATURE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="antecedent"/>
      <xs:enumeration value="consequent"/>
      <xs:enumeration value="rule"/>
      <xs:enumeration value="ruleId"/>
      <xs:enumeration value="confidence"/>
      <xs:enumeration value="support"/>
      <xs:enumeration value="lift"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Targets">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Target" maxOccurs="unbounded"  />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Target">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="castInteger" >
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="round"/>
            <xs:enumeration value="ceiling"/>
            <xs:enumeration value="floor"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="min" type="xs:double"/>
      <xs:attribute name="max" type="xs:double"/>
      <xs:attribute name="rescaleConstant" type="xs:double" default="0"/>
      <xs:attribute name="rescaleFactor" type="xs:double" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValue">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Partition" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string"/>
      <xs:attribute name="displayValue" type="xs:string"/>
      <xs:attribute name="priorProbability" type="PROB-NUMBER"/>
      <xs:attribute name="defaultValue" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralNetwork">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="NeuralInputs"/>
        <xs:element maxOccurs="unbounded" ref="NeuralLayer"/>
        <xs:element minOccurs="0" ref="NeuralOutputs"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="activationFunction" type="ACTIVATION-FUNCTION" use="required"/>
      <xs:attribute name="normalizationMethod" type="NN-NORMALIZATION-METHOD" default="none"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER" default="1.0"/>
      <xs:attribute name="numberOfLayers" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralInputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="NeuralInput"/>
      </xs:sequence>
      <xs:attribute name="numberOfInputs" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralLayer">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="Neuron"/>
      </xs:sequence>
      <xs:attribute name="numberOfNeurons" type="xs:nonNegativeInteger"/>
      <xs:attribute name="activationFunction" type="ACTIVATION-FUNCTION"/>
      <xs:attribute name="threshold" type="REAL-NUMBER"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER"/>
      <xs:attribute name="normalizationMethod" type="NN-NORMALIZATION-METHOD"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralOutputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="NeuralOutput"/>
      </xs:sequence>
      <xs:attribute name="numberOfOutputs" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="ACTIVATION-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="threshold"/>
      <xs:enumeration value="logistic"/>
      <xs:enumeration value="tanh"/>
      <xs:enumeration value="identity"/>
      <xs:enumeration value="exponential"/>
      <xs:enumeration value="reciprocal"/>
      <xs:enumeration value="square"/>
      <xs:enumeration value="Gauss"/>
      <xs:enumeration value="sine"/>
      <xs:enumeration value="cosine"/>
      <xs:enumeration value="Elliott"/>
      <xs:enumeration value="arctan"/>
      <xs:enumeration value="radialBasis"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NN-NORMALIZATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="simplemax"/>
      <xs:enumeration value="softmax"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NN-NEURON-ID">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:simpleType name="NN-NEURON-IDREF">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:element name="NeuralInput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField"/>
      </xs:sequence>
      <xs:attribute name="id" type="NN-NEURON-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Neuron">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="Con"/>
      </xs:sequence>
      <xs:attribute name="id" type="NN-NEURON-ID" use="required"/>
      <xs:attribute name="bias" type="REAL-NUMBER"/>
      <xs:attribute name="width" type="REAL-NUMBER"/>
      <xs:attribute name="altitude" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Con">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="from" type="NN-NEURON-IDREF" use="required"/>
      <xs:attribute name="weight" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NeuralOutput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="DerivedField"/>
      </xs:sequence>
      <xs:attribute name="outputNeuron" type="NN-NEURON-IDREF" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ComparisonMeasure"/>
        <xs:element ref="ClusteringField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MissingValueWeights" minOccurs="0"/>
        <xs:element ref="Cluster" maxOccurs="unbounded"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="modelClass" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="centerBased"/>
            <xs:enumeration value="distributionBased"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="numberOfClusters" type="INT-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="MissingValueWeights">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Cluster">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="KohonenMap" minOccurs="0"/>
        <xs:group ref="NUM-ARRAY" minOccurs="0"/>
        <xs:element ref="Partition" minOccurs="0"/>
        <xs:element ref="Covariances" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="optional"/>
      <xs:attribute name="size" type="xs:nonNegativeInteger" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="KohonenMap">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="coord1" type="xs:float" use="optional"/>
      <xs:attribute name="coord2" type="xs:float" use="optional"/>
      <xs:attribute name="coord3" type="xs:float" use="optional"/>
      </xs:complexType>
  </xs:element>
  <xs:element name="Covariances">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Comparisons" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="isCenterField" default="true">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="true"/>
            <xs:enumeration value="false"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="fieldWeight" type="REAL-NUMBER" default="1"/>
      <xs:attribute name="similarityScale" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="compareFunction" type="COMPARE-FUNCTION" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Comparisons">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="COMPARE-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="absDiff"/>
      <xs:enumeration value="gaussSim"/>
      <xs:enumeration value="delta"/>
      <xs:enumeration value="equal"/>
      <xs:enumeration value="table"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ComparisonMeasure">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="euclidean"/>
          <xs:element ref="squaredEuclidean"/>
          <xs:element ref="chebychev"/>
          <xs:element ref="cityBlock"/>
          <xs:element ref="minkowski"/>
          <xs:element ref="simpleMatching"/>
          <xs:element ref="jaccard"/>
          <xs:element ref="tanimoto"/>
          <xs:element ref="binarySimilarity"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="kind" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="distance"/>
            <xs:enumeration value="similarity"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="compareFunction" type="COMPARE-FUNCTION" default="absDiff"/>
      <xs:attribute name="minimum" type="NUMBER" use="optional"/>
      <xs:attribute name="maximum" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="euclidean">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="squaredEuclidean">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="cityBlock">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="chebychev">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="minkowski">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="p-parameter" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="simpleMatching">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="jaccard">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="tanimoto">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="binarySimilarity">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="c00-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="c01-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="0-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="1-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d00-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d01-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d10-parameter" type="NUMBER" use="required"/>
      <xs:attribute name="d11-parameter" type="NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AssociationModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Itemset" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AssociationRule" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTransactions" type="INT-NUMBER" use="required"/>
      <xs:attribute name="maxNumberOfItemsPerTA" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfItemsPerTA" type="REAL-NUMBER"/>
      <xs:attribute name="minimumSupport" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="minimumConfidence" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="lengthLimit" type="INT-NUMBER"/>
      <xs:attribute name="numberOfItems" type="INT-NUMBER" use="required"/>
      <xs:attribute name="numberOfItemsets" type="INT-NUMBER" use="required"/>
      <xs:attribute name="numberOfRules" type="INT-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Item">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="mappedValue" type="xs:string"/>
      <xs:attribute name="weight" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Itemset">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="ItemRef"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="support" type="PROB-NUMBER"/>
      <xs:attribute name="numberOfItems" type="xs:nonNegativeInteger"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ItemRef">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="itemRef" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AssociationRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="antecedent" type="xs:string" use="required"/>
      <xs:attribute name="consequent" type="xs:string" use="required"/>
      <xs:attribute name="support" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="confidence" type="PROB-NUMBER" use="required"/>
      <xs:attribute name="lift" type="xs:float" use="optional"/>
      <xs:attribute name="id" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TreeModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Node"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="missingValueStrategy" type="MISSING-VALUE-STRATEGY" default="none"/>
      <xs:attribute name="missingValuePenalty" type="PROB-NUMBER" default="1.0"/>
      <xs:attribute name="noTrueChildStrategy" type="NO-TRUE-CHILD-STRATEGY" default="returnNullPrediction"/>
      <xs:attribute name="splitCharacteristic" default="multiSplit">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="binarySplit"/>
            <xs:enumeration value="multiSplit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Node">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:choice>
          <xs:sequence>
            <xs:element ref="Partition" minOccurs="0"/>
            <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="Node" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
          <xs:group ref="EmbeddedModel"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string"/>
      <xs:attribute name="score" type="xs:string"/>
      <xs:attribute name="recordCount" type="NUMBER"/>
      <xs:attribute name="defaultChild" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="PREDICATE">
    <xs:choice>
      <xs:element ref="SimplePredicate"/>
      <xs:element ref="CompoundPredicate"/>
      <xs:element ref="SimpleSetPredicate"/>
      <xs:element ref="True"/>
      <xs:element ref="False"/>
    </xs:choice>
  </xs:group>
  <xs:element name="SimplePredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="operator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="equal"/>
            <xs:enumeration value="notEqual"/>
            <xs:enumeration value="lessThan"/>
            <xs:enumeration value="lessOrEqual"/>
            <xs:enumeration value="greaterThan"/>
            <xs:enumeration value="greaterOrEqual"/>
            <xs:enumeration value="isMissing"/>
            <xs:enumeration value="isNotMissing"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="CompoundPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:sequence minOccurs="2" maxOccurs="unbounded">
          <xs:group ref="PREDICATE"/>
        </xs:sequence>
      </xs:sequence>
      <xs:attribute name="booleanOperator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="or"/>
            <xs:enumeration value="and"/>
            <xs:enumeration value="xor"/>
            <xs:enumeration value="surrogate"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="SimpleSetPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Array"/>
      </xs:sequence>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="booleanOperator" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="isIn"/>
            <xs:enumeration value="isNotIn"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="True">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="False">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ScoreDistribution">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="recordCount" type="NUMBER" use="required"/>
      <xs:attribute name="confidence" type="PROB-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MISSING-VALUE-STRATEGY">
    <xs:restriction base="xs:string">
      <xs:enumeration value="lastPrediction"/>
      <xs:enumeration value="nullPrediction"/>
      <xs:enumeration value="defaultChild"/>
      <xs:enumeration value="weightedConfidence"/>
      <xs:enumeration value="aggregateNodes"/>
      <xs:enumeration value="none"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="NO-TRUE-CHILD-STRATEGY">
    <xs:restriction base="xs:string">
      <xs:enumeration value="returnNullPrediction"/>
      <xs:enumeration value="returnLastPrediction"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="RegressionModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="RegressionTable" maxOccurs="unbounded"/>
        <!-- optionally, specification of the decision logic -->
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="modelType" use="optional">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="linearRegression"/>
            <xs:enumeration value="stepwisePolynomialRegression"/>
            <xs:enumeration value="logisticRegression"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="targetFieldName" type="FIELD-NAME" use="optional"/>
      <xs:attribute name="normalizationMethod" type="REGRESSIONNORMALIZATIONMETHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="REGRESSIONNORMALIZATIONMETHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="simplemax"/>
      <xs:enumeration value="softmax"/>
      <xs:enumeration value="logit"/>
      <xs:enumeration value="probit"/>
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="exp"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="cauchit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="RegressionTable">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="NumericPredictor" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="CategoricalPredictor" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PredictorTerm" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="intercept" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="NumericPredictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="exponent" type="INT-NUMBER" default="1"/>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="CategoricalPredictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PredictorTerm">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="FieldRef" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="coefficient" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSetModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="RuleSet"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSet">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="RuleSelectionMethod" minOccurs="1" maxOccurs="unbounded"/>
        <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="Rule" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="recordCount" type="NUMBER" use="optional"/>
      <xs:attribute name="nbCorrect" type="NUMBER" use="optional"/>
      <xs:attribute name="defaultScore" type="xs:string" use="optional"/>
      <xs:attribute name="defaultConfidence" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RuleSelectionMethod">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="criterion" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="weightedSum"/>
            <xs:enumeration value="weightedMax"/>
            <xs:enumeration value="firstHit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:group name="Rule">
    <xs:choice>
      <xs:element ref="SimpleRule"/>
      <xs:element ref="CompoundRule"/>
    </xs:choice>
  </xs:group>
  <xs:element name="SimpleRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
         <xs:group ref="PREDICATE"/>
         <xs:element ref="ScoreDistribution" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute name="id" type="xs:string" use="optional"/>
       <xs:attribute name="score" type="xs:string" use="required"/>
       <xs:attribute name="recordCount" type="NUMBER" use="optional"/>
       <xs:attribute name="nbCorrect" type="NUMBER" use="optional"/>
       <xs:attribute name="confidence" type="NUMBER" use="optional"/>
     <xs:attribute name="weight" type="NUMBER" use="optional"/>
   </xs:complexType>
 </xs:element>
  <xs:element name="CompoundRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:group ref="Rule" minOccurs="1" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectorMachineModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:sequence>
          <xs:choice>
            <xs:element ref="LinearKernelType"/>
            <xs:element ref="PolynomialKernelType"/>
            <xs:element ref="RadialBasisKernelType"/>
            <xs:element ref="SigmoidKernelType"/>
          </xs:choice>
        </xs:sequence>
        <xs:element ref="VectorDictionary"/>
        <xs:element ref="SupportVectorMachine" maxOccurs="unbounded"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="optional" default="0"/>
      <xs:attribute name="svmRepresentation" type="SVM-REPRESENTATION" use="optional" default="SupportVectors"/>
      <xs:attribute name="classificationMethod" type="SVM-CLASSIFICATION-METHOD" use="optional" default="OneAgainstAll"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="SVM-CLASSIFICATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="OneAgainstAll"/>
      <xs:enumeration value="OneAgainstOne"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="SVM-REPRESENTATION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="SupportVectors"/>
      <xs:enumeration value="Coefficients"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="LinearKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PolynomialKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="coef0" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="degree" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="RadialBasisKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SigmoidKernelType">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="description" type="xs:string" use="optional"/>
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="coef0" type="REAL-NUMBER" use="optional" default="1"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="VECTOR-ID">
    <xs:restriction base="xs:string"/>
  </xs:simpleType>
  <xs:element name="VectorDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="VectorFields"/>
        <xs:element ref="VectorInstance" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfVectors" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VectorFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="FieldRef" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfFields" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VectorInstance">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice>
          <xs:element ref="REAL-SparseArray"/>
          <xs:group ref="REAL-ARRAY"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="VECTOR-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectorMachine">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SupportVectors" minOccurs="0"/>
        <xs:element ref="Coefficients"/>
      </xs:sequence>
      <xs:attribute name="targetCategory" type="xs:string" use="optional"/>
      <xs:attribute name="alternateTargetCategory" type="xs:string" use="optional"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVectors">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SupportVector" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfSupportVectors" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="numberOfAttributes" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SupportVector">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="vectorId" type="VECTOR-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Coefficients">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Coefficient" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="numberOfCoefficients" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="absoluteValue" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Coefficient">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="REAL-NUMBER" use="optional" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="TextDictionary"/>
        <xs:element ref="TextCorpus"/>
        <xs:element ref="DocumentTermMatrix"/>
        <xs:element ref="TextModelNormalization" minOccurs="0"/>
        <xs:element ref="TextModelSimiliarity" minOccurs="0"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTerms" type="xs:integer" use="required"/>
      <xs:attribute name="numberOfDocuments" type="xs:integer" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextDictionary">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Taxonomy" minOccurs="0"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextCorpus">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TextDocument" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextDocument">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:attribute name="name" type="xs:string" use="optional"/>
      <xs:attribute name="length" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="file" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DocumentTermMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModelNormalization">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="localTermWeights" default="termFrequency">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="termFrequency"/>
            <xs:enumeration value="binary"/>
            <xs:enumeration value="logarithmic"/>
            <xs:enumeration value="augmentedNormalizedTermFrequency"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="globalTermWeights" default="inverseDocumentFrequency">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="inverseDocumentFrequency"/>
            <xs:enumeration value="none"/>
            <xs:enumeration value="GFIDF"/>
            <xs:enumeration value="normal"/>
            <xs:enumeration value="probabilisticInverse"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="documentNormalization" default="none">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="none"/>
            <xs:enumeration value="cosine"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TextModelSimiliarity">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="similarityType">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="euclidean"/>
            <xs:enumeration value="cosine"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="GeneralRegressionModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Extension"/>
        <xs:element ref="MiningSchema"/>
        <xs:element minOccurs="0" ref="Output"/>
        <xs:element minOccurs="0" ref="ModelStats"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element minOccurs="0" ref="Targets"/>
        <xs:element minOccurs="0" ref="LocalTransformations"/>
        <xs:element ref="ParameterList"/>
        <xs:element minOccurs="0" ref="FactorList"/>
        <xs:element minOccurs="0" ref="CovariateList"/>
        <xs:element ref="PPMatrix"/>
        <xs:element minOccurs="0" ref="PCovMatrix"/>
        <xs:element ref="ParamMatrix"/>
        <xs:element minOccurs="0" ref="EventValues"/>
        <xs:element minOccurs="0" ref="BaseCumHazardTables"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="targetVariableName" type="FIELD-NAME"/>
      <xs:attribute name="modelType" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="regression"/>
            <xs:enumeration value="generalLinear"/>
            <xs:enumeration value="multinomialLogistic"/>
            <xs:enumeration value="ordinalMultinomial"/>
            <xs:enumeration value="generalizedLinear"/>
            <xs:enumeration value="CoxRegression"/>
         </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="targetReferenceCategory" type="xs:string"/>
      <xs:attribute name="cumulativeLink" type="CUMULATIVE-LINK-FUNCTION"/>
      <xs:attribute name="linkFunction" type="LINK-FUNCTION"/>
      <xs:attribute name="linkParameter" type="REAL-NUMBER"/>  
      <xs:attribute name="trialsVariable" type="FIELD-NAME"/>
      <xs:attribute name="trialsValue" type="INT-NUMBER"/>
      <xs:attribute name="distribution" >
      <xs:simpleType >
          <xs:restriction base="xs:string">
            <xs:enumeration value="binomial"/>
            <xs:enumeration value="gamma"/>
            <xs:enumeration value="igauss"/>
            <xs:enumeration value="negbin"/>
            <xs:enumeration value="normal"/>
            <xs:enumeration value="poisson"/>
            <xs:enumeration value="tweedie"/>
          </xs:restriction >
        </xs:simpleType >
      </xs:attribute >
      <xs:attribute name="distParameter" type="REAL-NUMBER"/>  
      <xs:attribute name="offsetVariable" type="FIELD-NAME"/>
      <xs:attribute name="offsetValue" type="REAL-NUMBER"/>
      <xs:attribute name="modelDF" type="REAL-NUMBER"/>
      <xs:attribute name="endTimeVariable" type="FIELD-NAME"/>
      <xs:attribute name="startTimeVariable" type="FIELD-NAME"/>
      <xs:attribute name="subjectIDVariable" type="FIELD-NAME"/>
      <xs:attribute name="statusVariable" type="FIELD-NAME"/>
      <xs:attribute name="baselineStrataVariable" type="FIELD-NAME"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParameterList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Parameter" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Parameter">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="xs:string" use="required"/>
      <xs:attribute name="label" type="xs:string"/>
      <xs:attribute name="referencePoint" type="REAL-NUMBER" default="0"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="FactorList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Predictor"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CovariateList">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Predictor"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Predictor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="contrastMatrixType" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PPMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PPCell" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PPCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="predictorName" type="FIELD-NAME" use="required"/>
      <xs:attribute name="parameterName" type="xs:string" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCovMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="PCovCell"/>
      </xs:sequence>
      <xs:attribute name="type">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="model"/>
            <xs:enumeration value="robust"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCovCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="pRow" type="xs:string" use="required"/>
      <xs:attribute name="pCol" type="xs:string" use="required"/>
      <xs:attribute name="tRow" type="xs:string"/>
      <xs:attribute name="tCol" type="xs:string"/>
      <xs:attribute name="value" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="targetCategory" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ParamMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="PCell" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="targetCategory" type="xs:string"/>
      <xs:attribute name="parameterName" type="xs:string" use="required"/>
      <xs:attribute name="beta" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="df" type="INT-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaseCumHazardTables">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:choice> 
          <xs:element maxOccurs="unbounded" ref="BaselineStratum"/>
          <xs:element maxOccurs="unbounded" ref="BaselineCell"/>
        </xs:choice> 
      </xs:sequence>
      <xs:attribute name="maxTime" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaselineStratum">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="BaselineCell"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="label" type="xs:string"/>
      <xs:attribute name="maxTime" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BaselineCell">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="time" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="cumHazard" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element> 
  <xs:element name="EventValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Value"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="Interval"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element> 
  <xs:simpleType name="CUMULATIVE-LINK-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="logit"/>
      <xs:enumeration value="probit"/>
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="cauchit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="LINK-FUNCTION">
    <xs:restriction base="xs:string">
      <xs:enumeration value="cloglog"/>
      <xs:enumeration value="identity"/>
      <xs:enumeration value="log"/>
      <xs:enumeration value="logc"/>
      <xs:enumeration value="logit"/>
      <xs:enumeration value="loglog"/>
      <xs:enumeration value="negbin"/>
      <xs:enumeration value="oddspower"/>
      <xs:enumeration value="power"/>
      <xs:enumeration value="probit"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SequenceModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Constraints" minOccurs="0"/>
        <xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Itemset" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SetPredicate" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Sequence" maxOccurs="unbounded"/>
        <xs:element ref="SequenceRule" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="numberOfTransactions" type="INT-NUMBER"/>
      <xs:attribute name="maxNumberOfItemsPerTransaction" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfItemsPerTransaction" type="REAL-NUMBER"/>      
      <xs:attribute name="numberOfTransactionGroups" type="INT-NUMBER"/>
      <xs:attribute name="maxNumberOfTAsPerTAGroup" type="INT-NUMBER"/>
      <xs:attribute name="avgNumberOfTAsPerTAGroup" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Constraints">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="minimumNumberOfItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumNumberOfAntecedentItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfAntecedentItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumNumberOfConsequentItems" type="INT-NUMBER" default="1"/>
      <xs:attribute name="maximumNumberOfConsequentItems" type="INT-NUMBER"/>
      <xs:attribute name="minimumSupport" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumConfidence" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumLift" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="minimumTotalSequenceTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumTotalSequenceTime" type="REAL-NUMBER"/>
      <xs:attribute name="minimumItemsetSeparationTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumItemsetSeparationTime" type="REAL-NUMBER"/>
      <xs:attribute name="minimumAntConsSeparationTime" type="REAL-NUMBER" default="0"/>
      <xs:attribute name="maximumAntConsSeparationTime" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="ELEMENT-ID">  
    <xs:restriction base="xs:string">
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="SetPredicate">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="field" type="FIELD-NAME" use="required"/>
      <xs:attribute name="operator" type="xs:string" fixed="supersetOf"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="DELIMITER">
    <xs:restriction base="xs:string">
      <xs:enumeration value="sameTimeWindow"/>
      <xs:enumeration value="acrossTimeWindows"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="GAP">
    <xs:restriction base="xs:string">
      <xs:enumeration value="true"/>
      <xs:enumeration value="false"/>
      <xs:enumeration value="unknown"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Delimiter">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="delimiter" type="DELIMITER" use="required"/>
      <xs:attribute name="gap" type="GAP" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Time">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="min" type="NUMBER"/>
      <xs:attribute name="max" type="NUMBER"/>
      <xs:attribute name="mean" type="NUMBER"/>
      <xs:attribute name="standardDeviation" type="NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="FOLLOW-SET">
    <xs:sequence>
      <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element ref="Delimiter"/>
      <xs:element ref="Time" minOccurs="0"/>
      <xs:element ref="SetReference"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="Sequence">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="SetReference"/>
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
          <xs:group ref="FOLLOW-SET"/>
        </xs:sequence>
        <xs:element ref="Time" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="numberOfSets" type="INT-NUMBER"/>
      <xs:attribute name="occurrence" type="INT-NUMBER"/>
      <xs:attribute name="support" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SetReference">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="setId" type="ELEMENT-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SequenceRule">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="AntecedentSequence"/>
        <xs:element ref="Delimiter"/>
        <xs:element ref="Time" minOccurs="0"/>
        <xs:element ref="ConsequentSequence"/>
        <xs:element ref="Time" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="id" type="ELEMENT-ID" use="required"/>
      <xs:attribute name="numberOfSets" type="INT-NUMBER" use="required"/>
      <xs:attribute name="occurrence" type="INT-NUMBER" use="required"/>
      <xs:attribute name="support" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="confidence" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="lift" type="REAL-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:group name="SEQUENCE">
    <xs:sequence>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:element ref="SequenceReference"/>
      <xs:element ref="Time" minOccurs="0"/>
    </xs:sequence>
  </xs:group>
  <xs:element name="SequenceReference">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="seqId" type="ELEMENT-ID" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="AntecedentSequence">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="SEQUENCE"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ConsequentSequence">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="SEQUENCE"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="NaiveBayesModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
       <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="BayesInputs"/>
        <xs:element ref="BayesOutput"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="threshold" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesInputs">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="BayesInput"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesInput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element minOccurs="0" ref="DerivedField"/>
        <xs:element maxOccurs="unbounded" ref="PairCounts"/>
      </xs:sequence>
      <xs:attribute name="fieldName" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="BayesOutput">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValueCounts"/>
      </xs:sequence>
      <xs:attribute name="fieldName" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="PairCounts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TargetValueCounts"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValueCounts">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="TargetValueCount"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="TargetValueCount">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="value" type="xs:string" use="required"/>
      <xs:attribute name="count" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ModelVerification">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="VerificationFields"/>
        <xs:element ref="InlineTable"/>
      </xs:sequence>
      <xs:attribute name="recordCount" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="fieldCount" type="INT-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="VerificationFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element maxOccurs="unbounded" ref="VerificationField"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="VerificationField">
   <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="field" type="xs:string" use="required"/>
      <xs:attribute name="column" type="xs:string" use="optional"/>
      <xs:attribute name="precision" type="xs:double" default="1E-6"/>
      <xs:attribute name="zeroThreshold" type="xs:double" default="1E-16"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ModelExplanation">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
          <xs:choice>
            <xs:element ref="PredictiveModelQuality" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element ref="ClusteringModelQuality" minOccurs="0" maxOccurs="unbounded"/>
          </xs:choice>
        <xs:element ref="Correlations" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="PredictiveModelQuality">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ConfusionMatrix" minOccurs="0"/>
        <xs:element ref="LiftData" minOccurs="0"/>
        <xs:element ref="ROC" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="targetField" type="xs:string" use="required"/>
      <xs:attribute name="dataName" type="xs:string" use="optional"/>
      <xs:attribute name="dataUsage" default="training">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="training"/>
            <xs:enumeration value="test"/>
            <xs:enumeration value="validation"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="meanError" type="NUMBER" use="optional"/>
      <xs:attribute name="meanAbsoluteError" type="NUMBER" use="optional"/>
      <xs:attribute name="meanSquaredError" type="NUMBER" use="optional"/>
      <xs:attribute name="r-squared" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClusteringModelQuality">
    <xs:complexType>
      <xs:attribute name="dataName" type="xs:string" use="optional"/>
      <xs:attribute name="SSE" type="NUMBER" use="optional"/>
      <xs:attribute name="SSB" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="LiftData">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ModelLiftGraph"/>
        <xs:element ref="OptimumLiftGraph" minOccurs="0"/>
        <xs:element ref="RandomLiftGraph" minOccurs="0"/>
      </xs:sequence>
      <xs:attribute name="targetFieldValue" type="xs:string"/>
      <xs:attribute name="targetFieldDisplayValue" type="xs:string"/>
      <xs:attribute name="rankingQuality" type="NUMBER"/>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ModelLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OptimumLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RandomLiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LiftGraph"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="LiftGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="XCoordinates"/>
        <xs:element ref="YCoordinates"/>
        <xs:element ref="BoundaryValues" minOccurs="0"/>
        <xs:element ref="BoundaryValueMeans" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="XCoordinates">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="YCoordinates">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BoundaryValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="BoundaryValueMeans">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="NUM-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ROC">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ROCGraph"/>
      </xs:sequence>
      <xs:attribute name="positiveTargetFieldValue" type="xs:string"
                    use="required"/>
      <xs:attribute name="positiveTargetFieldDisplayValue" type="xs:string"/>
      <xs:attribute name="negativeTargetFieldValue" type="xs:string"/>
      <xs:attribute name="negativeTargetFieldDisplayValue" type="xs:string"/>
    </xs:complexType>
  </xs:element>    
  <xs:element name="ROCGraph">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="XCoordinates"/>
        <xs:element ref="YCoordinates"/>
        <xs:element ref="BoundaryValues" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ConfusionMatrix">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="ClassLabels"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ClassLabels">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Correlations">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="CorrelationFields"/>
        <xs:element ref="CorrelationValues"/>
        <xs:element ref="CorrelationMethods" minOccurs="0"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationFields">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="STRING-ARRAY"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationValues">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CorrelationMethods">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Matrix"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>    
  <xs:element name="MiningModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="ModelExplanation" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element ref="Regression"/>
          <xs:element ref="DecisionTree"/>
        </xs:choice>
        <xs:element ref="Segmentation" minOccurs="0"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Segmentation">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="Segment" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="multipleModelMethod" type="MULTIPLE-MODEL-METHOD" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Segment">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:group ref="PREDICATE"/>
        <xs:choice>
          <xs:element ref="ClusteringModel"/>
          <xs:element ref="GeneralRegressionModel"/>
          <xs:element ref="NaiveBayesModel"/>
          <xs:element ref="NeuralNetwork"/>
          <xs:element ref="RegressionModel"/>
          <xs:element ref="RuleSetModel"/>
          <xs:element ref="SupportVectorMachineModel"/>
          <xs:element ref="TreeModel"/>
          <xs:element ref="Extension"/>
        </xs:choice>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="optional"/>
      <xs:attribute name="weight" type="NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="MULTIPLE-MODEL-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="majorityVote"/>
      <xs:enumeration value="weightedMajorityVote"/>
      <xs:enumeration value="average"/>
      <xs:enumeration value="weightedAverage"/>
      <xs:enumeration value="median"/>
      <xs:enumeration value="max"/>
      <xs:enumeration value="sum"/>
      <xs:enumeration value="selectFirst"/>
      <xs:enumeration value="selectAll"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:group name="EmbeddedModel">
    <xs:sequence>
      <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      <xs:choice>
        <xs:element ref="Regression"/>
        <xs:element ref="DecisionTree"/>
      </xs:choice>
    </xs:sequence>
  </xs:group>
  <xs:element name="ResultField">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="name" type="FIELD-NAME" use="required"/>
      <xs:attribute name="displayName" type="xs:string"/>
      <xs:attribute name="optype" type="OPTYPE"/>
      <xs:attribute name="dataType" type="DATATYPE"/>
      <xs:attribute name="feature" type="RESULT-FEATURE"/>
      <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Regression">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ResultField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="RegressionTable" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="normalizationMethod" type="REGRESSIONNORMALIZATIONMETHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="DecisionTree">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="Targets" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="ResultField" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="Node"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string"/>
      <xs:attribute name="missingValueStrategy" type="MISSING-VALUE-STRATEGY" default="none"/>
      <xs:attribute name="missingValuePenalty" type="PROB-NUMBER" default="1.0"/>
      <xs:attribute name="noTrueChildStrategy" type="NO-TRUE-CHILD-STRATEGY" default="returnNullPrediction"/>
      <xs:attribute name="splitCharacteristic" default="multiSplit">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="binarySplit"/>
            <xs:enumeration value="multiSplit"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeSeriesModel">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="MiningSchema"/>
        <xs:element ref="Output" minOccurs="0"/>
        <xs:element ref="ModelStats" minOccurs="0"/>
        <xs:element ref="LocalTransformations" minOccurs="0"/>
        <xs:element ref="TimeSeries" minOccurs="0" maxOccurs="3"/>
        <xs:element ref="SpectralAnalysis" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ARIMA" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ExponentialSmoothing" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="SeasonalTrendDecomposition" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="ModelVerification" minOccurs="0"/>
        <xs:element ref="Extension" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="modelName" type="xs:string" use="optional"/>
      <xs:attribute name="functionName" type="MINING-FUNCTION" use="required"/>
      <xs:attribute name="algorithmName" type="xs:string" use="optional"/>
      <xs:attribute name="bestFit" type="TIMESERIES-ALGORITHM" use="required"/>
    </xs:complexType>
  </xs:element>    
  <xs:simpleType name="TIMESERIES-ALGORITHM">
    <xs:restriction base="xs:string">
      <xs:enumeration value="ARIMA"/>
      <xs:enumeration value="ExponentialSmoothing"/>
      <xs:enumeration value="SeasonalTrendDecomposition"/>
      <xs:enumeration value="SpectralAnalysis"/>
    </xs:restriction>
  </xs:simpleType>    
  <xs:element name="TimeSeries">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="TimeAnchor" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="TimeException" minOccurs="0" maxOccurs="2"/>
        <xs:element ref="TimeValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="usage" type="TIMESERIES-USAGE" default="original"/>
      <xs:attribute name="startTime" type="REAL-NUMBER"/>
      <xs:attribute name="endTime" type="REAL-NUMBER"/>
      <xs:attribute name="interpolationMethod" type="INTERPOLATION-METHOD" default="none"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIMESERIES-USAGE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="original"/>
      <xs:enumeration value="logical"/>
      <xs:enumeration value="prediction"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TimeValue">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Timestamp" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="index" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="time" type="NUMBER" use="optional"/>
      <xs:attribute name="value" type="REAL-NUMBER" use="required"/>
      <xs:attribute name="standardError" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeAnchor">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="TimeCycle" minOccurs="0" maxOccurs="unbounded"/>
        <xs:element ref="TimeException" minOccurs="0" maxOccurs="2"/>
      </xs:sequence>
      <xs:attribute name="type" type="TIME-ANCHOR"/>
      <xs:attribute name="offset" type="INT-NUMBER"/>
      <xs:attribute name="stepsize" type="INT-NUMBER"/>
      <xs:attribute name="displayName" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="TimeCycle">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="INT-ARRAY" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="length" type="INT-NUMBER"/>
      <xs:attribute name="type" type="VALID-TIME-SPEC"/>
      <xs:attribute name="displayName" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIME-ANCHOR">
    <xs:restriction base="xs:string">
      <xs:enumeration value="dateTimeMillisecdondsSince[0]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1960]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1970]"/>
      <xs:enumeration value="dateTimeMillisecdondsSince[1980]"/>
      <xs:enumeration value="dateTimeSecdondsSince[0]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1960]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1970]"/>
      <xs:enumeration value="dateTimeSecdondsSince[1980]"/>
      <xs:enumeration value="dateDaysSince[0]"/>
      <xs:enumeration value="dateDaysSince[1960]"/>
      <xs:enumeration value="dateDaysSince[1970]"/>
      <xs:enumeration value="dateDaysSince[1980]"/>
      <xs:enumeration value="dateMonthsSince[0]"/>
      <xs:enumeration value="dateMonthsSince[1960]"/>
      <xs:enumeration value="dateMonthsSince[1970]"/>
      <xs:enumeration value="dateMonthsSince[1980]"/>
      <xs:enumeration value="dateYearsSince[0]"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="VALID-TIME-SPEC">
    <xs:restriction base="xs:string">
      <xs:enumeration value="includeAll"/>
      <xs:enumeration value="includeFromTo"/>
      <xs:enumeration value="excludeFromTo"/>
      <xs:enumeration value="includeSet"/>
      <xs:enumeration value="excludeSet"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="TimeException">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="INT-ARRAY" minOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="type" type="TIME-EXCEPTION-TYPE"/>
      <xs:attribute name="count" type="INT-NUMBER"/>
    </xs:complexType>
  </xs:element>
  <xs:simpleType name="TIME-EXCEPTION-TYPE">
    <xs:restriction base="xs:string">
      <xs:enumeration value="exclude"/>
      <xs:enumeration value="include"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="INTERPOLATION-METHOD">
    <xs:restriction base="xs:string">
      <xs:enumeration value="none"/>
      <xs:enumeration value="linear"/>
      <xs:enumeration value="exponentialSpline"/>
      <xs:enumeration value="cubicSpline"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="ExponentialSmoothing">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="Level" minOccurs="1" maxOccurs="1"/>
        <xs:element ref="Trend" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="Seasonality_ExpoSmooth" minOccurs="0" maxOccurs="1"/>
        <xs:element ref="TimeValue" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="RMSE" type="REAL-NUMBER"/>
      <xs:attribute name="transformation" default="none">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="none"/>
            <xs:enumeration value="logarithmic"/>
            <xs:enumeration value="squareroot"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="Seasonality_ExpoSmooth">
    <xs:complexType>
      <xs:sequence>
        <xs:group ref="REAL-ARRAY"/>
      </xs:sequence>
      <xs:attribute name="type" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="additive"/>
            <xs:enumeration value="multiplicative"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
      <xs:attribute name="period" type="INT-NUMBER" use="required"/>
      <xs:attribute name="unit" type="xs:string" use="optional"/>
      <xs:attribute name="phase" type="INT-NUMBER" use="optional"/>
      <xs:attribute name="delta" type="REAL-NUMBER" use="optional"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="Level">
      <xs:complexType>
        <xs:attribute name="alpha" type="REAL-NUMBER" use="optional"/>
        <xs:attribute name="smoothedValue" type="REAL-NUMBER"/>
        <xs:attribute name="quadraticSmoothedValue" type="REAL-NUMBER"/>
        <xs:attribute name="cubicSmoothedValue" type="REAL-NUMBER"/>
      </xs:complexType>
    </xs:element>
  <xs:element name="Trend">
    <xs:complexType>
      <xs:attribute name="trend" default="additive">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="additive"/>
            <xs:enumeration value="damped_additive"/>
            <xs:enumeration value="multiplicative"/>
            <xs:enumeration value="damped_multiplicative"/>
            <xs:enumeration value="double_exponential"/>
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute> 
      <xs:attribute name="gamma" type="REAL-NUMBER" use="optional"/>
      <xs:attribute name="phi" type="REAL-NUMBER" use="optional" default="1"/>
      <xs:attribute name="smoothedValue" type="REAL-NUMBER" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="SpectralAnalysis">
  </xs:element>
  <xs:element name="ARIMA">
  </xs:element>
  <xs:element name="SeasonalTrendDecomposition">
  </xs:element>

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.