buildframework/helium/tools/common/schema/ant.xsd
author kelvzhu
Mon, 13 Sep 2010 13:11:19 +0800
changeset 640 ac0bbc1e5d79
parent 217 0f5e3a7fb6af
permissions -rw-r--r--
Merge sysdeftools's addtion

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="ant.apache.org"
           xmlns:au="org.apache.ant.antunit"
           xmlns:hlm="http://www.nokia.com/helium"
           xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified">
    <xs:import namespace="org.apache.ant.antunit" schemaLocation="antunit.xsd"/>
    <xs:import namespace="http://www.nokia.com/helium" schemaLocation="helium_ant.xsd"/>
    <xs:complexType name="taskcontainerType" abstract="true">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="propertyfile" type="propertyfileType"/>
            <xs:element name="propertycopy" type="propertycopyType"/>
            <xs:element name="importtypelib" type="importtypelibType"/>
            <xs:element name="sql" type="sqlType"/>
            <xs:element name="cvspass" type="cvspassType"/>
            <xs:element name="p4reopen" type="p4reopenType"/>
            <xs:element name="csc" type="cscType"/>
            <xs:element name="dirname" type="dirnameType"/>
            <xs:element name="p4label" type="p4labelType"/>
            <xs:element name="p4revert" type="p4revertType"/>
            <xs:element name="replaceregexp" type="replaceregexpType"/>
            <xs:element name="get" type="getType"/>
            <xs:element name="jjtree" type="jjtreeType"/>
            <xs:element name="sleep" type="sleepType"/>
            <xs:element name="jarlib-display" type="jarlib-displayType"/>
            <xs:element name="dependset" type="dependsetType"/>
            <xs:element name="zip" type="zipType"/>
            <xs:element name="patch" type="patchType"/>
            <xs:element name="jspc" type="jspcType"/>
            <xs:element name="style" type="styleType"/>
            <xs:element name="test" type="testType"/>
            <xs:element name="tstamp" type="tstampType"/>
            <xs:element name="unwar" type="unwarType"/>
            <xs:element name="icontract" type="icontractType"/>
            <xs:element name="cvschangelog" type="cvschangelogType"/>
            <xs:element name="p4submit" type="p4submitType"/>
            <xs:element name="p4change" type="p4changeType"/>
            <xs:element name="bzip2" type="bzip2Type"/>
            <xs:element name="sync" type="syncType"/>
            <xs:element name="p4delete" type="p4deleteType"/>
            <xs:element name="javadoc" type="javadocType"/>
            <xs:element name="p4integrate" type="p4integrateType"/>
            <xs:element name="translate" type="translateType"/>
            <xs:element name="signjar" type="signjarType"/>
            <xs:element name="chown" type="chownType"/>
            <xs:element name="vajload" type="vajloadType"/>
            <xs:element name="jarlib-available" type="jarlib-availableType"/>
            <xs:element name="buildnumber" type="buildnumberType"/>
            <xs:element name="jpcovmerge" type="jpcovmergeType"/>
            <xs:element name="war" type="warType"/>
            <xs:element name="rename" type="renameType"/>
            <xs:element name="sequential" type="sequentialType"/>
            <xs:element name="serverdeploy" type="serverdeployType"/>
            <xs:element name="property" type="propertyType"/>
            <xs:element name="subant" type="subantType"/>
            <xs:element name="move" type="moveType"/>
            <xs:element name="ildasm" type="ildasmType"/>
            <xs:element name="copydir" type="copydirType"/>
            <xs:element name="fixcrlf" type="fixcrlfType"/>
            <xs:element name="pathconvert" type="pathconvertType"/>
            <xs:element name="record" type="recordType"/>
            <xs:element name="p4sync" type="p4syncType"/>
            <xs:element name="exec" type="execType"/>
            <xs:element name="ccmklabel" type="ccmklabelType"/>
            <xs:element name="p4edit" type="p4editType"/>
            <xs:element name="manifest" type="manifestType"/>
            <xs:element name="maudit" type="mauditType"/>
            <xs:element name="antlr" type="antlrType"/>
            <xs:element name="jpcovreport" type="jpcovreportType"/>
            <xs:element name="execon" type="execonType"/>
            <xs:element name="ant" type="antType"/>
            <xs:element name="xmlvalidate" type="xmlvalidateType"/>
            <xs:element name="xslt" type="xsltType"/>
            <xs:element name="p4resolve" type="p4resolveType"/>
            <xs:element name="gzip" type="gzipType"/>
            <xs:element name="native2ascii" type="native2asciiType"/>
            <xs:element name="ccrmtype" type="ccrmtypeType"/>
            <xs:element name="ear" type="earType"/>
            <xs:element name="input" type="inputType"/>
            <xs:element name="presetdef" type="presetdefType"/>
            <xs:element name="rmic" type="rmicType"/>
            <xs:element name="checksum" type="checksumType"/>
            <xs:element name="mail" type="mailType"/>
            <xs:element name="loadfile" type="loadfileType"/>
            <xs:element name="loadresource" type="loadresourceType"/>
            <xs:element name="mimemail" type="mimemailType"/>
            <xs:element name="gunzip" type="gunzipType"/>
            <xs:element name="concat" type="concatType"/>
            <xs:element name="cab" type="cabType"/>
            <xs:element name="touch" type="touchType"/>
            <xs:element name="parallel" type="parallelType"/>
            <xs:element name="splash" type="splashType"/>
            <xs:element name="antcall" type="antcallType"/>
            <xs:element name="typedef" type="typedefType"/>
            <xs:element name="p4have" type="p4haveType"/>
            <xs:element name="filter" type="filterType"/>
            <xs:element name="xmlproperty" type="xmlpropertyType"/>
            <xs:element name="import" type="importType"/>
            <xs:element name="copy" type="copyType"/>
            <xs:element name="jsharpc" type="jsharpcType"/>
            <xs:element name="symlink" type="symlinkType"/>
            <xs:element name="antstructure" type="antstructureType"/>
            <xs:element name="script" type="scriptType"/>
            <xs:element name="rpm" type="rpmType"/>
            <xs:element name="delete" type="deleteType"/>
            <xs:element name="replace" type="replaceType"/>
            <xs:element name="attrib" type="attribType"/>
            <xs:element name="waitfor" type="waitforType"/>
            <xs:element name="untar" type="untarType"/>
            <xs:element name="loadproperties" type="loadpropertiesType"/>
            <xs:element name="available" type="availableType"/>
            <xs:element name="echoproperties" type="echopropertiesType"/>
            <xs:element name="chgrp" type="chgrpType"/>
            <xs:element name="vajexport" type="vajexportType"/>
            <xs:element name="bunzip2" type="bunzip2Type"/>
            <xs:element name="whichresource" type="whichresourceType"/>
            <xs:element name="copyfile" type="copyfileType"/>
            <xs:element name="p4labelsync" type="p4labelsyncType"/>
            <xs:element name="macrodef" type="macrodefType"/>
            <xs:element name="unjar" type="unjarType"/>
            <xs:element name="vbc" type="vbcType"/>
            <xs:element name="mkdir" type="mkdirType"/>
            <xs:element name="condition" type="conditionType"/>
            <xs:element name="cvs" type="cvsType"/>
            <xs:element name="tempfile" type="tempfileType"/>
            <xs:element name="junit" type="junitType"/>
            <xs:element name="junitreport" type="junitreportType"/>
            <xs:element name="cobertura-instrument" type="cobertura-instrumentType"/>
            <xs:element name="cobertura-report" type="cobertura-reportType"/>
            <xs:element name="taskdef" type="taskdefType"/>
            <xs:element name="echo" type="echoType"/>
            <xs:element name="java" type="javaType"/>
            <xs:element name="renameext" type="renameextType"/>
            <xs:element name="basename" type="basenameType"/>
            <xs:element name="javadoc2" type="javadoc2Type"/>
            <xs:element name="tar" type="tarType"/>
            <xs:element name="vajimport" type="vajimportType"/>
            <xs:element name="p4fstat" type="p4fstatType"/>
            <xs:element name="setproxy" type="setproxyType"/>
            <xs:element name="p4counter" type="p4counterType"/>
            <xs:element name="ilasm" type="ilasmType"/>
            <xs:element name="apply" type="applyType"/>
            <xs:element name="jarlib-resolve" type="jarlib-resolveType"/>
            <xs:element name="jlink" type="jlinkType"/>
            <xs:element name="cvstagdiff" type="cvstagdiffType"/>
            <xs:element name="javacc" type="javaccType"/>
            <xs:element name="chmod" type="chmodType"/>
            <xs:element name="pvcs" type="pvcsType"/>
            <xs:element name="jarlib-manifest" type="jarlib-manifestType"/>
            <xs:element name="jar" type="jarType"/>
            <xs:element name="ccmklbtype" type="ccmklbtypeType"/>
            <xs:element name="sound" type="soundType"/>
            <xs:element name="scriptdef" type="scriptdefType"/>
            <xs:element name="defaultexcludes" type="defaultexcludesType"/>
            <xs:element name="blgenclient" type="blgenclientType"/>
            <xs:element name="uptodate" type="uptodateType"/>
            <xs:element name="jjdoc" type="jjdocType"/>
            <xs:element name="genkey" type="genkeyType"/>
            <xs:element name="javah" type="javahType"/>
            <xs:element name="ccmreconfigure" type="ccmreconfigureType"/>
            <xs:element name="fail" type="failType"/>
            <xs:element name="unzip" type="unzipType"/>
            <xs:element name="javac" type="javacType"/>
            <xs:element name="p4add" type="p4addType"/>
            <xs:element name="jpcoverage" type="jpcoverageType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="deltree" type="deltreeType"/>
            <xs:element name="ddcreator" type="ddcreatorType"/>
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="assertions" type="assertionsType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="filterset" type="filtersetType"/>
            <xs:element name="libfileset" type="libfilesetType"/>
            <xs:element name="filterreader" type="filterreaderType"/>
            <xs:element name="scriptfilter" type="scriptfilterType"/>
            <xs:element name="concatfilter" type="concatfilterType"/>
            <xs:element name="extension" type="extensionType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="filterchain" type="filterchainType"/>
            <xs:element name="path" type="pathType"/>
            <xs:element name="classfileset" type="classfilesetType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
            <xs:element name="description" type="descriptionType"/>
            <xs:element name="mapper" type="mapperType"/>
            <xs:element name="zipfileset" type="zipfilesetType"/>
            <xs:element name="substitution" type="substitutionType"/>
            <xs:element name="extensionSet" type="extensionSetType"/>
            <xs:element name="regexp" type="regexpType"/>
            <xs:element name="foreach" type="foreachType"/>
            <xs:element name="doxygen" type="doxygenType"/>
            <xs:element name="var" type="varType"/>
            <xs:element name="propertyregex" type="propertyregexType"/>
            <xs:element name="if" type="ifType"/>
            <xs:element name="for" type="forType"/>
            <xs:element name="mergelogs" type="mergelogsType"/>
            <xs:element name="reviewplan" type="reviewplanType"/>
            <xs:element name="processreviewplan" type="processreviewplanType"/>
            <xs:element name="convertreviewlog" type="convertreviewlogType"/>
            <xs:element name="lint" type="lintType"/>
            <xs:element name="customcopy" type="customcopyType"/>
            <xs:element name="fop" type="fopType"/>
            <xs:element name="xmltask" type="xmltaskType"/>
            <xs:element name="ftp" type="ftpType"/>
            <xs:element name="abld" type="abldType"/>
            <xs:element name="getsize" type="getsizeType"/>
            <xs:element name="grand" type="grandType"/>
            <xs:element name="svn" type="svnType"/>
            <xs:element name="antunit" type="antunitType"/>
            <xs:element name="schemavalidate" type="schemavalidateType"/>
            <xs:element name="python" type="pythonType"/>
            <xs:element name="antform" type="antformType"/>
            <xs:element name="math" type="mathType"/>
            <xs:element name="antserver" type="antserverType"/>
            <xs:element name="shellscript" type="shellscriptType"/>
            <xs:element name="runtarget" type="runtargetType"/>
            <xs:element name="echoxml" type="echoxmlType"/>
            <xs:element name="trycatch" type="trycatchType"/>
            <xs:element name="resourcecount" type="resourcecountType"/>
            <xs:element name="remoteant" type="remoteantType"/>
            <xs:element name="retry" type="retryType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="then" type="thenType"/>
            <xs:element name="antcallback" type="antcallbackType"/>
            <xs:element name="diagnostics" type="diagnosticsType"/>
            <xs:element name="sshexec" type="sshexecType"/>
            <xs:element name="scp" type="scpType"/>
            <xs:element name="xcluder" type="xcluderType"/>
            <xs:element name="assertTrue" type="assertTrueType"/>
            <xs:element name="assertFileExists" type="assertFileExistsType"/>
            <xs:element name="fmpp" type="fmppType"/>
            <xs:element name="timestampselector" type="timestampselectorType"/>
            <xs:element name="preset.exec" type="preset.execType"/>
            <xs:element name="preset.mail" type="preset.mailType"/>
            <xs:element name="createDeltaZipMacro" type="createDeltaZipMacroType"/>
            <xs:element name="zipContentMacro" type="zipContentMacroType"/>
            
            <xs:element ref="au:assertPropertyEquals"/>
            <xs:element ref="au:assertLogDoesntContain"/>
            <xs:element ref="au:assertPropertySet"/>
            
            <xs:element ref="hlm:configuration"/>
            <xs:element ref="hlm:database"/>
            <xs:element ref="hlm:logextract"/>
            <xs:element ref="hlm:signal"/>
            <xs:element ref="hlm:dependencies"/>
            <xs:element ref="hlm:compileHtmlscanlogMacro"/>
            <xs:element ref="hlm:cmakerMacro"/>
            <xs:element ref="hlm:compileEbsMacro"/>
            <xs:element ref="hlm:buildEbsXmlMacro"/>
            <xs:element ref="hlm:logHtmlMacro"/>
            <xs:element ref="hlm:compileGenxmlMacro"/>
            <xs:element ref="hlm:bldmakeBldfilesMacro"/>
            <xs:element ref="hlm:abldMacro"/>
            <xs:element ref="hlm:filterRecordStartMacro"/>
            <xs:element ref="hlm:filterRecordStopMacro"/>
            <xs:element ref="hlm:updateStatusMacro"/>
            <xs:element ref="hlm:createCshelpBldinfMacro"/>
            <xs:element ref="hlm:imakerMacro"/>
            <xs:element ref="hlm:imaker"/>
            <xs:element ref="hlm:defaultEngine"/>
            <xs:element ref="hlm:emakeEngine"/>
            <xs:element ref="hlm:ccmAvailableMacro"/>
            <xs:element ref="hlm:publishMacro"/>
            <xs:element ref="hlm:rombuildMacro"/>
            <xs:element ref="hlm:notifyMacro"/>
            <xs:element ref="hlm:diskspaceMacro"/>
            <xs:element ref="hlm:netrcPasswordMacro"/>
            <xs:element ref="hlm:netrcUsernameMacro"/>
            <xs:element ref="hlm:compileGenxmlMergeMacro"/>
            <xs:element ref="hlm:declareIdMacro"/>
            <xs:element ref="hlm:mailTargetCompletedMacro"/>
            <xs:element ref="hlm:deleteFotaConfMacro"/>
            <xs:element ref="hlm:rombuildValueMacro"/>
            <xs:element ref="hlm:assert"/>
            <xs:element ref="hlm:assertFileExists"/>
            <xs:element ref="hlm:referenceToFileMacro"/>
            <xs:element ref="hlm:xmlToFmtlMacro"/>
            <xs:element ref="hlm:tempRecordStartMacro"/>
            <xs:element ref="hlm:tempRecordStopMacro"/>
            <xs:element ref="hlm:fooMacro"/>
            <!-- Presets -->
            <!-- Macros -->
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="resourceCollectionContainerType" abstract="true">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
            <xs:element name="first" type="firstType"/>
            <xs:element name="sort" type="sortType"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="addfilesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="andType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="isset" type="issetType"/>
            <xs:element name="os" type="osType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="antType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="property" type="propertyType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="inheritAll">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="inheritrefs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="antfile" type="xs:string"/>
        <xs:attribute name="target" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="antcallType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="param" type="paramType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="inheritAll">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="inheritrefs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="target" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="antlrType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="jvmarg" type="jvmargType"/>
            <xs:element name="classpath" type="classpathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputdirectory" type="xs:string"/>
        <xs:attribute name="fork">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="trace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tracetreewalker">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="html">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tracelexer">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="diagnostic">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="traceparser">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="glib" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="antstructureType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="applyType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="archivesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="argType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="line" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="argumentType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="line" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="assertionsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="disable" type="disableType"/>
            <xs:element name="enable" type="enableType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="enablesystemassertions">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="attribType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="readonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="hidden">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="system">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="archive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="attributeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="default" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="availableType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="filepath" type="filepathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="ignoresystemclasses">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="filepath" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="basenameType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="suffix" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="bccType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="address" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="blgenclientType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="mode" type="xs:string"/>
        <xs:attribute name="ejbjar" type="xs:string"/>
        <xs:attribute name="version" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="clientjar" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="bootclasspathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="bottomType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="buildnumberType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="buildpathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="buildpathelementType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="bunzip2Type">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="bzip2Type">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="zipfile" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cabType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cabfile" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="options" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="catalogpathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ccType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="address" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ccmklabelType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="recurse">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="replace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="viewpath" type="xs:string"/>
        <xs:attribute name="typename" type="xs:string"/>
        <xs:attribute name="comment" type="xs:string"/>
        <xs:attribute name="version" type="xs:string"/>
        <xs:attribute name="failonerr">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="objselect" type="xs:string"/>
        <xs:attribute name="cleartooldir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vob" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="commentfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ccmklbtypeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="global">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="replace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="shared">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="viewpath" type="xs:string"/>
        <xs:attribute name="typename" type="xs:string"/>
        <xs:attribute name="pbranch">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="comment" type="xs:string"/>
        <xs:attribute name="failonerr">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="objselect" type="xs:string"/>
        <xs:attribute name="cleartooldir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vob" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="commentfile" type="xs:string"/>
        <xs:attribute name="ordinary">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="ccmreconfigureType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="ccmaction" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="ccmproject" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="recurse">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="ccmdir" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ccrmtypeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="viewpath" type="xs:string"/>
        <xs:attribute name="typename" type="xs:string"/>
        <xs:attribute name="rmall">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="comment" type="xs:string"/>
        <xs:attribute name="ignore">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="typekind" type="xs:string"/>
        <xs:attribute name="failonerr">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="objselect" type="xs:string"/>
        <xs:attribute name="cleartooldir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vob" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="commentfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="checksumType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="fileext" type="xs:string"/>
        <xs:attribute name="totalproperty" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="readbuffersize" type="xs:string"/>
        <xs:attribute name="verifyproperty" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="algorithm" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="provider" type="xs:string"/>
        <xs:attribute name="forceoverwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="chgrpType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="group" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="chmodType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="mapper" type="mapperType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="arg" type="argType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="perm" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="chownType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="owner" type="xs:string"/>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="classType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="classconstantsType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="classesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="classfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="rootfileset" type="rootfilesetType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="root" type="rootType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="rootclass" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="classpathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="commandlineType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="marker" type="markerType"/>
            <xs:element name="argument" type="argumentType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="executable" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="commentType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="compilerargType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="line" type="xs:string"/>
        <xs:attribute name="implementation" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="compiler" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="compilerclasspathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="concatType" mixed="true">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterchain" type="filterchainType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="path" type="pathType"/>
            <xs:element name="footer" type="footerType"/>
            <xs:element name="header" type="headerType"/>
            <xs:element name="propertyresource" type="propertyresourceType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="force">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="eol">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="asis"/>
                    <xs:enumeration value="cr"/>
                    <xs:enumeration value="lf"/>
                    <xs:enumeration value="crlf"/>
                    <xs:enumeration value="mac"/>
                    <xs:enumeration value="unix"/>
                    <xs:enumeration value="dos"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputencoding" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="fixlastline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="concatfilterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="append" type="xs:string"/>
        <xs:attribute name="prepend" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="conditionType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="isfalse" type="isfalseType"/>
            <xs:element name="isreference" type="isreferenceType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="available" type="availableType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="contains" type="containsconditionType"/>
            <xs:element name="os" type="osType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="filesmatch" type="filesmatchType"/>
            <xs:element name="checksum" type="checksumType"/>
            <xs:element name="istrue" type="istrueType"/>
            <xs:element name="isset" type="issetType"/>
            <xs:element name="socket" type="socketType"/>
            <xs:element name="http" type="httpType"/>
            <xs:element name="uptodate" type="uptodateType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="containsType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="ignorewhitespace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="text" type="xs:string"/>
    </xs:complexType>
    <!-- Used for <contains> in <fail> -->
    <xs:complexType name="containsconditionType">
        <xs:attribute name="casesensitive" type="xs:boolean"/>
        <xs:attribute name="string" type="xs:string"/>
        <xs:attribute name="substring" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="containsregexType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flags" type="xs:string"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="replace" type="xs:string"/>
        <xs:attribute name="pattern" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="containsregexpType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="expression" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="containsstringType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="contains" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="copyType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterchain" type="filterchainType"/>
            <xs:element name="resources" type="resourcesType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="filterset" type="filtersetType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flatten">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="verbose" type="xs:string"/>
        <xs:attribute name="includeemptydirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="enablemultiplemappings">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputencoding" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="preservelastmodified">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filtering">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="copydirType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flatten">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="forceoverwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="filtering">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="copyfileType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="forceoverwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="filtering" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="coveragepathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cscType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="resource" type="resourceType"/>
            <xs:element name="define" type="defineType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="src" type="srcType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="win32icon" type="xs:string"/>
        <xs:attribute name="definitions" type="xs:string"/>
        <xs:attribute name="referencefiles" type="xs:string"/>
        <xs:attribute name="fullpaths">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="mainclass" type="xs:string"/>
        <xs:attribute name="utf8output">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="useresponsefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includedefaultreferences">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="warnlevel" type="xs:string"/>
        <xs:attribute name="win32res" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="extraoptions" type="xs:string"/>
        <xs:attribute name="incremental">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="noconfig">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="references" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="optimize">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="additionalmodules" type="xs:string"/>
        <xs:attribute name="docfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="unsafe">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filealign" type="xs:string"/>
        <xs:attribute name="targettype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="exe"/>
                    <xs:enumeration value="library"/>
                    <xs:enumeration value="module"/>
                    <xs:enumeration value="winexe"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="customType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="param" type="paramType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cvsType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="commandline" type="commandlineType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cvsrsh" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="passfile" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="cvsroot" type="xs:string"/>
        <xs:attribute name="reallyquiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="compressionlevel" type="xs:string"/>
        <xs:attribute name="noexec">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="date" type="xs:string"/>
        <xs:attribute name="compression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tag" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cvschangelogType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="user" type="userType"/>
            <xs:element name="commandline" type="commandlineType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cvsrsh" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="passfile" type="xs:string"/>
        <xs:attribute name="end" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="start" type="xs:string"/>
        <xs:attribute name="cvsroot" type="xs:string"/>
        <xs:attribute name="reallyquiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="compressionlevel" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="usersfile" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="noexec">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="daysinpast" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="date" type="xs:string"/>
        <xs:attribute name="compression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tag" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cvspassType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="cvsroot" type="xs:string"/>
        <xs:attribute name="passfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cvstagdiffType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="commandline" type="commandlineType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cvsrsh" type="xs:string"/>
        <xs:attribute name="endtag" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="passfile" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="cvsroot" type="xs:string"/>
        <xs:attribute name="reallyquiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="starttag" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="compressionlevel" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="enddate" type="xs:string"/>
        <xs:attribute name="noexec">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="date" type="xs:string"/>
        <xs:attribute name="startdate" type="xs:string"/>
        <xs:attribute name="compression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tag" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="daemonsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="propertyfile" type="propertyfileType"/>
                <xs:element name="importtypelib" type="importtypelibType"/>
                <xs:element name="sql" type="sqlType"/>
                <xs:element name="cvspass" type="cvspassType"/>
                <xs:element name="p4reopen" type="p4reopenType"/>
                <xs:element name="csc" type="cscType"/>
                <xs:element name="dirname" type="dirnameType"/>
                <xs:element name="p4label" type="p4labelType"/>
                <xs:element name="p4revert" type="p4revertType"/>
                <xs:element name="replaceregexp" type="replaceregexpType"/>
                <xs:element name="get" type="getType"/>
                <xs:element name="jjtree" type="jjtreeType"/>
                <xs:element name="sleep" type="sleepType"/>
                <xs:element name="jarlib-display" type="jarlib-displayType"/>
                <xs:element name="dependset" type="dependsetType"/>
                <xs:element name="zip" type="zipType"/>
                <xs:element name="patch" type="patchType"/>
                <xs:element name="jspc" type="jspcType"/>
                <xs:element name="style" type="styleType"/>
                <xs:element name="test" type="testType"/>
                <xs:element name="tstamp" type="tstampType"/>
                <xs:element name="unwar" type="unwarType"/>
                <xs:element name="icontract" type="icontractType"/>
                <xs:element name="cvschangelog" type="cvschangelogType"/>
                <xs:element name="p4submit" type="p4submitType"/>
                <xs:element name="p4change" type="p4changeType"/>
                <xs:element name="bzip2" type="bzip2Type"/>
                <xs:element name="sync" type="syncType"/>
                <xs:element name="p4delete" type="p4deleteType"/>
                <xs:element name="javadoc" type="javadocType"/>
                <xs:element name="p4integrate" type="p4integrateType"/>
                <xs:element name="translate" type="translateType"/>
                <xs:element name="signjar" type="signjarType"/>
                <xs:element name="chown" type="chownType"/>
                <xs:element name="vajload" type="vajloadType"/>
                <xs:element name="jarlib-available" type="jarlib-availableType"/>
                <xs:element name="buildnumber" type="buildnumberType"/>
                <xs:element name="jpcovmerge" type="jpcovmergeType"/>
                <xs:element name="war" type="warType"/>
                <xs:element name="rename" type="renameType"/>
                <xs:element name="sequential" type="sequentialType"/>
                <xs:element name="serverdeploy" type="serverdeployType"/>
                <xs:element name="property" type="propertyType"/>
                <xs:element name="subant" type="subantType"/>
                <xs:element name="move" type="moveType"/>
                <xs:element name="ildasm" type="ildasmType"/>
                <xs:element name="copydir" type="copydirType"/>
                <xs:element name="fixcrlf" type="fixcrlfType"/>
                <xs:element name="pathconvert" type="pathconvertType"/>
                <xs:element name="record" type="recordType"/>
                <xs:element name="p4sync" type="p4syncType"/>
                <xs:element name="exec" type="execType"/>
                <xs:element name="ccmklabel" type="ccmklabelType"/>
                <xs:element name="p4edit" type="p4editType"/>
                <xs:element name="manifest" type="manifestType"/>
                <xs:element name="maudit" type="mauditType"/>
                <xs:element name="antlr" type="antlrType"/>
                <xs:element name="jpcovreport" type="jpcovreportType"/>
                <xs:element name="execon" type="execonType"/>
                <xs:element name="ant" type="antType"/>
                <xs:element name="xmlvalidate" type="xmlvalidateType"/>
                <xs:element name="xslt" type="xsltType"/>
                <xs:element name="p4resolve" type="p4resolveType"/>
                <xs:element name="gzip" type="gzipType"/>
                <xs:element name="native2ascii" type="native2asciiType"/>
                <xs:element name="ccrmtype" type="ccrmtypeType"/>
                <xs:element name="ear" type="earType"/>
                <xs:element name="input" type="inputType"/>
                <xs:element name="presetdef" type="presetdefType"/>
                <xs:element name="rmic" type="rmicType"/>
                <xs:element name="checksum" type="checksumType"/>
                <xs:element name="mail" type="mailType"/>
                <xs:element name="loadfile" type="loadfileType"/>
                <xs:element name="mimemail" type="mimemailType"/>
                <xs:element name="gunzip" type="gunzipType"/>
                <xs:element name="concat" type="concatType"/>
                <xs:element name="cab" type="cabType"/>
                <xs:element name="touch" type="touchType"/>
                <xs:element name="parallel" type="parallelType"/>
                <xs:element name="splash" type="splashType"/>
                <xs:element name="antcall" type="antcallType"/>
                <xs:element name="typedef" type="typedefType"/>
                <xs:element name="p4have" type="p4haveType"/>
                <xs:element name="filter" type="filterType"/>
                <xs:element name="xmlproperty" type="xmlpropertyType"/>
                <xs:element name="import" type="importType"/>
                <xs:element name="copy" type="copyType"/>
                <xs:element name="jsharpc" type="jsharpcType"/>
                <xs:element name="symlink" type="symlinkType"/>
                <xs:element name="antstructure" type="antstructureType"/>
                <xs:element name="script" type="scriptType"/>
                <xs:element name="rpm" type="rpmType"/>
                <xs:element name="delete" type="deleteType"/>
                <xs:element name="replace" type="replaceType"/>
                <xs:element name="attrib" type="attribType"/>
                <xs:element name="waitfor" type="waitforType"/>
                <xs:element name="untar" type="untarType"/>
                <xs:element name="loadproperties" type="loadpropertiesType"/>
                <xs:element name="available" type="availableType"/>
                <xs:element name="echoproperties" type="echopropertiesType"/>
                <xs:element name="chgrp" type="chgrpType"/>
                <xs:element name="vajexport" type="vajexportType"/>
                <xs:element name="bunzip2" type="bunzip2Type"/>
                <xs:element name="whichresource" type="whichresourceType"/>
                <xs:element name="copyfile" type="copyfileType"/>
                <xs:element name="p4labelsync" type="p4labelsyncType"/>
                <xs:element name="macrodef" type="macrodefType"/>
                <xs:element name="unjar" type="unjarType"/>
                <xs:element name="vbc" type="vbcType"/>
                <xs:element name="mkdir" type="mkdirType"/>
                <xs:element name="condition" type="conditionType"/>
                <xs:element name="cvs" type="cvsType"/>
                <xs:element name="tempfile" type="tempfileType"/>
                <xs:element name="junit" type="junitType"/>
                <xs:element name="junitreport" type="junitreportType"/>
                <xs:element name="cobertura-instrument" type="cobertura-instrumentType"/>
                <xs:element name="cobertura-report" type="cobertura-reportType"/>
                <xs:element name="taskdef" type="taskdefType"/>
                <xs:element name="echo" type="echoType"/>
                <xs:element name="java" type="javaType"/>
                <xs:element name="renameext" type="renameextType"/>
                <xs:element name="basename" type="basenameType"/>
                <xs:element name="javadoc2" type="javadoc2Type"/>
                <xs:element name="tar" type="tarType"/>
                <xs:element name="vajimport" type="vajimportType"/>
                <xs:element name="p4fstat" type="p4fstatType"/>
                <xs:element name="setproxy" type="setproxyType"/>
                <xs:element name="p4counter" type="p4counterType"/>
                <xs:element name="ilasm" type="ilasmType"/>
                <xs:element name="apply" type="applyType"/>
                <xs:element name="jarlib-resolve" type="jarlib-resolveType"/>
                <xs:element name="jlink" type="jlinkType"/>
                <xs:element name="cvstagdiff" type="cvstagdiffType"/>
                <xs:element name="javacc" type="javaccType"/>
                <xs:element name="chmod" type="chmodType"/>
                <xs:element name="pvcs" type="pvcsType"/>
                <xs:element name="jarlib-manifest" type="jarlib-manifestType"/>
                <xs:element name="jar" type="jarType"/>
                <xs:element name="ccmklbtype" type="ccmklbtypeType"/>
                <xs:element name="sound" type="soundType"/>
                <xs:element name="scriptdef" type="scriptdefType"/>
                <xs:element name="defaultexcludes" type="defaultexcludesType"/>
                <xs:element name="blgenclient" type="blgenclientType"/>
                <xs:element name="uptodate" type="uptodateType"/>
                <xs:element name="jjdoc" type="jjdocType"/>
                <xs:element name="genkey" type="genkeyType"/>
                <xs:element name="javah" type="javahType"/>
                <xs:element name="fail" type="failType"/>
                <xs:element name="unzip" type="unzipType"/>
                <xs:element name="javac" type="javacType"/>
                <xs:element name="p4add" type="p4addType"/>
                <xs:element name="jpcoverage" type="jpcoverageType"/>
                <xs:element name="depend" type="dependType"/>
                <xs:element name="deltree" type="deltreeType"/>
                <xs:element name="ddcreator" type="ddcreatorType"/>
                <xs:element name="retry" type="retryType"/>
            </xs:choice>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="dateType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="when">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="before"/>
                    <xs:enumeration value="after"/>
                    <xs:enumeration value="equal"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="millis" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="checkdirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="granularity" type="xs:string"/>
        <xs:attribute name="datetime" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ddcreatorType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="descriptors" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="defaultexcludesType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="remove" type="xs:string"/>
        <xs:attribute name="echo">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="default">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="add" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="defineType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="deleteType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeemptydirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="deletecharactersType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="chars" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="deltreeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dependType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="mapper" type="mapperType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="targetdir" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="granularity" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dependsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="libfileset" type="libfilesetType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dependsetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="targetfileset" type="targetfilesetType"/>
            <xs:element name="srcfileset" type="srcfilesetType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="srcfilelist" type="srcfilelistType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="targetfilelist" type="targetfilelistType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="depthType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="max" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="min" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="descriptionType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="refid" type="xs:IDREF"/>
                <xs:attribute name="description" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="differentType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="mapper" type="mapperType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="targetdir" type="xs:string"/>
        <xs:attribute name="ignoreFileTimes" type="xs:string"/>
        <xs:attribute name="ignoreContents" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="ignorefiletimes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="granularity" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dirnameType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dirsetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="disableType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dnameType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="param" type="paramType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="docletType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="path" type="pathType"/>
            <xs:element name="param" type="paramType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="doctitleType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="dtdType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="base" type="xs:string"/>
        <xs:attribute name="publicid" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="earType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="manifest" type="manifestType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="metainf" type="metainfType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="archives" type="archivesType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="zipgroupfileset" type="zipgroupfilesetType"/>
            <xs:element name="zipfileset" type="zipfilesetType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="keepcompression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="whenempty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="create"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="duplicate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="preserve"/>
                    <xs:enumeration value="fail"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="manifest" type="xs:string"/>
        <xs:attribute name="jarfile" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="index">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="update">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="earfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="appxml" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="manifestencoding" type="xs:string"/>
        <xs:attribute name="filesonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="filesetmanifest">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="merge"/>
                    <xs:enumeration value="mergewithoutmain"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="zipfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="echoType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="append">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="file" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
                <xs:attribute name="message" type="xs:string"/>
                <xs:attribute name="level">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="error"/>
                            <xs:enumeration value="warning"/>
                            <xs:enumeration value="info"/>
                            <xs:enumeration value="verbose"/>
                            <xs:enumeration value="debug"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="echopropertiesType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="propertyset" type="propertysetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="format">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="xml"/>
                    <xs:enumeration value="text"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="srcfile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="elementType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="optional">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="implicit" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="type" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="enableType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="entityType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="base" type="xs:string"/>
        <xs:attribute name="publicid" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="entryType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="operation" type="xs:string"/>
        <xs:attribute name="default" type="xs:string"/>
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="int"/>
                    <xs:enumeration value="date"/>
                    <xs:enumeration value="string"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="unit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="millisecond"/>
                    <xs:enumeration value="second"/>
                    <xs:enumeration value="minute"/>
                    <xs:enumeration value="hour"/>
                    <xs:enumeration value="day"/>
                    <xs:enumeration value="week"/>
                    <xs:enumeration value="month"/>
                    <xs:enumeration value="year"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="pattern" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="envType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="redirectorType">
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="logError" type="xs:string"/>
        <xs:attribute name="append" type="xs:boolean"/>
        <xs:attribute name="createemptyfiles" type="xs:boolean"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="inputencoding" type="xs:string"/>
        <xs:attribute name="outputencoding" type="xs:string"/>
        <xs:attribute name="errorencoding" type="xs:string"/>
        <xs:attribute name="alwayslog" type="xs:boolean"/>
        <xs:attribute name="loginputstring" type="xs:boolean"/>
    </xs:complexType>
    <xs:complexType name="equalsType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="trim">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="arg2" type="xs:string"/>
        <xs:attribute name="arg1" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="escapeunicodeType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="excludeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="excludepackageType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="excludesfileType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="execType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="redirector" type="redirectorType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="osfamily" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="execonType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="targetfile" type="targetfileType"/>
            <xs:element name="srcfile" type="srcfileType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="skipemptyfilesets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failifexecutionfails">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxparallel" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="os" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="addsourcefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="forwardslash">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="resolveexecutable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="vmlauncher">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="relative">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="parallel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="existingType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="expandpropertiesType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="extdirsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="extensionType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="implementationversion" type="xs:string"/>
        <xs:attribute name="specificationversion" type="xs:string"/>
        <xs:attribute name="extensionname" type="xs:string"/>
        <xs:attribute name="implementationvendorid" type="xs:string"/>
        <xs:attribute name="specificationvendor" type="xs:string"/>
        <xs:attribute name="implementationurl" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="implementationvendor" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="extensionSetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="libfileset" type="libfilesetType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="extensionsetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="libfileset" type="libfilesetType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="factoryType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="attribute" type="attributeType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="failType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="condition" type="conditionType"/>
        </xs:choice>
        <xs:attribute name="message" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="failsoundType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="loops" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="duration" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filelistType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="files" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filenameType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="negate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="filepathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="resourcesType">
        <xs:attribute name="refid" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filesmatchType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="file2" type="xs:string"/>
        <xs:attribute name="file1" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filetokenizerType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="filterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="token" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filterchainType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="headfilter" type="headfilterType"/>
            <xs:element name="classconstants" type="classconstantsType"/>
            <xs:element name="linecontains" type="linecontainsType"/>
            <xs:element name="filterreader" type="filterreaderType"/>
            <xs:element name="replaceregex" type="replaceregexType"/>
            <xs:element name="replacetokens" type="replacetokensType"/>
            <xs:element name="escapeunicode" type="escapeunicodeType"/>
            <xs:element name="ignoreblank" type="ignoreblankType"/>
            <xs:element name="tailfilter" type="tailfilterType"/>
            <xs:element name="tabstospaces" type="tabstospacesType"/>
            <xs:element name="prefixlines" type="prefixlinesType"/>
            <xs:element name="expandproperties" type="expandpropertiesType"/>
            <xs:element name="striplinebreaks" type="striplinebreaksType"/>
            <xs:element name="trim" type="trimType"/>
            <xs:element name="striplinecomments" type="striplinecommentsType"/>
            <xs:element name="replacestring" type="replacestringType"/>
            <xs:element name="tokenfilter" type="tokenfilterType"/>
            <xs:element name="stripjavacomments" type="stripjavacommentsType"/>
            <xs:element name="containsregex" type="containsregexType"/>
            <xs:element name="deletecharacters" type="deletecharactersType"/>
            <xs:element name="linecontainsregexp" type="linecontainsregexpType"/>
            <xs:element name="concatfilter" type="concatfilterType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filtermapperType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="replaceregex" type="replaceregexType"/>
            <xs:element name="scriptfilter" type="scriptfilterType"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="scriptmapperType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="setbeans">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="src" type="xs:string"/>
                <xs:attribute name="language" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="filterreaderType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="param" type="paramType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filtersType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="include" type="includeType"/>
            <xs:element name="exclude" type="excludeType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="defaultexclude">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="filtersetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterset" type="filtersetType"/>
            <xs:element name="filter" type="filterType"/>
            <xs:element name="filtersfile" type="filtersfileType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="begintoken" type="xs:string"/>
        <xs:attribute name="endtoken" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="filtersfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="filtersfileType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="file" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="fixcrlfType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="tab">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="asis"/>
                    <xs:enumeration value="remove"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="cr">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="asis"/>
                    <xs:enumeration value="remove"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="eol">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="asis"/>
                    <xs:enumeration value="cr"/>
                    <xs:enumeration value="lf"/>
                    <xs:enumeration value="crlf"/>
                    <xs:enumeration value="mac"/>
                    <xs:enumeration value="unix"/>
                    <xs:enumeration value="dos"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="javafiles">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="eof">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="asis"/>
                    <xs:enumeration value="remove"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tablength" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fixlast">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="footerType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="formatType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="locale" type="xs:string"/>
        <xs:attribute name="timezone" type="xs:string"/>
        <xs:attribute name="unit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="millisecond"/>
                    <xs:enumeration value="second"/>
                    <xs:enumeration value="minute"/>
                    <xs:enumeration value="hour"/>
                    <xs:enumeration value="day"/>
                    <xs:enumeration value="week"/>
                    <xs:enumeration value="month"/>
                    <xs:enumeration value="year"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="pattern" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="offset" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="fromType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="address" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="genericType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="jvmarg" type="jvmargType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="server" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="username" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="genkeyType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="dname" type="dnameType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="storepass" type="xs:string"/>
        <xs:attribute name="sigalg" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keypass" type="xs:string"/>
        <xs:attribute name="dname" type="xs:string"/>
        <xs:attribute name="keysize" type="xs:string"/>
        <xs:attribute name="alias" type="xs:string"/>
        <xs:attribute name="keyalg" type="xs:string"/>
        <xs:attribute name="validity" type="xs:string"/>
        <xs:attribute name="keystore" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="storetype" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="getType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="ignoreerrors">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="username" type="xs:string"/>
        <xs:attribute name="usetimestamp">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="grantType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
        <xs:attribute name="actions" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="groupType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="package" type="packageType"/>
            <xs:element name="title" type="titleType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="packages" type="xs:string"/>
        <xs:attribute name="title" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="gunzipType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="gzipType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="zipfile" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="headerType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="headfilterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="lines" type="xs:string"/>
        <xs:attribute name="skip" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="httpType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="errorsbeginat" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="icontractType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classdir" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="repositorydir" type="xs:string"/>
        <xs:attribute name="instrumentdir" type="xs:string"/>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="builddir" type="xs:string"/>
        <xs:attribute name="updateicontrol">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="pre">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="controlfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="invariant">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="post">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="failthrowable" type="xs:string"/>
        <xs:attribute name="verbosity" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="repbuilddir" type="xs:string"/>
        <xs:attribute name="targets" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ignoreblankType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="ilasmType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="src" type="srcType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="owner" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="extraoptions" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="targettype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="exe"/>
                    <xs:enumeration value="library"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="outputfile" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="resourcefile" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="listing">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keyfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ildasmType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="assembler">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="encoding">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="ascii"/>
                    <xs:enumeration value="utf8"/>
                    <xs:enumeration value="unicode"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="progressbar">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="linenumbers">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="rawexceptionhandling">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="showsource">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="metadata">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="srcfile" type="xs:string"/>
        <xs:attribute name="bytes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="resourcedir" type="xs:string"/>
        <xs:attribute name="quoteallnames">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="header">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="visibility" type="xs:string"/>
        <xs:attribute name="sourcefile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="item" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="importType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="optional">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="importtypelibType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="unsafe">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="usesysarray">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="namespace" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="extraoptions" type="xs:string"/>
        <xs:attribute name="srcfile" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="includeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="includesfileType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="inputType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="addproperty" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
                <xs:attribute name="defaultvalue" type="xs:string"/>
                <xs:attribute name="validargs" type="xs:string"/>
                <xs:attribute name="message" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="isfalseType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="value">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="isreferenceType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="type" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="issetType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="istrueType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="value">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="jarType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="manifest" type="manifestType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="metainf" type="metainfType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="zipgroupfileset" type="zipgroupfilesetType"/>
            <xs:element name="zipfileset" type="zipfilesetType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="whenempty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="create"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keepcompression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="duplicate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="preserve"/>
                    <xs:enumeration value="fail"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="manifest" type="xs:string"/>
        <xs:attribute name="jarfile" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="index">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="update">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="manifestencoding" type="xs:string"/>
        <xs:attribute name="filesonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="filesetmanifest">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="merge"/>
                    <xs:enumeration value="mergewithoutmain"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="zipfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jarlib-availableType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="extensionset" type="extensionsetType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jarlib-displayType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jarlib-manifestType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="options" type="optionsType"/>
            <xs:element name="attribute" type="attributeType"/>
            <xs:element name="depends" type="dependsType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jarlib-resolveType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="ant" type="antType"/>
            <xs:element name="location" type="locationType"/>
            <xs:element name="url" type="urlType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="checkextension">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="javaType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="sysproperty" type="syspropertyType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
            <xs:element name="syspropertyset" type="syspropertysetType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="permissions" type="permissionsType"/>
            <xs:element name="jvmarg" type="jvmargType"/>
            <xs:element name="arg" type="argType"/>
            <xs:element name="assertions" type="assertionsType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="jvmargs" type="xs:string"/>
        <xs:attribute name="args" type="xs:string"/>
        <xs:attribute name="fork">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="jar" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="jvm" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="jvmversion" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="javacType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="src" type="srcType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="sourcepath" type="sourcepathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="compilerarg" type="compilerargType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspathref" type="xs:IDREF"/>
        <xs:attribute name="compiler" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="debuglevel" type="xs:string"/>
        <xs:attribute name="memoryinitialsize" type="xs:string"/>
        <xs:attribute name="deprecation">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeantruntime">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="sourcepathref" type="xs:IDREF"/>
        <xs:attribute name="depend">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="includejavaruntime">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tempdir" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspath" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="nowarn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="proceed">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="fork">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="memorymaximumsize" type="xs:string"/>
        <xs:attribute name="optimize">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="sourcepath" type="xs:string"/>
        <xs:attribute name="listfiles">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="extdirs" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="javaccType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="debugparser">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="javacchome" type="xs:string"/>
        <xs:attribute name="forcelacheck">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="optimizetokenmanager">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="commontokenaction">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="buildtokenmanager">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="sanitycheck">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="buildparser">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="otherambiguitycheck" type="xs:string"/>
        <xs:attribute name="lookahead" type="xs:string"/>
        <xs:attribute name="debuglookahead">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="choiceambiguitycheck" type="xs:string"/>
        <xs:attribute name="unicodeinput">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="usercharstream">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="debugtokenmanager">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keeplinecolumn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="outputdirectory" type="xs:string"/>
        <xs:attribute name="cachetokens">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="javaunicodeescape">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="static">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="ignorecase">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="usertokenmanager">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errorreporting">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="javadocType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="taglet" type="tagletType"/>
            <xs:element name="doclet" type="docletType"/>
            <xs:element name="package" type="packageType"/>
            <xs:element name="arg" type="argType"/>
            <xs:element name="link" type="linkType"/>
            <xs:element name="doctitle" type="doctitleType"/>
            <xs:element name="bottom" type="bottomType"/>
            <xs:element name="group" type="groupType"/>
            <xs:element name="packageset" type="packagesetType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="sourcepath" type="sourcepathType"/>
            <xs:element name="footer" type="footerType"/>
            <xs:element name="source" type="sourceType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
            <xs:element name="header" type="headerType"/>
            <xs:element name="excludepackage" type="excludepackageType"/>
            <xs:element name="tag" type="tagType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="bottom" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspathref" type="xs:IDREF"/>
        <xs:attribute name="header" type="xs:string"/>
        <xs:attribute name="link" type="xs:string"/>
        <xs:attribute name="noindex">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="access">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="protected"/>
                    <xs:enumeration value="public"/>
                    <xs:enumeration value="package"/>
                    <xs:enumeration value="private"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="doclet" type="xs:string"/>
        <xs:attribute name="noqualifier" type="xs:string"/>
        <xs:attribute name="public">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="author">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="footer" type="xs:string"/>
        <xs:attribute name="docletpath" type="xs:string"/>
        <xs:attribute name="package">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="useexternalfile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="sourcepathref" type="xs:IDREF"/>
        <xs:attribute name="protected">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="breakiterator">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="nonavbar">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="group" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="linkoffline" type="xs:string"/>
        <xs:attribute name="additionalparam" type="xs:string"/>
        <xs:attribute name="linksource">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="locale" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspath" type="xs:string"/>
        <xs:attribute name="private">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="charset" type="xs:string"/>
        <xs:attribute name="nodeprecatedlist">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="stylesheetfile" type="xs:string"/>
        <xs:attribute name="docencoding" type="xs:string"/>
        <xs:attribute name="excludepackagenames" type="xs:string"/>
        <xs:attribute name="docletpathref" type="xs:IDREF"/>
        <xs:attribute name="packagenames" type="xs:string"/>
        <xs:attribute name="windowtitle" type="xs:string"/>
        <xs:attribute name="notree">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="splitindex">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="packagelist" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="doctitle" type="xs:string"/>
        <xs:attribute name="serialwarn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="old">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="use">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="sourcepath" type="xs:string"/>
        <xs:attribute name="helpfile" type="xs:string"/>
        <xs:attribute name="version">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="sourcefiles" type="xs:string"/>
        <xs:attribute name="extdirs" type="xs:string"/>
        <xs:attribute name="nohelp">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="nodeprecated">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="overview" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="javadoc2Type">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="taglet" type="tagletType"/>
            <xs:element name="doclet" type="docletType"/>
            <xs:element name="package" type="packageType"/>
            <xs:element name="arg" type="argType"/>
            <xs:element name="link" type="linkType"/>
            <xs:element name="doctitle" type="doctitleType"/>
            <xs:element name="bottom" type="bottomType"/>
            <xs:element name="group" type="groupType"/>
            <xs:element name="packageset" type="packagesetType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="sourcepath" type="sourcepathType"/>
            <xs:element name="footer" type="footerType"/>
            <xs:element name="source" type="sourceType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
            <xs:element name="header" type="headerType"/>
            <xs:element name="excludepackage" type="excludepackageType"/>
            <xs:element name="tag" type="tagType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="bottom" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspathref" type="xs:IDREF"/>
        <xs:attribute name="header" type="xs:string"/>
        <xs:attribute name="link" type="xs:string"/>
        <xs:attribute name="noindex">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="access">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="protected"/>
                    <xs:enumeration value="public"/>
                    <xs:enumeration value="package"/>
                    <xs:enumeration value="private"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="doclet" type="xs:string"/>
        <xs:attribute name="noqualifier" type="xs:string"/>
        <xs:attribute name="public">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="author">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="footer" type="xs:string"/>
        <xs:attribute name="docletpath" type="xs:string"/>
        <xs:attribute name="package">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="useexternalfile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="sourcepathref" type="xs:IDREF"/>
        <xs:attribute name="protected">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="breakiterator">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="nonavbar">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="group" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="linkoffline" type="xs:string"/>
        <xs:attribute name="additionalparam" type="xs:string"/>
        <xs:attribute name="linksource">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="locale" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspath" type="xs:string"/>
        <xs:attribute name="private">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="charset" type="xs:string"/>
        <xs:attribute name="nodeprecatedlist">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="stylesheetfile" type="xs:string"/>
        <xs:attribute name="docencoding" type="xs:string"/>
        <xs:attribute name="excludepackagenames" type="xs:string"/>
        <xs:attribute name="docletpathref" type="xs:IDREF"/>
        <xs:attribute name="packagenames" type="xs:string"/>
        <xs:attribute name="windowtitle" type="xs:string"/>
        <xs:attribute name="notree">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="splitindex">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="packagelist" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="doctitle" type="xs:string"/>
        <xs:attribute name="serialwarn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="old">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="use">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="sourcepath" type="xs:string"/>
        <xs:attribute name="helpfile" type="xs:string"/>
        <xs:attribute name="version">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="sourcefiles" type="xs:string"/>
        <xs:attribute name="extdirs" type="xs:string"/>
        <xs:attribute name="nohelp">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="nodeprecated">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="overview" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="javahType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="class" type="classType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="stubs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="force">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="old">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputfile" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="bootclasspath" type="xs:string"/>
        <xs:attribute name="bootclasspathref" type="xs:IDREF"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jjdocType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="outputfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="javacchome" type="xs:string"/>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="text">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="onetable">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="jjtreeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="nodedefaultvoid">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="buildnodefiles">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputdirectory" type="xs:string"/>
        <xs:attribute name="outputfile" type="xs:string"/>
        <xs:attribute name="static">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="javacchome" type="xs:string"/>
        <xs:attribute name="nodeprefix" type="xs:string"/>
        <xs:attribute name="nodefactory">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="multi">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="visitor">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="nodeusesparser">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="visitorexception" type="xs:string"/>
        <xs:attribute name="nodescopehook">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="nodepackage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jlinkType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="mergefiles" type="mergefilesType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="addfiles" type="addfilesType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="outfile" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="addfiles" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="mergefiles" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jonasType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="jonasroot" type="xs:string"/>
        <xs:attribute name="keepgeneric">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="additionalargs" type="xs:string"/>
        <xs:attribute name="javac" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="orb" type="xs:string"/>
        <xs:attribute name="jarsuffix" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="genericjarsuffix" type="xs:string"/>
        <xs:attribute name="nogenic">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="rmicopts" type="xs:string"/>
        <xs:attribute name="javacopts" type="xs:string"/>
        <xs:attribute name="novalidation">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keepgenerated">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="nocompil">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="secpropag">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="jpcoverageType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="arg" type="argType"/>
            <xs:element name="socket" type="socketType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="jvmarg" type="jvmargType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="triggers" type="triggersType"/>
            <xs:element name="filters" type="filtersType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="applet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="recordfromstart">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="coverage"/>
                    <xs:enumeration value="none"/>
                    <xs:enumeration value="all"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="vm">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="java2"/>
                    <xs:enumeration value="jdk118"/>
                    <xs:enumeration value="jdk117"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="workingdir" type="xs:string"/>
        <xs:attribute name="inputfile" type="xs:string"/>
        <xs:attribute name="snapshotdir" type="xs:string"/>
        <xs:attribute name="seedname" type="xs:string"/>
        <xs:attribute name="javaexe" type="xs:string"/>
        <xs:attribute name="home" type="xs:string"/>
        <xs:attribute name="exitprompt" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="warnlevel" type="xs:string"/>
        <xs:attribute name="finalsnapshot" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="tracknatives">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="jpcovmergeType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="home" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jpcovreportType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="coveragepath" type="coveragepathType"/>
            <xs:element name="sourcepath" type="sourcepathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="snapshot" type="xs:string"/>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="filters" type="xs:string"/>
        <xs:attribute name="percent" type="xs:string"/>
        <xs:attribute name="home" type="xs:string"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="executive"/>
                    <xs:enumeration value="summary"/>
                    <xs:enumeration value="detailed"/>
                    <xs:enumeration value="verydetailed"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="format">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="html"/>
                    <xs:enumeration value="text"/>
                    <xs:enumeration value="xml"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includesource">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jsharpcType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="resource" type="resourceType"/>
            <xs:element name="define" type="defineType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="src" type="srcType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="references" type="xs:string"/>
        <xs:attribute name="useresponsefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="mainclass" type="xs:string"/>
        <xs:attribute name="extraoptions" type="xs:string"/>
        <xs:attribute name="additionalmodules" type="xs:string"/>
        <xs:attribute name="win32icon" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="utf8output">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includedefaultreferences">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="optimize">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="targettype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="exe"/>
                    <xs:enumeration value="library"/>
                    <xs:enumeration value="module"/>
                    <xs:enumeration value="winexe"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="win32res" type="xs:string"/>
        <xs:attribute name="baseaddress" type="xs:string"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="securescoping">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="purejava">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="warnlevel" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="referencefiles" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jspcType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="compilerclasspath" type="compilerclasspathType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="webapp" type="webappType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="mapped">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="ieplugin" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="package" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="compilerclasspath" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="uribase" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose" type="xs:string"/>
        <xs:attribute name="compiler" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="webxml" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="uriroot" type="xs:string"/>
        <xs:attribute name="webinc" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="junitType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="formatter" type="formatterType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="batchtest" type="batchtestType"/>
            <xs:element name="sysproperty" type="syspropertyType"/>
        </xs:choice>
        <xs:attribute name="fork" type="xs:string"/>
        <xs:attribute name="printsummary" type="xs:string"/>
        <xs:attribute name="haltonfailure" type="xs:string"/>
        <xs:attribute name="showoutput" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="junitreportType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="report" type="reportType"/>
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="tofile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cobertura-instrumentType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="ignore" type="ignoreType"/>
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="datafile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cobertura-reportType">
        <xs:choice minOccurs="0" maxOccurs="unbounded"/>
        <xs:attribute name="format" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="datafile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="formatterType">
        <xs:attribute name="type" type="xs:string"/>
        <xs:attribute name="usefile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="batchtestType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="formatter" type="formatterType"/>
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="fork" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ignoreType">
        <xs:attribute name="regex" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="jvmargType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="line" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="libType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="libfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="urlbase" type="xs:string"/>
        <xs:attribute name="includeimpl">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeurl">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="linecontainsType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="contains" type="linecontains_containsType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="linecontains_containsType">
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="linecontainsregexpType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="regexp" type="regexpType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="linetokenizerType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="includedelims">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="linkType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="href" type="xs:string"/>
        <xs:attribute name="offline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="packagelistloc" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="loadfileType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterchain" type="filterchainType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="srcFile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="loadresourceType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="propertyresource" type="propertyresourceType"/>
            <xs:element name="filterchain" type="filterchainType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="quiet" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="loadpropertiesType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterchain" type="filterchainType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="srcFile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="locationType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macrodefType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="sequential" type="sequentialType"/>
            <xs:element name="element" type="elementType"/>
            <xs:element name="attribute" type="attributeType"/>
            <xs:element name="text" type="textType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="uri" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mailType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="bcc" type="bccType"/>
            <xs:element name="message" type="messageType"/>
            <xs:element name="replyto" type="replytoType"/>
            <xs:element name="cc" type="ccType"/>
            <xs:element name="to" type="toType"/>
            <xs:element name="from" type="fromType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cclist" type="xs:string"/>
        <xs:attribute name="messagefile" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="encoding">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="auto"/>
                    <xs:enumeration value="mime"/>
                    <xs:enumeration value="uu"/>
                    <xs:enumeration value="plain"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="charset" type="xs:string"/>
        <xs:attribute name="files" type="xs:string"/>
        <xs:attribute name="subject" type="xs:string"/>
        <xs:attribute name="message" type="xs:string"/>
        <xs:attribute name="ssl">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tolist" type="xs:string"/>
        <xs:attribute name="mailport" type="xs:string"/>
        <xs:attribute name="messagemimetype" type="xs:string"/>
        <xs:attribute name="bcclist" type="xs:string"/>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="replyto" type="xs:string"/>
        <xs:attribute name="mailhost" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="includefilenames">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="majorityType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="allowtie">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="manifestType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="attribute" type="attributeType"/>
            <xs:element name="section" type="sectionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="mapType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="to" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mapperType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="chainedmapper" type="chainedmapperType"/>
            <xs:element name="filtermapper" type="filtermapperType"/>
            <xs:element name="scriptmapper" type="scriptmapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="identity"/>
                    <xs:enumeration value="flatten"/>
                    <xs:enumeration value="glob"/>
                    <xs:enumeration value="merge"/>
                    <xs:enumeration value="regexp"/>
                    <xs:enumeration value="package"/>
                    <xs:enumeration value="unpackage"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="to" type="xs:string"/>
        <!-- TODO: define separate globmapper type because it has extra attributes -->
        <!--<xs:attribute name="casesensitive" type="xs:string"/>-->
    </xs:complexType>
    <xs:complexType name="globmapperType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="to" type="xs:string"/>
        <xs:attribute name="casesensitive" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="markerType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="mauditType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="jvmarg" type="jvmargType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="rulespath" type="rulespathType"/>
            <xs:element name="searchpath" type="searchpathType"/>
            <xs:element name="sourcepath" type="sourcepathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="exit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="offsets">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="unused">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="fix">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="metamatahome" type="xs:string"/>
        <xs:attribute name="list">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="home" type="xs:string"/>
        <xs:attribute name="fullsemanticize">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mergefilesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="messageType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="mimetype" type="xs:string"/>
                <xs:attribute name="src" type="xs:string"/>
                <xs:attribute name="charset" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="metainfType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="methodType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="event" type="xs:string"/>
        <xs:attribute name="action" type="xs:string"/>
        <xs:attribute name="param" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mimemailType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="bcc" type="bccType"/>
            <xs:element name="message" type="messageType"/>
            <xs:element name="replyto" type="replytoType"/>
            <xs:element name="cc" type="ccType"/>
            <xs:element name="to" type="toType"/>
            <xs:element name="from" type="fromType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="cclist" type="xs:string"/>
        <xs:attribute name="messagefile" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="encoding">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="auto"/>
                    <xs:enumeration value="mime"/>
                    <xs:enumeration value="uu"/>
                    <xs:enumeration value="plain"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="charset" type="xs:string"/>
        <xs:attribute name="files" type="xs:string"/>
        <xs:attribute name="subject" type="xs:string"/>
        <xs:attribute name="message" type="xs:string"/>
        <xs:attribute name="ssl">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tolist" type="xs:string"/>
        <xs:attribute name="mailport" type="xs:string"/>
        <xs:attribute name="messagemimetype" type="xs:string"/>
        <xs:attribute name="bcclist" type="xs:string"/>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="replyto" type="xs:string"/>
        <xs:attribute name="mailhost" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="includefilenames">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mkdirType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="modifiedType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="param" type="paramType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="comparator">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="equal"/>
                    <xs:enumeration value="rule"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="seldirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="cache">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="propertyfile"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="algorithm">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="hashvalue"/>
                    <xs:enumeration value="digest"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="update">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="moveType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="filterchain" type="filterchainType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="filterset" type="filtersetType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flatten">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeemptydirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="enablemultiplemappings">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="outputencoding" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="preservelastmodified">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filtering">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="native2asciiType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="mapper" type="mapperType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="ext" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="reverse">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="noneType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="notType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="filesmatch" type="filesmatchType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="isset" type="issetType"/>
            <xs:element name="available" type="availableType"/>
            <xs:element name="uptodate" type="uptodateType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="optionsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="libfileset" type="libfilesetType"/>
            <xs:element name="extension" type="extensionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="orType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="isset" type="issetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="osType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="version" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="family" type="xs:string"/>
        <xs:attribute name="arch" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="outputpropertyType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4addType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="changelist" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="commandlength" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4changeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4counterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4deleteType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="change" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4editType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="change" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4fstatType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="changelist" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="showfilter" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4haveType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4integrateType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="branch" type="xs:string"/>
        <xs:attribute name="leavetargetrevision">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="forceintegrate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="enablebaselessmerges">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="fromfile" type="xs:string"/>
        <xs:attribute name="reversebranchmappings">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="change" type="xs:string"/>
        <xs:attribute name="simulationmode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="propagatesourcefiletype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="nocopynewtargetfiles">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="tofile" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="restoredeletedrevisions">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4labelType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="desc" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="lock" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4labelsyncType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="simulationmode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="delete">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="add">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="p4reopenType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="tochange" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4resolveType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="forcetextmode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="markersforall">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="simulationmode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="errormessage" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="resolvemode" type="xs:string"/>
        <xs:attribute name="redoall">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="p4revertType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="revertonlyunchanged">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="change" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4submitType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="needsresolveproperty" type="xs:string"/>
        <xs:attribute name="changeproperty" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="change" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="p4syncType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="force" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="client" type="xs:string"/>
        <xs:attribute name="inerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="cmdopts" type="xs:string"/>
        <xs:attribute name="globalopts" type="xs:string"/>
        <xs:attribute name="view" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="label" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="errormessage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="packageType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="packagesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="parallelType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="pollinterval" type="xs:string"/>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
                <xs:attribute name="threadsperprocessor" type="xs:string"/>
                <xs:attribute name="timeout" type="xs:string"/>
                <xs:attribute name="threadcount" type="xs:string"/>
                <xs:attribute name="failonany">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="paramType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="type" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="expression" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="patchType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="strip" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="quiet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="originalfile" type="xs:string"/>
        <xs:attribute name="patchfile" type="xs:string"/>
        <xs:attribute name="reverse">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="backups">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="ignorewhitespace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="pathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="pathconvertType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="path" type="pathType"/>
            <xs:element name="map" type="mapType"/>
            <xs:element name="mapper" type="mapperType"/>
            <xs:element name="resources" type="resourcesType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="first" type="firstType"/>
            <xs:element name="globmapper" type="globmapperType"/>
            <xs:element name="chainedmapper" type="chainedmapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="pathsep" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="dirsep" type="xs:string"/>
        <xs:attribute name="setonempty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="targetos" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="pathelementType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="patternsetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="include" type="includeType"/>
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="includesfile" type="includesfileType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="permissionsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="grant" type="grantType"/>
            <xs:element name="revoke" type="revokeType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="prefixlinesType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="prefix" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="presentType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="mapper" type="mapperType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="targetdir" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="present">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="srconly"/>
                    <xs:enumeration value="both"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="presetdefType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="name" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
                <xs:attribute name="uri" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:element name="project">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="target" type="targetType"/>
                <xs:element name="propertyfile" type="propertyfileType"/>
                <xs:element name="importtypelib" type="importtypelibType"/>
                <xs:element name="sql" type="sqlType"/>
                <xs:element name="cvspass" type="cvspassType"/>
                <xs:element name="p4reopen" type="p4reopenType"/>
                <xs:element name="csc" type="cscType"/>
                <xs:element name="dirname" type="dirnameType"/>
                <xs:element name="p4label" type="p4labelType"/>
                <xs:element name="p4revert" type="p4revertType"/>
                <xs:element name="replaceregexp" type="replaceregexpType"/>
                <xs:element name="get" type="getType"/>
                <xs:element name="jjtree" type="jjtreeType"/>
                <xs:element name="sleep" type="sleepType"/>
                <xs:element name="jarlib-display" type="jarlib-displayType"/>
                <xs:element name="dependset" type="dependsetType"/>
                <xs:element name="zip" type="zipType"/>
                <xs:element name="patch" type="patchType"/>
                <xs:element name="jspc" type="jspcType"/>
                <xs:element name="style" type="styleType"/>
                <xs:element name="test" type="testType"/>
                <xs:element name="tstamp" type="tstampType"/>
                <xs:element name="unwar" type="unwarType"/>
                <xs:element name="icontract" type="icontractType"/>
                <xs:element name="cvschangelog" type="cvschangelogType"/>
                <xs:element name="p4submit" type="p4submitType"/>
                <xs:element name="p4change" type="p4changeType"/>
                <xs:element name="bzip2" type="bzip2Type"/>
                <xs:element name="sync" type="syncType"/>
                <xs:element name="p4delete" type="p4deleteType"/>
                <xs:element name="javadoc" type="javadocType"/>
                <xs:element name="p4integrate" type="p4integrateType"/>
                <xs:element name="translate" type="translateType"/>
                <xs:element name="signjar" type="signjarType"/>
                <xs:element name="chown" type="chownType"/>
                <xs:element name="vajload" type="vajloadType"/>
                <xs:element name="jarlib-available" type="jarlib-availableType"/>
                <xs:element name="buildnumber" type="buildnumberType"/>
                <xs:element name="jpcovmerge" type="jpcovmergeType"/>
                <xs:element name="war" type="warType"/>
                <xs:element name="rename" type="renameType"/>
                <xs:element name="sequential" type="sequentialType"/>
                <xs:element name="serverdeploy" type="serverdeployType"/>
                <xs:element name="property" type="propertyType"/>
                <xs:element name="subant" type="subantType"/>
                <xs:element name="move" type="moveType"/>
                <xs:element name="ildasm" type="ildasmType"/>
                <xs:element name="copydir" type="copydirType"/>
                <xs:element name="fixcrlf" type="fixcrlfType"/>
                <xs:element name="pathconvert" type="pathconvertType"/>
                <xs:element name="record" type="recordType"/>
                <xs:element name="p4sync" type="p4syncType"/>
                <xs:element name="exec" type="execType"/>
                <xs:element name="ccmklabel" type="ccmklabelType"/>
                <xs:element name="p4edit" type="p4editType"/>
                <xs:element name="manifest" type="manifestType"/>
                <xs:element name="maudit" type="mauditType"/>
                <xs:element name="antlr" type="antlrType"/>
                <xs:element name="jpcovreport" type="jpcovreportType"/>
                <xs:element name="execon" type="execonType"/>
                <xs:element name="ant" type="antType"/>
                <xs:element name="xmlvalidate" type="xmlvalidateType"/>
                <xs:element name="xslt" type="xsltType"/>
                <xs:element name="p4resolve" type="p4resolveType"/>
                <xs:element name="gzip" type="gzipType"/>
                <xs:element name="native2ascii" type="native2asciiType"/>
                <xs:element name="ccrmtype" type="ccrmtypeType"/>
                <xs:element name="ear" type="earType"/>
                <xs:element name="input" type="inputType"/>
                <xs:element name="presetdef" type="presetdefType"/>
                <xs:element name="rmic" type="rmicType"/>
                <xs:element name="checksum" type="checksumType"/>
                <xs:element name="mail" type="mailType"/>
                <xs:element name="loadfile" type="loadfileType"/>
                <xs:element name="mimemail" type="mimemailType"/>
                <xs:element name="gunzip" type="gunzipType"/>
                <xs:element name="concat" type="concatType"/>
                <xs:element name="cab" type="cabType"/>
                <xs:element name="touch" type="touchType"/>
                <xs:element name="parallel" type="parallelType"/>
                <xs:element name="splash" type="splashType"/>
                <xs:element name="antcall" type="antcallType"/>
                <xs:element name="typedef" type="typedefType"/>
                <xs:element name="p4have" type="p4haveType"/>
                <xs:element name="filter" type="filterType"/>
                <xs:element name="xmlproperty" type="xmlpropertyType"/>
                <xs:element name="import" type="importType"/>
                <xs:element name="copy" type="copyType"/>
                <xs:element name="jsharpc" type="jsharpcType"/>
                <xs:element name="symlink" type="symlinkType"/>
                <xs:element name="antstructure" type="antstructureType"/>
                <xs:element name="script" type="scriptType"/>
                <xs:element name="rpm" type="rpmType"/>
                <xs:element name="delete" type="deleteType"/>
                <xs:element name="replace" type="replaceType"/>
                <xs:element name="attrib" type="attribType"/>
                <xs:element name="waitfor" type="waitforType"/>
                <xs:element name="untar" type="untarType"/>
                <xs:element name="loadproperties" type="loadpropertiesType"/>
                <xs:element name="available" type="availableType"/>
                <xs:element name="echoproperties" type="echopropertiesType"/>
                <xs:element name="chgrp" type="chgrpType"/>
                <xs:element name="vajexport" type="vajexportType"/>
                <xs:element name="bunzip2" type="bunzip2Type"/>
                <xs:element name="whichresource" type="whichresourceType"/>
                <xs:element name="copyfile" type="copyfileType"/>
                <xs:element name="p4labelsync" type="p4labelsyncType"/>
                <xs:element name="macrodef" type="macrodefType"/>
                <xs:element name="unjar" type="unjarType"/>
                <xs:element name="vbc" type="vbcType"/>
                <xs:element name="mkdir" type="mkdirType"/>
                <xs:element name="condition" type="conditionType"/>
                <xs:element name="cvs" type="cvsType"/>
                <xs:element name="tempfile" type="tempfileType"/>
                <xs:element name="junit" type="junitType"/>
                <xs:element name="junitreport" type="junitreportType"/>
                <xs:element name="cobertura-instrument" type="cobertura-instrumentType"/>
                <xs:element name="taskdef" type="taskdefType"/>
                <xs:element name="echo" type="echoType"/>
                <xs:element name="java" type="javaType"/>
                <xs:element name="renameext" type="renameextType"/>
                <xs:element name="basename" type="basenameType"/>
                <xs:element name="javadoc2" type="javadoc2Type"/>
                <xs:element name="tar" type="tarType"/>
                <xs:element name="vajimport" type="vajimportType"/>
                <xs:element name="p4fstat" type="p4fstatType"/>
                <xs:element name="setproxy" type="setproxyType"/>
                <xs:element name="p4counter" type="p4counterType"/>
                <xs:element name="ilasm" type="ilasmType"/>
                <xs:element name="apply" type="applyType"/>
                <xs:element name="jarlib-resolve" type="jarlib-resolveType"/>
                <xs:element name="jlink" type="jlinkType"/>
                <xs:element name="cvstagdiff" type="cvstagdiffType"/>
                <xs:element name="javacc" type="javaccType"/>
                <xs:element name="chmod" type="chmodType"/>
                <xs:element name="pvcs" type="pvcsType"/>
                <xs:element name="jarlib-manifest" type="jarlib-manifestType"/>
                <xs:element name="jar" type="jarType"/>
                <xs:element name="ccmklbtype" type="ccmklbtypeType"/>
                <xs:element name="sound" type="soundType"/>
                <xs:element name="scriptdef" type="scriptdefType"/>
                <xs:element name="defaultexcludes" type="defaultexcludesType"/>
                <xs:element name="blgenclient" type="blgenclientType"/>
                <xs:element name="uptodate" type="uptodateType"/>
                <xs:element name="jjdoc" type="jjdocType"/>
                <xs:element name="genkey" type="genkeyType"/>
                <xs:element name="javah" type="javahType"/>
                <xs:element name="ccmreconfigure" type="ccmreconfigureType"/>
                <xs:element name="fail" type="failType"/>
                <xs:element name="unzip" type="unzipType"/>
                <xs:element name="javac" type="javacType"/>
                <xs:element name="p4add" type="p4addType"/>
                <xs:element name="jpcoverage" type="jpcoverageType"/>
                <xs:element name="depend" type="dependType"/>
                <xs:element name="deltree" type="deltreeType"/>
                <xs:element name="ddcreator" type="ddcreatorType"/>
                <xs:element name="patternset" type="patternsetType"/>
                <xs:element name="assertions" type="assertionsType"/>
                <xs:element name="propertyset" type="propertysetType"/>
                <xs:element name="filterset" type="filtersetType"/>
                <xs:element name="libfileset" type="libfilesetType"/>
                <xs:element name="filterreader" type="filterreaderType"/>
                <xs:element name="scriptfilter" type="scriptfilterType"/>
                <xs:element name="concatfilter" type="concatfilterType"/>
                <xs:element name="extension" type="extensionType"/>
                <xs:element name="fileset" type="filesetType"/>
                <xs:element name="dirset" type="dirsetType"/>
                <xs:element name="filelist" type="filelistType"/>
                <xs:element name="filterchain" type="filterchainType"/>
                <xs:element name="path" type="pathType"/>
                <xs:element name="classfileset" type="classfilesetType"/>
                <xs:element name="selector" type="selectorType"/>
                <xs:element name="xmlcatalog" type="xmlcatalogType"/>
                <xs:element name="description" type="descriptionType"/>
                <xs:element name="mapper" type="mapperType"/>
                <xs:element name="zipfileset" type="zipfilesetType"/>
                <xs:element name="substitution" type="substitutionType"/>
                <xs:element name="extensionSet" type="extensionSetType"/>
                <xs:element name="regexp" type="regexpType"/>
                <xs:element name="var" type="varType"/>
                <xs:element name="if" type="ifType"/>
                <xs:element name="retry" type="retryType"/>
            </xs:choice>
            <xs:attribute name="name" type="xs:string"/>
            <xs:attribute name="default" type="xs:string"/>
            <xs:attribute name="basedir" type="xs:string"/>
        </xs:complexType>
    </xs:element>
    <xs:complexType name="propertyType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="userproperty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="environment" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="propertyfileType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="entry" type="entryType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="comment" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="propertycopyType">
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="from" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="propertyrefType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="builtin">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="all"/>
                    <xs:enumeration value="system"/>
                    <xs:enumeration value="commandline"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="regex" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="propertysetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="propertyref" type="propertyrefType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="negate" type="xs:boolean"/>
        <xs:attribute name="dynamic">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="pvcsType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="pvcsproject" type="pvcsprojectType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="updateonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="force" type="xs:string"/>
        <xs:attribute name="config" type="xs:string"/>
        <xs:attribute name="workspace" type="xs:string"/>
        <xs:attribute name="pvcsbin" type="xs:string"/>
        <xs:attribute name="pvcsproject" type="xs:string"/>
        <xs:attribute name="filenameformat" type="xs:string"/>
        <xs:attribute name="userid" type="xs:string"/>
        <xs:attribute name="repository" type="xs:string"/>
        <xs:attribute name="ignorereturncode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="revision" type="xs:string"/>
        <xs:attribute name="linestart" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="promotiongroup" type="xs:string"/>
        <xs:attribute name="label" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="pvcsprojectType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="recordType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="loglevel">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="error"/>
                    <xs:enumeration value="warn"/>
                    <xs:enumeration value="info"/>
                    <xs:enumeration value="verbose"/>
                    <xs:enumeration value="debug"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="emacsmode">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="action">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="start"/>
                    <xs:enumeration value="stop"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="referenceType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="torefid" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="regexpType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="pattern" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="renameType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="replace" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="renameextType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="replace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="toextension" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="fromextension" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replaceType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="replacefilter" type="replacefilterType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="replacetoken" type="replacetokenType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="replacevalue" type="replacevalueType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="token" type="xs:string"/>
        <xs:attribute name="propertyfile" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="summary">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="replacefilterfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replacefilterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="token" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replaceregexType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flags" type="xs:string"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="replace" type="xs:string"/>
        <xs:attribute name="pattern" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replaceregexpType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="substitution" type="substitutionType"/>
            <xs:element name="regexp" type="regexpType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="flags" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="match" type="xs:string"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="replace" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replacestringType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="from" type="xs:string"/>
        <xs:attribute name="to" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replacetokenType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="replacetokensType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="token" type="tokenType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="begintoken" type="xs:string"/>
        <xs:attribute name="endtoken" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="replacevalueType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="replytoType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="address" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="reportType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="styledir" type="xs:string"/>
        <xs:attribute name="format">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="frames"/>
                    <xs:enumeration value="noframes"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="extension" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="resourceType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="public">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="embed">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="revokeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
        <xs:attribute name="actions" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="rmicType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="compilerarg" type="compilerargType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="verify">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="iiop">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="idlopts" type="xs:string"/>
        <xs:attribute name="extdirs" type="xs:string"/>
        <xs:attribute name="sourcebase" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="base" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeantruntime">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includejavaruntime">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="compiler" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="idl">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="iiopopts" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="filtering">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="stubversion" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="rootType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="rootfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="rpmType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="removesource">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="cleanbuilddir">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="removespec">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="specfile" type="xs:string"/>
        <xs:attribute name="topdir" type="xs:string"/>
        <xs:attribute name="rpmbuildcommand" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="rulespathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="scriptType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
                <xs:attribute name="src" type="xs:string"/>
                <xs:attribute name="language" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="scriptdefType" mixed="true">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="element" type="elementType"/>
            <xs:element name="attribute" type="attributeType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="uri" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="language" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="loaderref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="reverseloader">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="scriptfilterType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="byline">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="token" type="xs:string"/>
                <xs:attribute name="src" type="xs:string"/>
                <xs:attribute name="language" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="searchpathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="sectionType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="attribute" type="attributeType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="selectorType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="custom" type="customType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="depth" type="depthType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="unless" type="xs:string"/>
        <xs:attribute name="if" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="timestampselectorType">
        <xs:complexContent>
            <xs:extension base="resourceCollectionContainerType">
                <xs:attribute name="property" type="xs:string"/>
                <xs:attribute name="outputsetid" type="xs:string"/>
                <xs:attribute name="count" type="xs:string"/>
                <xs:attribute name="age" type="xs:string"/>
                <xs:attribute name="pathSep" type="xs:string"/>
                <xs:attribute name="pathref" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="sequentialType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="taskname" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="serverdeployType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="generic" type="genericType"/>
            <xs:element name="jonas" type="jonasType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="action" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="setproxyType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="nonproxyhosts" type="xs:string"/>
        <xs:attribute name="proxyhost" type="xs:string"/>
        <xs:attribute name="socksproxyhost" type="xs:string"/>
        <xs:attribute name="proxyport" type="xs:string"/>
        <xs:attribute name="socksproxyport" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="proxyuser" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="proxypassword" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="signjarType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="storepass" type="xs:string"/>
        <xs:attribute name="lazy">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="jar" type="xs:string"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keypass" type="xs:string"/>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="alias" type="xs:string"/>
        <xs:attribute name="sectionsonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keystore" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="sigfile" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="internalsf">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="storetype" type="xs:string"/>
        <xs:attribute name="signedjar" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="sizeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="when">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="less"/>
                    <xs:enumeration value="more"/>
                    <xs:enumeration value="equal"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="units">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="K"/>
                    <xs:enumeration value="k"/>
                    <xs:enumeration value="kilo"/>
                    <xs:enumeration value="KILO"/>
                    <xs:enumeration value="Ki"/>
                    <xs:enumeration value="KI"/>
                    <xs:enumeration value="ki"/>
                    <xs:enumeration value="kibi"/>
                    <xs:enumeration value="KIBI"/>
                    <xs:enumeration value="M"/>
                    <xs:enumeration value="m"/>
                    <xs:enumeration value="mega"/>
                    <xs:enumeration value="MEGA"/>
                    <xs:enumeration value="Mi"/>
                    <xs:enumeration value="MI"/>
                    <xs:enumeration value="mi"/>
                    <xs:enumeration value="mebi"/>
                    <xs:enumeration value="MEBI"/>
                    <xs:enumeration value="G"/>
                    <xs:enumeration value="g"/>
                    <xs:enumeration value="giga"/>
                    <xs:enumeration value="GIGA"/>
                    <xs:enumeration value="Gi"/>
                    <xs:enumeration value="GI"/>
                    <xs:enumeration value="gi"/>
                    <xs:enumeration value="gibi"/>
                    <xs:enumeration value="GIBI"/>
                    <xs:enumeration value="T"/>
                    <xs:enumeration value="t"/>
                    <xs:enumeration value="tera"/>
                    <xs:enumeration value="TERA"/>
                    <xs:enumeration value="Ti"/>
                    <xs:enumeration value="TI"/>
                    <xs:enumeration value="ti"/>
                    <xs:enumeration value="tebi"/>
                    <xs:enumeration value="TEBI"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="sleepType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="hours" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="milliseconds" type="xs:string"/>
        <xs:attribute name="minutes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="seconds" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="socketType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="server" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="soundType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fail" type="failsoundType"/>
            <xs:element name="success" type="successType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="sourceType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="file" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="sourcepathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="splashType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="user" type="xs:string"/>
        <xs:attribute name="proxy" type="xs:string"/>
        <xs:attribute name="imageurl" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="showduration" type="xs:string"/>
        <xs:attribute name="useproxy">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="sqlType" mixed="true">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="transaction" type="transactionType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="onerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="continue"/>
                    <xs:enumeration value="stop"/>
                    <xs:enumeration value="abort"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="userid" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="autocommit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="rdbms" type="xs:string"/>
        <xs:attribute name="print">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="version" type="xs:string"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="driver" type="xs:string"/>
        <xs:attribute name="showheaders">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="delimitertype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="normal"/>
                    <xs:enumeration value="row"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="escapeprocessing">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="caching">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keepformat">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="delimiter" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="srcType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="srcfileType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="srcfilelistType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="files" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="srcfilesType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="srcfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="stringtokenizerType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="suppressdelims">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includedelims">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="delimsaretokens">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="delims" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="stripjavacommentsType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="striplinebreaksType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="linebreaks" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="striplinecommentsType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="comment" type="commentType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="styleType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="factory" type="factoryType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="param" type="paramType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="outputproperty" type="outputpropertyType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="force">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="processor" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="scanincludeddirectories">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="extension" type="xs:string"/>
        <xs:attribute name="in" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="reloadstylesheet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="out" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="style" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="subantType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="buildpathelement" type="buildpathelementType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="buildpath" type="buildpathType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="property" type="propertyType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="genericantfile" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="inheritall" type="xs:boolean"/>
        <xs:attribute name="inheritrefs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="antfile" type="xs:string"/>
        <xs:attribute name="buildpathref" type="xs:IDREF"/>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="buildpath" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="substitutionType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="expression" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="successType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="loops" type="xs:string"/>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="duration" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="supportType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="symlinkType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="linkfilename" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="link" type="xs:string"/>
        <xs:attribute name="action" type="xs:string"/>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="syncType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="verbose">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includeemptydirs">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="syspropertyType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="syspropertysetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="propertyref" type="propertyrefType"/>
            <xs:element name="propertyset" type="propertysetType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="dynamic">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="tabstospacesType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="tablength" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tagType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="enabled">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="scope" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tagletType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="path" type="pathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="pathref" type="xs:IDREF"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tailfilterType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="lines" type="xs:string"/>
        <xs:attribute name="skip" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tarType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="tarfileset" type="tarfilesetType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="tarfile" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="compression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="none"/>
                    <xs:enumeration value="gzip"/>
                    <xs:enumeration value="bzip2"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="longfile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="warn"/>
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="truncate"/>
                    <xs:enumeration value="gnu"/>
                    <xs:enumeration value="omit"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tarfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="preserveleadingslashes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="username" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="group" type="xs:string"/>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="mode" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="targetType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="name" type="xs:string" use="required"/>
                <xs:attribute name="if" type="xs:string"/>
                <xs:attribute name="unless" type="xs:string"/>
                <xs:attribute name="depends" type="xs:string"/>
                <xs:attribute name="description" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="targetfileType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="targetfilelistType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="files" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="targetfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="taskdefType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="uri" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="adaptto" type="xs:string"/>
        <xs:attribute name="onerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="report"/>
                    <xs:enumeration value="ignore"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="loaderref" type="xs:IDREF"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="adapter" type="xs:string"/>
        <xs:attribute name="format">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="properties"/>
                    <xs:enumeration value="xml"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="reverseloader">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="tempfileType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="suffix" type="xs:string"/>
        <xs:attribute name="deleteonexit" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="testType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="sysproperty" type="syspropertyType"/>
            <xs:element name="bootclasspath" type="bootclasspathType"/>
            <xs:element name="env" type="envType"/>
            <xs:element name="syspropertyset" type="syspropertysetType"/>
            <xs:element name="permissions" type="permissionsType"/>
            <xs:element name="jvmarg" type="jvmargType"/>
            <xs:element name="arg" type="argType"/>
            <xs:element name="assertions" type="assertionsType"/>
            <xs:element name="testlet" type="testletType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="resultproperty" type="xs:string"/>
        <xs:attribute name="jvmargs" type="xs:string"/>
        <xs:attribute name="args" type="xs:string"/>
        <xs:attribute name="fork">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxmemory" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="jar" type="xs:string"/>
        <xs:attribute name="errorproperty" type="xs:string"/>
        <xs:attribute name="forceshowtrace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="timeout" type="xs:string"/>
        <xs:attribute name="spawn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="jvm" type="xs:string"/>
        <xs:attribute name="inputstring" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="logerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="showsuccess">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="jvmversion" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="append">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="showbanner" type="xs:string"/>
        <xs:attribute name="newenvironment">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="showtrace">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="testletType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="textType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="trim">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="optional">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="titleType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="toType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="address" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tokenType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="tokenfilterType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="containsstring" type="containsstringType"/>
            <xs:element name="linetokenizer" type="linetokenizerType"/>
            <xs:element name="trim" type="trimType"/>
            <xs:element name="stringtokenizer" type="stringtokenizerType"/>
            <xs:element name="replaceregex" type="replaceregexType"/>
            <xs:element name="replacestring" type="replacestringType"/>
            <xs:element name="ignoreblank" type="ignoreblankType"/>
            <xs:element name="deletecharacters" type="deletecharactersType"/>
            <xs:element name="containsregex" type="containsregexType"/>
            <xs:element name="filetokenizer" type="filetokenizerType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="delimoutput" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="touchType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="millis" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="datetime" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="transactionType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="id" type="xs:ID"/>
                <xs:attribute name="src" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="translateType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="bundlecountry" type="xs:string"/>
        <xs:attribute name="bundlelanguage" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="srcencoding" type="xs:string"/>
        <xs:attribute name="bundle" type="xs:string"/>
        <xs:attribute name="bundleencoding" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destencoding" type="xs:string"/>
        <xs:attribute name="bundlevariant" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="endtoken" type="xs:string"/>
        <xs:attribute name="forceoverwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="starttoken" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="triggersType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="method" type="methodType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="trimType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="byline">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="tstampType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="format" type="formatType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="typeType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="error" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="type">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="file"/>
                    <xs:enumeration value="dir"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="typedefType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="uri" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="adaptto" type="xs:string"/>
        <xs:attribute name="onerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="report"/>
                    <xs:enumeration value="ignore"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="loaderref" type="xs:IDREF"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="adapter" type="xs:string"/>
        <xs:attribute name="format">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="properties"/>
                    <xs:enumeration value="xml"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="reverseloader">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="unjarType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="patternset" type="patternsetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="untarType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="patternset" type="patternsetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="compression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="none"/>
                    <xs:enumeration value="gzip"/>
                    <xs:enumeration value="bzip2"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="unwarType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="patternset" type="patternsetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="unzipType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="patternset" type="patternsetType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="src" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="uptodateType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="srcfiles" type="srcfilesType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="targetfile" type="xs:string"/>
        <xs:attribute name="srcfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="urlType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="url" type="xs:string"/>
        <xs:attribute name="destfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="userType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="userid" type="xs:string"/>
        <xs:attribute name="displayname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="vajexportType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="include" type="includeType"/>
            <xs:element name="exclude" type="excludeType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="exportclasses">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="haltonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="remote" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="exportresources">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="exportsources">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="overwrite">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="exportdebuginfo">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="vajimportType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="haltonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="remote" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="importsources">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="project" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="importresources">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="importclasses">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="vajloadType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="vajproject" type="vajprojectType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="remote" type="xs:string"/>
        <xs:attribute name="haltonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="vajprojectType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="version" type="xs:string"/>
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="vbcType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="resource" type="resourceType"/>
            <xs:element name="define" type="defineType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="reference" type="referenceType"/>
            <xs:element name="src" type="srcType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="references" type="xs:string"/>
        <xs:attribute name="useresponsefile">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="removeintchecks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="mainclass" type="xs:string"/>
        <xs:attribute name="extraoptions" type="xs:string"/>
        <xs:attribute name="additionalmodules" type="xs:string"/>
        <xs:attribute name="win32icon" type="xs:string"/>
        <xs:attribute name="optionstrict">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="executable" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="utf8output">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includedefaultreferences">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="optimize">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="targettype">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="exe"/>
                    <xs:enumeration value="library"/>
                    <xs:enumeration value="module"/>
                    <xs:enumeration value="winexe"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="rootnamespace" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="win32res" type="xs:string"/>
        <xs:attribute name="debug">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="optionexplicit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="warnlevel" type="xs:string"/>
        <xs:attribute name="srcdir" type="xs:string"/>
        <xs:attribute name="optioncompare" type="xs:string"/>
        <xs:attribute name="imports" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="referencefiles" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="waitforType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="isfalse" type="isfalseType"/>
            <xs:element name="isreference" type="isreferenceType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="available" type="availableType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="os" type="osType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="filesmatch" type="filesmatchType"/>
            <xs:element name="checksum" type="checksumType"/>
            <xs:element name="istrue" type="istrueType"/>
            <xs:element name="isset" type="issetType"/>
            <xs:element name="socket" type="socketType"/>
            <xs:element name="http" type="httpType"/>
            <xs:element name="uptodate" type="uptodateType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="checkeveryunit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="millisecond"/>
                    <xs:enumeration value="second"/>
                    <xs:enumeration value="minute"/>
                    <xs:enumeration value="hour"/>
                    <xs:enumeration value="day"/>
                    <xs:enumeration value="week"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="checkevery" type="xs:string"/>
        <xs:attribute name="maxwaitunit">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="millisecond"/>
                    <xs:enumeration value="second"/>
                    <xs:enumeration value="minute"/>
                    <xs:enumeration value="hour"/>
                    <xs:enumeration value="day"/>
                    <xs:enumeration value="week"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="maxwait" type="xs:string"/>
        <xs:attribute name="timeoutproperty" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="warType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="manifest" type="manifestType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="metainf" type="metainfType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="lib" type="libType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="zipgroupfileset" type="zipgroupfilesetType"/>
            <xs:element name="zipfileset" type="zipfilesetType"/>
            <xs:element name="classes" type="classesType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="webinf" type="webinfType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="keepcompression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="whenempty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="create"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="duplicate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="preserve"/>
                    <xs:enumeration value="fail"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="manifest" type="xs:string"/>
        <xs:attribute name="jarfile" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="index">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="update">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="webxml" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="manifestencoding" type="xs:string"/>
        <xs:attribute name="filesonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="warfile" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="filesetmanifest">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="merge"/>
                    <xs:enumeration value="mergewithoutmain"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="zipfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="wasclasspathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="webappType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="basedir" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="webinfType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="whichresourceType">
        <xs:sequence minOccurs="0" maxOccurs="unbounded">
            <xs:element name="classpath" type="classpathType"/>
        </xs:sequence>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="resource" type="xs:string"/>
        <xs:attribute name="class" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="wlclasspathType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="extdirs" type="extdirsType"/>
            <xs:element name="filelist" type="filelistType"/>
            <xs:element name="existing" type="existingType"/>
            <xs:element name="pathelement" type="pathelementType"/>
            <xs:element name="path" type="pathType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="location" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="xmlcatalogType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="entity" type="entityType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="catalogpath" type="catalogpathType"/>
            <xs:element name="dtd" type="dtdType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="catalogpathref" type="xs:IDREF"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="xmlpropertyType">
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="semanticattributes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keeproot">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="collapseattributes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="validate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="rootdirectory" type="xs:string"/>
        <xs:attribute name="includesemanticattribute">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="xmlvalidateType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="attribute" type="attributeType"/>
            <xs:element name="dtd" type="dtdType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="classname" type="xs:string"/>
        <xs:attribute name="lenient">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="warn">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="failonerror">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="xsltType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="factory" type="factoryType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="param" type="paramType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="classpath" type="classpathType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="outputproperty" type="outputpropertyType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="mapper" type="mapperType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="force">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="processor" type="xs:string"/>
        <xs:attribute name="classpathref" type="xs:IDREF"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="destdir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="scanincludeddirectories">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="extension" type="xs:string"/>
        <xs:attribute name="in" type="xs:string"/>
        <xs:attribute name="classpath" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="reloadstylesheet">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="out" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="style" type="xs:string"/>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="zipType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="zipgroupfileset" type="zipgroupfilesetType"/>
            <xs:element name="zipfileset" type="zipfilesetType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="whenempty">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="fail"/>
                    <xs:enumeration value="skip"/>
                    <xs:enumeration value="create"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="keepcompression">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="duplicate">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="add"/>
                    <xs:enumeration value="preserve"/>
                    <xs:enumeration value="fail"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="basedir" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="update">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="destfile" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="compress">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="taskname" type="xs:string"/>
        <xs:attribute name="filesonly">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="zipfile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="zipfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="src" type="xs:string"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="filemode" type="xs:string"/>
        <xs:attribute name="prefix" type="xs:string"/>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="fullpath" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="dirmode" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="zipgroupfilesetType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="patternset" type="patternsetType"/>
            <xs:element name="exclude" type="excludeType"/>
            <xs:element name="include" type="includeType"/>
            <xs:element name="custom" type="customType"/>
            <xs:element name="present" type="presentType"/>
            <xs:element name="none" type="noneType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="type" type="typeType"/>
            <xs:element name="modified" type="modifiedType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="depend" type="dependType"/>
            <xs:element name="different" type="differentType"/>
            <xs:element name="size" type="sizeType"/>
            <xs:element name="majority" type="majorityType"/>
            <xs:element name="containsregexp" type="containsregexpType"/>
            <xs:element name="filename" type="filenameType"/>
            <xs:element name="selector" type="selectorType"/>
            <xs:element name="includesfile" type="includesfileType"/>
            <xs:element name="date" type="dateType"/>
            <xs:element name="excludesfile" type="excludesfileType"/>
            <xs:element name="depth" type="depthType"/>
            <xs:element name="and" type="andType"/>
        </xs:choice>
        <xs:attribute name="id" type="xs:ID"/>
        <xs:attribute name="refid" type="xs:IDREF"/>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="defaultexcludes">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="followsymlinks">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="casesensitive">
            <xs:simpleType>
                <xs:restriction base="xs:NMTOKEN">
                    <xs:enumeration value="true"/>
                    <xs:enumeration value="false"/>
                    <xs:enumeration value="on"/>
                    <xs:enumeration value="off"/>
                    <xs:enumeration value="yes"/>
                    <xs:enumeration value="no"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="description" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="includesfile" type="xs:string"/>
        <xs:attribute name="excludesfile" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="doxygenType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="property">
                <xs:complexType>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element name="fileset" type="filesetType"/>
                    </xs:choice>
                    <xs:attribute name="name" type="xs:string" use="required"/>
                    <xs:attribute name="value" type="xs:string" use="optional"/>
                </xs:complexType>
            </xs:element>
        </xs:choice>
        <xs:attribute name="versionCompatible" type="xs:string"/>
        <xs:attribute name="doxygenPath" type="xs:string"/>
        <xs:attribute name="configFilename" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="foreachType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="path" type="pathType"/>
            <xs:element name="param" type="paramType"/>
        </xs:choice>
        <xs:attribute name="list" type="xs:string"/>
        <xs:attribute name="target" type="xs:string" use="required"/>
        <xs:attribute name="param" type="xs:string"/>
        <xs:attribute name="delimiter" type="xs:string"/>
        <xs:attribute name="inheritall" type="xs:string"/>
        <xs:attribute name="inheritrefs" type="xs:string"/>
        <xs:attribute name="parallel" type="xs:string"/>
        <xs:attribute name="maxThreads" type="xs:string"/>
        <xs:attribute name="trim" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="varType">
        <xs:choice minOccurs="0" maxOccurs="unbounded"/>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
        <xs:attribute name="unset" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="ifType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="isfalse" type="isfalseType"/>
            <xs:element name="isreference" type="isreferenceType"/>
            <xs:element name="equals" type="equalsType"/>
            <xs:element name="available" type="availableType"/>
            <xs:element name="not" type="notType"/>
            <xs:element name="contains" type="containsType"/>
            <xs:element name="os" type="osType"/>
            <xs:element name="or" type="orType"/>
            <xs:element name="and" type="andType"/>
            <xs:element name="filesmatch" type="filesmatchType"/>
            <xs:element name="checksum" type="checksumType"/>
            <xs:element name="istrue" type="istrueType"/>
            <xs:element name="isset" type="issetType"/>
            <xs:element name="socket" type="socketType"/>
            <xs:element name="http" type="httpType"/>
            <xs:element name="uptodate" type="uptodateType"/>
            <xs:element name="then" type="thenType"/>
            <xs:element name="elseif" type="elseifType"/>
            <xs:element name="else" type="elseType"/>
            <xs:element name="resourcecount" type="resourcecountType"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="propertyregexType">
        <xs:attribute name="property" type="xs:string" use="required"/>
        <xs:attribute name="override" type="xs:boolean"/>
        <xs:attribute name="input" type="xs:string" use="required"/>
        <xs:attribute name="regexp" type="xs:string"/>
        <xs:attribute name="select" type="xs:string"/>
        <xs:attribute name="replace" type="xs:string"/>
        <xs:attribute name="casesensitive" type="xs:string"/>
        <xs:attribute name="global" type="xs:boolean"/>
        <xs:attribute name="defaultValue" type="xs:string" use="optional"/>
    </xs:complexType>
    <xs:complexType name="thenType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType"/>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="elseifType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType"/>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="elseType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType"/>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="mergelogsType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="log" type="logType"/>
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="destfile" type="xs:string" use="required"/>
        <xs:attribute name="stdout" type="xs:string" use="optional"/>
    </xs:complexType>
    <xs:complexType name="logType">
        <xs:attribute name="file" type="xs:string" use="required"/>
        <xs:attribute name="tool" type="xs:string" use="required"/>
        <xs:attribute name="regex" type="xs:string" use="required"/>
    </xs:complexType>
    <xs:complexType name="reviewplanType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="destdir" type="xs:string" use="required"/>
        <xs:attribute name="component" type="xs:string" use="required"/>
    </xs:complexType>
    <xs:complexType name="processreviewplanType">
        <xs:attribute name="in" type="xs:string" use="required"/>
    </xs:complexType>
    <xs:complexType name="convertreviewlogType">
        <xs:attribute name="input" type="xs:string" use="required"/>
        <xs:attribute name="template" type="xs:string" use="required"/>
        <xs:attribute name="review" type="xs:string" use="required"/>
    </xs:complexType>
    <xs:complexType name="lintType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="option">
                <xs:complexType>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element name="fileset" type="filesetType"/>
                        <xs:element name="dirset" type="dirsetType"/>
                    </xs:choice>
                    <xs:attribute name="type" type="xs:string" use="optional"/>
                    <xs:attribute name="value" type="xs:string" use="optional"/>
                </xs:complexType>
            </xs:element>
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="output" type="xs:string" use="required"/>
        <xs:attribute name="lintPath" type="xs:string" use="optional"/>
    </xs:complexType>
    <xs:complexType name="customcopyType">
        <xs:complexContent>
            <xs:extension base="copyType">
                <xs:attribute name="preservereadonly">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
                <xs:attribute name="checkcontents">
                    <xs:simpleType>
                        <xs:restriction base="xs:NMTOKEN">
                            <xs:enumeration value="true"/>
                            <xs:enumeration value="false"/>
                            <xs:enumeration value="on"/>
                            <xs:enumeration value="off"/>
                            <xs:enumeration value="yes"/>
                            <xs:enumeration value="no"/>
                        </xs:restriction>
                    </xs:simpleType>
                </xs:attribute>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="fopType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="messagelevel" type="xs:string"/>
        <xs:attribute name="userconfig" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="xmltaskType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="cut" type="cutXmlType"/>
            <xs:element name="copy" type="copyXmlType"/>
            <xs:element name="insert" type="insertXmlType"/>
            <xs:element name="rename" type="renameXmlType"/>
            <xs:element name="remove" type="removeXmlType"/>
            <xs:element name="attr" type="attrXmlType"/>
            <xs:element name="xmlcatalog" type="xmlcatalogType"/>
        </xs:choice>
        <xs:attribute name="source" type="xs:string"/>
        <xs:attribute name="sourcebuffer" type="xs:string"/>
        <xs:attribute name="dest" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="report" type="xs:string"/>
        <xs:attribute name="public" type="xs:string"/>
        <xs:attribute name="system" type="xs:string"/>
        <xs:attribute name="preservetype" type="xs:string"/>
        <xs:attribute name="failWithoutMatch" type="xs:string"/>
        <xs:attribute name="indent" type="xs:string"/>
        <xs:attribute name="encoding" type="xs:string"/>
        <xs:attribute name="outputter" type="xs:string"/>
        <xs:attribute name="omitHeader" type="xs:string"/>
        <xs:attribute name="standalone" type="xs:string"/>
        <xs:attribute name="clearBuffers" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="cutXmlType">
        <xs:attribute name="path" type="xs:string"/>
        <xs:attribute name="buffer" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="append" type="xs:string"/>
        <xs:attribute name="attrValue" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="copyXmlType">
        <xs:attribute name="path" type="xs:string"/>
        <xs:attribute name="buffer" type="xs:string"/>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="append" type="xs:string"/>
        <xs:attribute name="attrValue" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="insertXmlType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="path" type="xs:string" use="required"/>
                <xs:attribute name="buffer" type="xs:string" use="optional"/>
                <xs:attribute name="file" type="xs:string" use="optional"/>
                <xs:attribute name="xml" type="xs:string" use="optional"/>
                <xs:attribute name="position" type="xs:string" use="optional"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="renameXmlType">
        <xs:attribute name="path" type="xs:string"/>
        <xs:attribute name="to" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="removeXmlType">
        <xs:attribute name="path" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="attrXmlType">
        <xs:attribute name="path" type="xs:string" use="required"/>
        <xs:attribute name="attr" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="optional"/>
        <xs:attribute name="remove" type="xs:boolean" use="optional"/>
    </xs:complexType>
    <xs:complexType name="ftpType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="server" type="xs:string"/>
        <xs:attribute name="userid" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="getsizeType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="output" type="xs:string" use="required"/>
    </xs:complexType>
    <xs:complexType name="abldType">
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="output" type="xs:string" use="optional"/>
        <xs:attribute name="test" type="xs:boolean" use="optional"/>
        <xs:attribute name="command" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:token">
                    <xs:enumeration value="build"/>
                    <xs:enumeration value="clean"/>
                    <xs:enumeration value="cleanall"/>
                    <xs:enumeration value="cleanexport"/>
                    <xs:enumeration value="export"/>
                    <xs:enumeration value="final"/>
                    <xs:enumeration value="freeze"/>
                    <xs:enumeration value="help"/>
                    <xs:enumeration value="library"/>
                    <xs:enumeration value="listing"/>
                    <xs:enumeration value="makefile"/>
                    <xs:enumeration value="reallyclean"/>
                    <xs:enumeration value="resource"/>
                    <xs:enumeration value="target"/>
                    <xs:enumeration value="tidy"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="platform" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="wins"/>
                    <xs:enumeration value="winscw"/>
                    <xs:enumeration value="gccxml"/>
                    <xs:enumeration value="thumb"/>
                    <xs:enumeration value="arm4at"/>
                    <xs:enumeration value="vc6"/>
                    <xs:enumeration value="cw_ide"/>
                    <xs:enumeration value="armv5"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="variant" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="udeb"/>
                    <xs:enumeration value="urel"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
    <xs:complexType name="grandType">
        <xs:attribute name="buildfile" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="svnType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="update" type="updateSvnType"/>
            <xs:element name="status" type="statusSvnType"/>
        </xs:choice>
        <xs:attribute name="username" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="updateSvnType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="file" type="xs:string" use="optional"/>
        <xs:attribute name="dir" type="xs:string" use="optional"/>
        <xs:attribute name="recurse" type="xs:string" use="optional"/>
        <xs:attribute name="revision" type="xs:string" use="optional"/>
    </xs:complexType>
    <xs:complexType name="statusSvnType">
        <xs:attribute name="path" type="xs:string"/>
        <xs:attribute name="textStatusProperty" type="xs:string" use="optional"/>
        <xs:attribute name="propStatusProperty" type="xs:string" use="optional"/>
        <xs:attribute name="revisionProperty" type="xs:string" use="optional"/>
        <xs:attribute name="lastChangedRevisionProperty" type="xs:string" use="optional"/>
        <xs:attribute name="lastCommitAuthorProperty" type="xs:string" use="optional"/>
    </xs:complexType>
    <xs:complexType name="antunitType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="plainlistener" type="plainlistenerType"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="plainlistenerType"/>
    <xs:complexType name="schemavalidateType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="schema" type="schemaType"/>
        </xs:choice>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="noNamespaceFile" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="pythonType">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="outputproperty" type="xs:string"/>
                <xs:attribute name="resultproperty" type="xs:string"/>
                <xs:attribute name="failonerror" type="xs:string"/>
                <xs:attribute name="script" type="xs:string"/>
                <xs:attribute name="dir" type="xs:string"/>
                <xs:attribute name="output" type="xs:string"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>
    <xs:complexType name="forType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
            <xs:element name="path" type="pathType"/>
            <xs:element name="resources" type="resourcesType"/>
            <xs:element name="sequential" type="sequentialType"/>
        </xs:choice>
        <xs:attribute name="list" type="xs:string"/>
        <xs:attribute name="param" type="xs:string"/>
        <xs:attribute name="delimiter" type="xs:string"/>
        <xs:attribute name="parallel" type="xs:string"/>
        <xs:attribute name="keepgoing" type="xs:string"/>
        <xs:attribute name="threadCount" type="xs:string"/>
        <xs:attribute name="trim" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="chainedmapperType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="mapper" type="mapperType"/>
            <xs:element name="flattenmapper" type="flattenmapperType"/>
            <xs:element name="globmapper" type="globmapperType"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="flattenmapperType"/>
    <xs:complexType name="antformType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="label" type="xs:string"/>
            <xs:element name="separator"/>
            <xs:element name="tab">
                <xs:complexType>
                    <xs:attribute name="label" type="xs:string"/>
                </xs:complexType>
            </xs:element>
            <xs:element name="fileSelectionProperty">
                <xs:complexType>
                    <xs:attribute name="if" type="xs:string"/>
                    <xs:attribute name="unless" type="xs:string"/>
                    <xs:attribute name="label" type="xs:string"/>
                    <xs:attribute name="property" type="xs:string"/>
                    <xs:attribute name="directoryChooser" type="xs:string"/>
                    <xs:attribute name="required" type="xs:boolean"/>
                    <xs:attribute name="tooltip" type="xs:string"/>
                    <xs:attribute name="focus" type="xs:boolean"/>
                </xs:complexType>
            </xs:element>
            <xs:element name="selectionProperty">
                <xs:complexType>
                    <xs:attribute name="if" type="xs:string"/>
                    <xs:attribute name="unless" type="xs:string"/>
                    <xs:attribute name="label" type="xs:string"/>
                    <xs:attribute name="property" type="xs:string"/>
                    <xs:attribute name="values" type="xs:string"/>
                    <xs:attribute name="tooltip" type="xs:string"/>
                    <xs:attribute name="separator" type="xs:string"/>
                    <xs:attribute name="focus" type="xs:boolean"/>
                </xs:complexType>
            </xs:element>
            <xs:element name="textProperty">
                <xs:complexType>
                    <xs:attribute name="if" type="xs:string"/>
                    <xs:attribute name="unless" type="xs:string"/>
                    <xs:attribute name="label" type="xs:string"/>
                    <xs:attribute name="property" type="xs:string"/>
                    <xs:attribute name="required" type="xs:boolean"/>
                    <xs:attribute name="tooltip" type="xs:string"/>
                    <xs:attribute name="password" type="xs:string"/>
                    <xs:attribute name="focus" type="xs:boolean"/>
                </xs:complexType>
            </xs:element>
        </xs:choice>
        <xs:attribute name="title" type="xs:string"/>
        <xs:attribute name="image" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="mathType">
        <xs:attribute name="result" type="xs:string"/>
        <xs:attribute name="datatype" type="xs:string"/>
        <xs:attribute name="strict" type="xs:boolean"/>
        <xs:attribute name="operation" type="xs:string"/>
        <xs:attribute name="operand1" type="xs:string"/>
        <xs:attribute name="operand2" type="xs:string"/>
        <!-- TODO: define nested elements -->
    </xs:complexType>
    <xs:complexType name="antserverType">
        <xs:attribute name="port" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="shellscriptType" mixed="true">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="arg">
                <xs:complexType>
                    <xs:attribute name="value" type="xs:string"/>
                </xs:complexType>
            </xs:element>
        </xs:choice>
        <xs:attribute name="shell" type="xs:string"/>
        <xs:attribute name="tmpsuffix" type="xs:string"/>
        <xs:attribute name="dir" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="runtargetType">
        <xs:attribute name="target" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="echoxmlType">
        <xs:choice maxOccurs="unbounded">
            <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
        <xs:attribute name="file" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="trycatchType">
        <xs:sequence>
            <xs:element name="try">
                <xs:complexType>
                    <xs:complexContent>
                        <xs:extension base="taskcontainerType"/>
                    </xs:complexContent>
                </xs:complexType>
            </xs:element>
            <xs:element name="catch">
                <xs:complexType>
                    <xs:complexContent>
                        <xs:extension base="taskcontainerType"/>
                    </xs:complexContent>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
        <xs:attribute name="property" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="resourcecountType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="dirset" type="dirsetType"/>
        </xs:choice>
        <xs:attribute name="property" type="xs:string"/>
        <xs:attribute name="when" type="xs:string"/>
        <xs:attribute name="count" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="remoteantType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="runtarget" type="runtargetType"/>
        </xs:choice>
        <xs:attribute name="machine" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="persistent" type="xs:string"/>
        <xs:attribute name="failonerror" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="propertyresourceType">
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="firstType">
        <xs:complexContent>
            <xs:extension base="resourceCollectionContainerType">
                <xs:attribute name="count" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="sortType">
        <xs:choice maxOccurs="unbounded">
            <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
        </xs:choice>
    </xs:complexType>
    <xs:complexType name="schemaType">
        <xs:attribute name="namespace" type="xs:string"/>
        <xs:attribute name="file" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="retryType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="sleepTime" type="xs:string"/>
                <xs:attribute name="retryCount" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="antcallbackType">
        <xs:complexContent>
            <xs:extension base="antcallType">
                <xs:attribute name="return" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="diagnosticsType"/>
    <xs:complexType name="sshexecType">
        <xs:attribute name="host" type="xs:string"/>
        <xs:attribute name="username" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="trust" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="failonerror" type="xs:boolean"/>
    </xs:complexType>
    <xs:complexType name="scpType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="localFile" type="xs:string"/>
        <xs:attribute name="remoteFile" type="xs:string"/>
        <xs:attribute name="todir" type="xs:string"/>
        <xs:attribute name="localTodir" type="xs:string"/>
        <xs:attribute name="localTofile" type="xs:string"/>
        <xs:attribute name="remoteTodir" type="xs:string"/>
        <xs:attribute name="remoteTofile" type="xs:string"/>
        <xs:attribute name="port" type="xs:string"/>
        <xs:attribute name="trust" type="xs:string"/>
        <xs:attribute name="knownhosts" type="xs:string"/>
        <xs:attribute name="failonerror" type="xs:string"/>
        <xs:attribute name="password" type="xs:string"/>
        <xs:attribute name="keyfile" type="xs:string"/>
        <xs:attribute name="passphrase" type="xs:string"/>
        <xs:attribute name="verbose" type="xs:string"/>
        <xs:attribute name="sftp" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="xcluderType">
        <xs:attribute name="in" type="xs:string"/>
        <xs:attribute name="out" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="assertTrueType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="message" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="assertFileExistsType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="file" type="xs:string"/>
                <xs:attribute name="message" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="fmppType">
        <xs:choice maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
            <xs:element name="data">
                <xs:complexType>
                    <xs:simpleContent>
                        <xs:extension base="xs:string">
                            <xs:attribute name="expandProperties" type="xs:string"/>
                        </xs:extension>
                    </xs:simpleContent>
                </xs:complexType>
            </xs:element>
        </xs:choice>
        <xs:attribute name="sourceFile" type="xs:string"/>
        <xs:attribute name="outputFile" type="xs:string"/>
        <xs:attribute name="sourceRoot" type="xs:string"/>
        <xs:attribute name="outputRoot" type="xs:string"/>
        <xs:attribute name="includes" type="xs:string"/>
        <xs:attribute name="excludes" type="xs:string"/>
        <xs:attribute name="replaceExtension" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="databaseType">
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="logextractType">
        <xs:complexContent>
            <xs:extension base="resourceCollectionContainerType">
                <xs:attribute name="file" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="signalType">
        <xs:choice minOccurs="0" maxOccurs="unbounded">
            <xs:element name="fileset" type="filesetType"/>
        </xs:choice>
        <xs:attribute name="name" type="xs:string"/>
        <xs:attribute name="result" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="dependenciesType">
        <xs:attribute name="format" type="xs:string"/>
    </xs:complexType>
    <!-- Presets -->
    <xs:complexType name="preset.mailType">
        <xs:complexContent>
            <xs:extension base="mailType"/>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="preset.execType">
        <xs:complexContent>
            <xs:extension base="execType"/>
        </xs:complexContent>
    </xs:complexType>
    <!-- Macros -->
    <xs:complexType name="macro.compile.htmlscanlogType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.cmakerType">
        <xs:attribute name="ncp" type="xs:string"/>
        <xs:attribute name="s60" type="xs:string"/>
        <xs:attribute name="action" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.compile.genxmlType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
        <xs:attribute name="configuration" type="xs:string"/>
        <xs:attribute name="log" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.compile.ebsType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="log" type="xs:string"/>
        <xs:attribute name="threads" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.build.ebs.xmlType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="logname" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.log.htmlType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.bldmake-bldfilesType">
        <xs:attribute name="dir" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.abldType">
        <xs:attribute name="dir" type="xs:string"/>
        <xs:attribute name="command" type="xs:string"/>
        <xs:attribute name="platform" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.filtered-record-startType"/>
    <xs:complexType name="macro.filtered-record-stopType">
        <xs:attribute name="pattern" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.update-statusType"/>
    <xs:complexType name="macro.create-cshelp-bldinfType">
        <xs:attribute name="delivery" type="xs:string"/>
        <xs:attribute name="product" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="createDeltaZipMacroType">
        <xs:attribute name="variant" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.rombuild-imakerType">
        <xs:attribute name="product" type="xs:string"/>
        <xs:attribute name="target" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.imakerType">
        <xs:attribute name="product" type="xs:string"/>
        <xs:attribute name="target" type="xs:string"/>
        <xs:attribute name="makefile" type="xs:string"/>
        <xs:attribute name="cmd" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.ccm-availableType">
        <xs:attribute name="resultproperty" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.publishType"/>
    <xs:complexType name="macro.rom-buildType">
        <xs:attribute name="stage" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.disk-spaceType">
        <xs:attribute name="drive" type="xs:string"/>
        <xs:attribute name="space" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.notifyType">
        <xs:attribute name="message" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.netrc-passwordType">
        <xs:attribute name="output-prop" type="xs:string"/>
        <xs:attribute name="result-prop" type="xs:string"/>
        <xs:attribute name="type" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.netrc-usernameType">
        <xs:attribute name="output-prop" type="xs:string"/>
        <xs:attribute name="result-prop" type="xs:string"/>
        <xs:attribute name="type" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.compile.genxml-mergeType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.declare.idType">
        <xs:attribute name="id" type="xs:ID"/>
    </xs:complexType>
    <xs:complexType name="macro.mail-target-completedType">
        <xs:attribute name="section" type="xs:string"/>
        <xs:attribute name="sms" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="zipContentMacroType">
        <xs:attribute name="type" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.delete-fota-confType">
        <xs:attribute name="product" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.rombuild.valueType">
        <xs:attribute name="product.name" type="xs:string"/>
        <xs:attribute name="outputproperty" type="xs:string"/>
        <xs:attribute name="rombuild.value" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="hlm-assertType">
        <xs:complexContent>
            <xs:extension base="taskcontainerType">
                <xs:attribute name="message" type="xs:string"/>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="hlm-assertFileExistsType">
        <xs:attribute name="file" type="xs:string"/>
        <xs:attribute name="message" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="reference-to-fileType">
        <xs:attribute name="refid" type="xs:string"/>
        <xs:attribute name="output" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.xml.to.fmtlType">
        <xs:attribute name="input" type="xs:string"/>
        <xs:attribute name="xmlroot" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.temp.record.startType">
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <xs:complexType name="macro.temp.record.stopType">
        <xs:attribute name="name" type="xs:string"/>
    </xs:complexType>
    <!--
    
    <xs:complexType name="Type">
        <xs:attribute name="" type="xs:string"/>
    </xs:complexType>
    -->
</xs:schema>