You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2005/08/12 17:23:08 UTC
svn commit: r232310 [21/92] - in /beehive/trunk/controls/test: common/
infra/gtlf/ infra/gtlf/xsl/ infra/mantis/ infra/tch/ infra/tch/messages/
infra/tch/runtime/ infra/tch/schema/ perf/ perf/bin/ perf/cases/
perf/ctlsrc/org/apache/beehive/controls/per...
Modified: beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd
URL: http://svn.apache.org/viewcvs/beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd?rev=232310&r1=232309&r2=232310&view=diff
==============================================================================
--- beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd (original)
+++ beehive/trunk/controls/test/tools/tch/deploy/schema/everything-suite.xsd Fri Aug 12 08:12:28 2005
@@ -1,1901 +1,1901 @@
-<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <!-- performance test suite schema -->
- <xs:include schemaLocation="performance/controls-perf.xsd"/>
-
- <xs:complexType name="configuration-dependencyType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="file"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="jvmargType">
- <xs:attribute
- name="value"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="line"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="javatestType">
- <xs:attribute
- name="testclass"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="methodnames"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
-
- <xs:complexType name="roctestType">
- <xs:attribute
- name="scripts"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="consoleconfig"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="wrconfig"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
-
- <xs:complexType name="webServerType">
- <xs:attribute
- name="testclass"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="methodnames"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="webservers"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="webserverstoexclude"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
-
- <xs:complexType name="tchtestType">
- <xs:attribute
- name="propsfile"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="basefile"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="baselogname"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="ant-exec-taskType">
- <xs:sequence>
- <xs:any
- maxOccurs="unbounded"
- minOccurs="0"
- processContents="skip"
- />
- </xs:sequence>
- <xs:attribute
- name="successMessage"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="stfType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="file"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="processType">
- <xs:choice>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="configuration-dependency"
- type="configuration-dependencyType"
- />
- </xs:choice>
- <xs:attribute
- name="name"
- type="xs:string"
- use="optional"
- />
- <xs:attribute name="default" use="optional">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="true"/>
- <xs:enumeration value="false"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:element name="project">
- <xs:complexType>
- <xs:sequence>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="taskdef"
- type="taskdefType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="property"
- type="propertyType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="1"
- name="target"
- type="targetType"
- />
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="default"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- </xs:element>
- <xs:complexType name="propertyType">
- <xs:attribute name="name" use="optional"/>
- <xs:attribute name="value" use="optional"/>
- <xs:attribute name="file" use="optional"/>
- <xs:attribute name="environment" use="optional"/>
- </xs:complexType>
- <xs:element name="property" type="propertyType"/>
- <xs:complexType name="targetType">
- <xs:sequence>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="property"
- type="propertyType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- <xs:element name="test-suite" type="test-suiteType"/>
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
-
- <xs:complexType name="taskdefType">
- <xs:choice maxOccurs="unbounded" minOccurs="0">
- <xs:element
- maxOccurs="1"
- name="classpath"
- type="classpathType"
- />
- </xs:choice>
- <xs:attribute
- name="name"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="classname"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="resource"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="classpath"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="pathelement"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="file"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
-
- <!-- Leave classpath open since it's the native ant construct -->
- <xs:complexType name="classpathType">
- <xs:sequence>
- <xs:any
- maxOccurs="unbounded"
- minOccurs="0"
- processContents="skip"
- />
- </xs:sequence>
- </xs:complexType>
-
- <!-- FIXME jbaker: Within a given buildfile, each "name" attribute of a test tag must be
- unique -->
- <xs:complexType name="testType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- <xs:element
- minOccurs="0"
- name="test-metadata"
- type="test-metadataType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="process"
- type="processType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-parameter"
- type="test-parameterType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="utility"
- type="utilityType"
- />
- </xs:choice>
- <xs:choice maxOccurs="1">
- <xs:element
- maxOccurs="1"
- name="javatest"
- type="javatestType"
- />
- <xs:element
- maxOccurs="1"
- name="roctest"
- type="roctestType"
- />
- <xs:element
- maxOccurs="1"
- name="junit"
- type="javatestType"
- />
- <xs:element
- maxOccurs="1"
- name="controlsperf"
- type="controlsPerfType"
- />
- <xs:element name="wstest" type="webServerType"/>
- <xs:element name="tch-diff-test" type="tchtestType"/>
- <xs:element name="test-vehicle" type="test-vehicleType"/>
- <xs:element name="http-url-connection" type="http-url-connectionType"/>
- <xs:element name="servlettask" type="servlettaskType"/>
- <xs:element name="servletwritabletask" type="servletwritabletaskType"/>
- <xs:element name="webappstandardtask" type="webappstandardtaskType"/>
- <xs:element name="cmdline" type="cmdlineType"/>
- <xs:element name="stf" type="stfType"/>
- <xs:element name="ant-task" type="ant-exec-taskType"/>
- </xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="utility"
- type="utilityType"
- />
- </xs:choice>
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="requiresRun"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="requiresSuccess"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="testunit"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="timeoutSeconds"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
-
- <!-- FIXME: it is not possible to require a choice of attributes, so value
- and valueProp are made optional.
- In order to fix this, the data model would have to be changed -->
-
- <!-- FIXME: For test-parameter tag, make sure that the value/valueProp
- attributes, if set, do not start with "$" -->
- <xs:complexType name="test-parameterType">
- <xs:choice maxOccurs="unbounded" minOccurs="0">
- <xs:element name="element" type="elementType"/>
- <xs:element name="value" type="xs:string"/>
- </xs:choice>
- <xs:attribute name="name" use="required"/>
- <xs:attribute
- name="value"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="valueProp"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="valueprop"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="elementType">
- <xs:attribute
- name="valueprop"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="test-unit-modifierType">
- <xs:sequence>
- <xs:element
- maxOccurs="unbounded"
- name="test-suite-call"
- type="test-suite-callType"
- />
- </xs:sequence>
- <xs:attribute name="value" use="required"/>
- </xs:complexType>
- <xs:complexType name="testUnitChangeType">
- <xs:attribute name="value" use="required"/>
- </xs:complexType>
- <xs:complexType name="test-sequentialType">
- <xs:choice maxOccurs="unbounded">
- <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="if"
- type="ifType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element name="test-parallel" type="test-parallelType"/>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="test-parallelType">
- <xs:choice maxOccurs="unbounded">
- <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="if"
- type="ifType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element name="test-sequential" type="test-sequentialType"/>
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="test-suite-callType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="property"
- type="propertyType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="test-unit-override"
- type="testUnitChangeType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="test-unit-modifier"
- type="testUnitChangeType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="test-name-modifier"
- type="testUnitChangeType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="append-to-test-unit"
- type="testUnitChangeType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="append-to-test-name"
- type="testUnitChangeType"
- />
- </xs:choice>
- <xs:attribute name="antfile" use="optional"/>
- <xs:attribute name="testfile" use="optional"/>
- <xs:attribute name="target" use="optional"/>
- </xs:complexType>
- <xs:complexType name="test-metadataType">
- <xs:all>
- <xs:element
- minOccurs="0"
- name="usage"
- type="xs:string"
- />
- <xs:element
- minOccurs="0"
- name="description"
- type="xs:string"
- />
- <xs:element
- minOccurs="0"
- name="testLevel"
- type="testLevelType"
- />
- <!--
- REMOVED
- <xs:element
- minOccurs="0"
- name="owner"
- type="ownerType"
- />
- -->
- <xs:element
- minOccurs="0"
- name="freq"
- type="frequencyType"
- />
- <xs:element
- minOccurs="0"
- name="webapps"
- type="webappsType"
- />
- <xs:element
- minOccurs="0"
- name="misc"
- type="miscType"
- />
- <!--
- REMOVED
- <xs:element
- minOccurs="0"
- name="serverMode"
- type="serverModeType"
- />
- <xs:element
- minOccurs="0"
- name="db"
- type="dbType"
- />
- -->
- <xs:element
- minOccurs="0"
- name="status"
- type="statusType"
- />
- <!--
- REMOVED
- <xs:element
- minOccurs="0"
- name="conversation"
- type="conversationType"
- />
- <xs:element
- minOccurs="0"
- name="domain"
- type="domainType"
- />
-
- <xs:element
- minOccurs="0"
- name="scenario"
- type="scenarioType"
- />
- <xs:element
- minOccurs="0"
- name="knownFailure"
- type="knownFailureType"
- />
- <xs:element
- minOccurs="0"
- name="CRList"
- type="CRListType"
- />
- <xs:element
- minOccurs="0"
- name="SSLRestriction"
- type="SSLRestrictionType"
- />
- <xs:element
- minOccurs="0"
- name="condition"
- type="conditionalType"
- />
- <xs:element
- minOccurs="0"
- name="OSRestriction"
- type="OSRestrictionType"
- />
-
- <xs:element
- minOccurs="0"
- name="os"
- type="osType"
- />
-
- <xs:element
- minOccurs="0"
- name="JavaRestriction"
- type="JavaRestrictionType"
- />
- <xs:element
- minOccurs="0"
- name="clientTypes"
- type="clientTypesType"
- />
- <xs:element
- minOccurs="0"
- name="securityType"
- type="securityTypeType"
- />
- -->
- </xs:all>
- </xs:complexType>
- <xs:complexType name="testLevelType">
- <xs:attribute name="level" use="optional">
- <xs:simpleType>
- <xs:restriction base="xs:integer">
- <xs:minInclusive value="1"/>
- <xs:maxInclusive value="4"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="levels" use="optional"/>
- </xs:complexType>
- <xs:complexType name="knownFailureType">
- <xs:attribute name="value" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="scenarioType">
- <xs:attribute
- name="ssl"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="thinclient"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="thinclientStrict"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="jdkClient"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
-
- <!-- FIXME: not doing full validation on the contents of the "ids" tag
- this would only be possble if we followed the convention for list type, which
- is whitespace, not comma, separated items -->
- <xs:complexType name="CRListType">
- <xs:attribute
- name="ids"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
-
- <xs:simpleType name="ownerType">
- <xs:restriction base="xs:string"/>
- </xs:simpleType>
-
- <xs:simpleType name="miscType">
- <xs:restriction base="xs:string"/>
- </xs:simpleType>
-
- <!-- all this just to create a list type?-->
- <!-- how can i make sure there are no duplicates in the enum? -->
- <xs:simpleType name="frequencyOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="drt"/>
- <xs:enumeration value="bvt"/>
- <xs:enumeration value="daily"/>
- <xs:enumeration value="weekly"/>
- <!-- the following values are used for xbean tests -->
- <xs:enumeration value="checkin"/>
- <xs:enumeration value="detailed"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="frequencyList">
- <xs:list itemType="frequencyOptions"/>
- </xs:simpleType>
- <xs:simpleType name="frequencyType">
- <xs:restriction base="frequencyList">
- <xs:minLength value="0"/>
- <xs:maxLength value="4"/>
- </xs:restriction>
- </xs:simpleType>
- <!-- end frequency definition -->
-
- <xs:simpleType name="webappsOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="controlsWeb"/>
- <xs:enumeration value="jmsControlWeb"/>
- <xs:enumeration value="testWeb"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="webappsList">
- <xs:list itemType="webappsOptions"/>
- </xs:simpleType>
- <xs:simpleType name="webappsType">
- <xs:restriction base="webappsList">
- <xs:minLength value="0"/>
- <xs:maxLength value="3"/>
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="serverModeOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="prod"/>
- <xs:enumeration value="dev"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="serverModeList">
- <xs:list itemType="serverModeOptions"/>
- </xs:simpleType>
- <xs:simpleType name="serverModeType">
- <xs:restriction base="serverModeList">
- <xs:minLength value="0"/>
- <xs:maxLength value="2"/>
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="dbOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="all"/>
- <xs:enumeration value="none"/>
- <xs:enumeration value="oracle8"/>
- <xs:enumeration value="oracle9"/>
- <xs:enumeration value="db2"/>
- <xs:enumeration value="mssql"/>
- <xs:enumeration value="pointbase"/>
- <xs:enumeration value="sybase"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="dbList">
- <xs:list itemType="dbOptions"/>
- </xs:simpleType>
- <xs:simpleType name="dbType">
- <xs:restriction base="dbList">
- <xs:minLength value="0"/>
- <xs:maxLength value="7"/>
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="statusOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="active"/>
- <xs:enumeration value="inactive"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="statusList">
- <xs:list itemType="statusOptions"/>
- </xs:simpleType>
- <xs:simpleType name="statusType">
- <xs:restriction base="statusList">
- <xs:minLength value="0"/>
- <xs:maxLength value="2"/>
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="conversationOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="db"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="conversationList">
- <xs:list itemType="conversationOptions"/>
- </xs:simpleType>
- <xs:simpleType name="conversationType">
- <xs:restriction base="conversationList">
- <xs:minLength value="0"/>
- <xs:maxLength value="1"/>
- </xs:restriction>
- </xs:simpleType>
- <!--
- REMOVED
- <xs:simpleType name="domainOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="knexbvt"/>
- <xs:enumeration value="securitybvt"/>
- <xs:enumeration value="transecuritybvt"/>
- <xs:enumeration value="runtime9QADomain"/>
- <xs:enumeration value="samplesDomain"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="domainList">
- <xs:list itemType="domainOptions"/>
- </xs:simpleType>
- <xs:simpleType name="domainType">
- <xs:restriction base="domainList">
- <xs:minLength value="0"/>
- <xs:maxLength value="4"/>
- </xs:restriction>
- </xs:simpleType>
- -->
-
- <xs:simpleType name="osOptions">
- <xs:restriction base="xs:string">
- <xs:enumeration value="win"/>
- <xs:enumeration value="sol"/>
- <xs:enumeration value="lin"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="osList">
- <xs:list itemType="osOptions"/>
- </xs:simpleType>
- <xs:simpleType name="osType">
- <xs:restriction base="osList">
- <xs:minLength value="0"/>
- <xs:maxLength value="3"/>
- </xs:restriction>
- </xs:simpleType>
-
- <xs:complexType name="clientTypesType">
- <xs:attribute
- name="jdkclient"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="thinclient"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="thinclientstrict"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="securityTypeType">
- <xs:attribute
- name="security61"
- type="xs:boolean"
- use="optional"
- />
- <xs:attribute
- name="security70"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="SSLRestrictionType">
- <xs:attribute
- name="value"
- type="xs:boolean"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="OSRestrictionType">
- <xs:attribute
- name="names"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="excluded"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="JavaRestrictionType">
- <xs:attribute
- name="versions"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="excluded"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="test-vehicleType">
- <xs:sequence>
- <xs:element name="javatest" type="javatestType"/>
- </xs:sequence>
- <xs:attribute
- name="type"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="name"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="process"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="test-blockType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="process"
- type="processType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-parameter"
- type="test-parameterType"
- />
- <xs:element
- minOccurs="0"
- name="test-metadata"
- type="test-metadataType"
- />
- </xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="test-parallel"
- type="test-parallelType"
- />
- <xs:element
- minOccurs="0"
- name="test-sequential"
- type="test-sequentialType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-unit-modifier"
- type="test-unit-modifierType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="if"
- type="ifType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- </xs:choice>
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="count"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="requiresRun"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="requiresSuccess"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="independent-test-groupType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="process"
- type="processType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-parameter"
- type="test-parameterType"
- />
- <xs:element
- minOccurs="0"
- name="test-metadata"
- type="test-metadataType"
- />
- </xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="test-parallel"
- type="test-parallelType"
- />
- <xs:element
- minOccurs="0"
- name="test-sequential"
- type="test-sequentialType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-unit-modifier"
- type="test-unit-modifierType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="independent-test-group"
- type="independent-test-groupType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="if"
- type="ifType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- </xs:choice>
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="rerunFailedTestOnly"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="utilityType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="arg"
- type="argType"
- />
- </xs:choice>
- </xs:sequence>
- <xs:attribute
- name="classname"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="methodname"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="argType">
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="http-url-connectionType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestheader"
- type="requestheaderType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="miscrequestheader"
- type="miscrequestheaderType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestparam"
- type="requestparamType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedstring"
- type="expectedstringType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedresponsecode"
- type="expectedresponsecodeType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="expectedheader"
- type="expectedheaderType"
- />
- <xs:element
- minOccurs="0"
- name="authenticate"
- type="authenticateType"
- />
- </xs:choice>
- <xs:attribute
- name="target"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="checkmode"
- type="xs:string"
- use="required"
- />
- <xs:attribute name="connectionmode" type="xs:string"/>
- <xs:attribute name="followredirect" type="xs:string"/>
- <xs:attribute name="sendcookie" type="xs:string"/>
- <xs:attribute name="secure" type="xs:string"/>
- <xs:attribute name="sendSSLCookie" type="xs:string"/>
- <xs:attribute name="protocol" type="xs:string"/>
- <xs:attribute name="clearcookies" type="xs:string"/>
- </xs:complexType>
- <xs:complexType name="servlettaskType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestheader"
- type="requestheaderType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestparam"
- type="requestparamType"
- />
- <xs:element
- minOccurs="0"
- name="authenticate"
- type="authenticateType"
- />
- </xs:choice>
- <xs:attribute
- name="target"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="testclass"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="testmethod"
- type="xs:string"
- use="required"
- />
- <xs:attribute name="connectionmode" type="xs:string"/>
- <xs:attribute name="followredirect" type="xs:string"/>
- <xs:attribute name="sendcookie">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="secure">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="sendSSLCookie">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="protocol" type="xs:string"/>
- <xs:attribute name="clearcookies">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="servletwritabletaskType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestheader"
- type="requestheaderType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="miscrequestheader"
- type="miscrequestheaderType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requestparam"
- type="requestparamType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedstring"
- type="expectedstringType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedresponsecode"
- type="xs:integer"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="expectedheader"
- type="expectedheaderType"
- />
- <xs:element
- minOccurs="0"
- name="authenticate"
- type="authenticateType"
- />
- </xs:choice>
- <xs:attribute
- name="target"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="testclass"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="testmethod"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="checkmode"
- type="xs:string"
- use="required"
- />
- <xs:attribute name="connectionmode" type="xs:string"/>
- <xs:attribute name="followredirect" type="xs:string"/>
- <xs:attribute name="sendcookie">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="secure">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="sendSSLCookie">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="protocol" type="xs:double"/>
- <xs:attribute name="clearcookies">
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:enumeration value="false"/>
- <xs:enumeration value="true"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="webappstandardtaskType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="1"
- name="testmethod"
- type="testmethodType"
- />
- </xs:choice>
- <xs:attribute
- name="testclass"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="cmdlineType">
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="1"
- minOccurs="1"
- name="cmd"
- type="cmdType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="cmdtoken"
- type="cmdtokenType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="enventry"
- type="enventryType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedexitcode"
- type="expectedexitcodeType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedoutputstring"
- type="expectedoutputstringType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectederrorstring"
- type="expectederrorstringType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="expectedoutputerrorstring"
- type="expectedoutputerrorstringType"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="timeout"
- type="xs:integer"
- />
- <xs:element
- maxOccurs="1"
- minOccurs="0"
- name="workingdir"
- type="workingdirType"
- />
- </xs:choice>
- <xs:attribute
- name="checkmode"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="echo"
- type="xs:boolean"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="cmdType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="cmdtokenType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="enventryType">
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="expectedexitcodeType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="expectedoutputstringType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="regexp"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="expectederrorstringType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="regexp"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="expectedoutputerrorstringType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="regexp"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="timeoutType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="workingdirType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="expectedstringType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute
- name="regexp"
- type="xs:string"
- use="optional"
- />
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="requestheaderType">
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="miscrequestheaderType">
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="requestparamType">
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="expectedresponsecodeType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="expectedheaderType">
- <xs:attribute
- name="regexp"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="name"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="authenticateType">
- <xs:attribute
- name="user"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="password"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="testmethodType">
- <xs:attribute
- name="value"
- type="xs:string"
- use="required"
- />
- </xs:complexType>
- <xs:complexType name="test-suiteType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="process"
- type="processType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-parameter"
- type="test-parameterType"
- />
- <xs:element
- minOccurs="0"
- name="test-metadata"
- type="test-metadataType"
- />
- </xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="test-parallel"
- type="test-parallelType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-unit-modifier"
- type="test-unit-modifierType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="independent-test-group"
- type="independent-test-groupType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="if"
- type="ifType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- minOccurs="0"
- name="init-hook"
- type="anythingType"
- />
- <xs:element
- minOccurs="0"
- name="cleanup-hook"
- type="anythingType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- </xs:choice>
- </xs:sequence>
- <xs:attribute
- name="testunit"
- type="xs:string"
- use="required"
- />
- <xs:attribute
- name="timeoutSeconds"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType mixed="true" name="anythingType">
- <xs:sequence>
- <xs:any
- maxOccurs="unbounded"
- minOccurs="0"
- processContents="skip"
- />
- </xs:sequence>
- <xs:attribute
- name="name"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="group"
- type="xs:string"
- use="optional"
- />
- <xs:attribute
- name="requiredForTest"
- type="xs:string"
- use="optional"
- />
- </xs:complexType>
- <xs:complexType name="ifType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- maxOccurs="unbounded"
- minOccurs="1"
- name="conditional"
- type="conditionalType"
- />
- </xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="test-parallel"
- type="test-parallelType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="independent-test-group"
- type="independent-test-groupType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-unit-modifier"
- type="test-unit-modifierType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="if"
- type="ifType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="requires-dependent"
- type="requiresDependentType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="conditionalType">
- <xs:simpleContent>
- <xs:extension base="xs:string"/>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="requiresType">
- <xs:sequence>
- <xs:choice maxOccurs="unbounded">
- <xs:element
- minOccurs="0"
- name="test-parallel"
- type="test-parallelType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-unit-modifier"
- type="test-unit-modifierType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-suite-call"
- type="test-suite-callType"
- />
- <xs:element
- maxOccurs="unbounded"
- minOccurs="0"
- name="test-block"
- type="test-blockType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="test"
- type="testType"
- />
- <xs:element
- maxOccurs="unbounded"
- name="if"
- type="ifType"
- />
- <xs:element
- minOccurs="0"
- name="custom-task"
- type="anythingType"
- />
- <xs:element
- minOccurs="0"
- name="requires-dependent"
- type="requiresDependentType"
- />
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="requiresDependentType">
- <xs:sequence>
- <xs:choice maxOccurs="1" minOccurs="1">
- <xs:element
- maxOccurs="1"
- minOccurs="1"
- name="requires"
- type="requiresType"
- />
- </xs:choice>
- <xs:choice maxOccurs="1" minOccurs="1">
- <xs:element
- maxOccurs="1"
- minOccurs="1"
- name="dependent"
- type="requiresType"
- />
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
-</xs:schema>
+<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+ <!-- performance test suite schema -->
+ <xs:include schemaLocation="performance/controls-perf.xsd"/>
+
+ <xs:complexType name="configuration-dependencyType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="jvmargType">
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="line"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="javatestType">
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodnames"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="roctestType">
+ <xs:attribute
+ name="scripts"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="consoleconfig"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="wrconfig"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="webServerType">
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodnames"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="webservers"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="webserverstoexclude"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="tchtestType">
+ <xs:attribute
+ name="propsfile"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="basefile"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="baselogname"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="ant-exec-taskType">
+ <xs:sequence>
+ <xs:any
+ maxOccurs="unbounded"
+ minOccurs="0"
+ processContents="skip"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="successMessage"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="stfType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="processType">
+ <xs:choice>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="configuration-dependency"
+ type="configuration-dependencyType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute name="default" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="true"/>
+ <xs:enumeration value="false"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:element name="project">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="taskdef"
+ type="taskdefType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="1"
+ name="target"
+ type="targetType"
+ />
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="default"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ </xs:element>
+ <xs:complexType name="propertyType">
+ <xs:attribute name="name" use="optional"/>
+ <xs:attribute name="value" use="optional"/>
+ <xs:attribute name="file" use="optional"/>
+ <xs:attribute name="environment" use="optional"/>
+ </xs:complexType>
+ <xs:element name="property" type="propertyType"/>
+ <xs:complexType name="targetType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element name="test-suite" type="test-suiteType"/>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+
+ <xs:complexType name="taskdefType">
+ <xs:choice maxOccurs="unbounded" minOccurs="0">
+ <xs:element
+ maxOccurs="1"
+ name="classpath"
+ type="classpathType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="classname"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="resource"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="classpath"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="pathelement"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="file"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- Leave classpath open since it's the native ant construct -->
+ <xs:complexType name="classpathType">
+ <xs:sequence>
+ <xs:any
+ maxOccurs="unbounded"
+ minOccurs="0"
+ processContents="skip"
+ />
+ </xs:sequence>
+ </xs:complexType>
+
+ <!-- FIXME jbaker: Within a given buildfile, each "name" attribute of a test tag must be
+ unique -->
+ <xs:complexType name="testType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="utility"
+ type="utilityType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="1">
+ <xs:element
+ maxOccurs="1"
+ name="javatest"
+ type="javatestType"
+ />
+ <xs:element
+ maxOccurs="1"
+ name="roctest"
+ type="roctestType"
+ />
+ <xs:element
+ maxOccurs="1"
+ name="junit"
+ type="javatestType"
+ />
+ <xs:element
+ maxOccurs="1"
+ name="controlsperf"
+ type="controlsPerfType"
+ />
+ <xs:element name="wstest" type="webServerType"/>
+ <xs:element name="tch-diff-test" type="tchtestType"/>
+ <xs:element name="test-vehicle" type="test-vehicleType"/>
+ <xs:element name="http-url-connection" type="http-url-connectionType"/>
+ <xs:element name="servlettask" type="servlettaskType"/>
+ <xs:element name="servletwritabletask" type="servletwritabletaskType"/>
+ <xs:element name="webappstandardtask" type="webappstandardtaskType"/>
+ <xs:element name="cmdline" type="cmdlineType"/>
+ <xs:element name="stf" type="stfType"/>
+ <xs:element name="ant-task" type="ant-exec-taskType"/>
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="utility"
+ type="utilityType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="requiresRun"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresSuccess"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="testunit"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="timeoutSeconds"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- FIXME: it is not possible to require a choice of attributes, so value
+ and valueProp are made optional.
+ In order to fix this, the data model would have to be changed -->
+
+ <!-- FIXME: For test-parameter tag, make sure that the value/valueProp
+ attributes, if set, do not start with "$" -->
+ <xs:complexType name="test-parameterType">
+ <xs:choice maxOccurs="unbounded" minOccurs="0">
+ <xs:element name="element" type="elementType"/>
+ <xs:element name="value" type="xs:string"/>
+ </xs:choice>
+ <xs:attribute name="name" use="required"/>
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="valueProp"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="valueprop"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="elementType">
+ <xs:attribute
+ name="valueprop"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-unit-modifierType">
+ <xs:sequence>
+ <xs:element
+ maxOccurs="unbounded"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:sequence>
+ <xs:attribute name="value" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="testUnitChangeType">
+ <xs:attribute name="value" use="required"/>
+ </xs:complexType>
+ <xs:complexType name="test-sequentialType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element name="test-parallel" type="test-parallelType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="test-parallelType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element name="test-unit-modifier" type="test-unit-modifierType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element name="test-sequential" type="test-sequentialType"/>
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="test-suite-callType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="property"
+ type="propertyType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-unit-override"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="test-name-modifier"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="append-to-test-unit"
+ type="testUnitChangeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="append-to-test-name"
+ type="testUnitChangeType"
+ />
+ </xs:choice>
+ <xs:attribute name="antfile" use="optional"/>
+ <xs:attribute name="testfile" use="optional"/>
+ <xs:attribute name="target" use="optional"/>
+ </xs:complexType>
+ <xs:complexType name="test-metadataType">
+ <xs:all>
+ <xs:element
+ minOccurs="0"
+ name="usage"
+ type="xs:string"
+ />
+ <xs:element
+ minOccurs="0"
+ name="description"
+ type="xs:string"
+ />
+ <xs:element
+ minOccurs="0"
+ name="testLevel"
+ type="testLevelType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="owner"
+ type="ownerType"
+ />
+ -->
+ <xs:element
+ minOccurs="0"
+ name="freq"
+ type="frequencyType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="webapps"
+ type="webappsType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="misc"
+ type="miscType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="serverMode"
+ type="serverModeType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="db"
+ type="dbType"
+ />
+ -->
+ <xs:element
+ minOccurs="0"
+ name="status"
+ type="statusType"
+ />
+ <!--
+ REMOVED
+ <xs:element
+ minOccurs="0"
+ name="conversation"
+ type="conversationType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="domain"
+ type="domainType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="scenario"
+ type="scenarioType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="knownFailure"
+ type="knownFailureType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="CRList"
+ type="CRListType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="SSLRestriction"
+ type="SSLRestrictionType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="condition"
+ type="conditionalType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="OSRestriction"
+ type="OSRestrictionType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="os"
+ type="osType"
+ />
+
+ <xs:element
+ minOccurs="0"
+ name="JavaRestriction"
+ type="JavaRestrictionType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="clientTypes"
+ type="clientTypesType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="securityType"
+ type="securityTypeType"
+ />
+ -->
+ </xs:all>
+ </xs:complexType>
+ <xs:complexType name="testLevelType">
+ <xs:attribute name="level" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="1"/>
+ <xs:maxInclusive value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="levels" use="optional"/>
+ </xs:complexType>
+ <xs:complexType name="knownFailureType">
+ <xs:attribute name="value" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="scenarioType">
+ <xs:attribute
+ name="ssl"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclientStrict"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="jdkClient"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+
+ <!-- FIXME: not doing full validation on the contents of the "ids" tag
+ this would only be possble if we followed the convention for list type, which
+ is whitespace, not comma, separated items -->
+ <xs:complexType name="CRListType">
+ <xs:attribute
+ name="ids"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+
+ <xs:simpleType name="ownerType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <xs:simpleType name="miscType">
+ <xs:restriction base="xs:string"/>
+ </xs:simpleType>
+
+ <!-- all this just to create a list type?-->
+ <!-- how can i make sure there are no duplicates in the enum? -->
+ <xs:simpleType name="frequencyOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="drt"/>
+ <xs:enumeration value="bvt"/>
+ <xs:enumeration value="daily"/>
+ <xs:enumeration value="weekly"/>
+ <!-- the following values are used for xbean tests -->
+ <xs:enumeration value="checkin"/>
+ <xs:enumeration value="detailed"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="frequencyList">
+ <xs:list itemType="frequencyOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="frequencyType">
+ <xs:restriction base="frequencyList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- end frequency definition -->
+
+ <xs:simpleType name="webappsOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="controlsWeb"/>
+ <xs:enumeration value="jmsControlWeb"/>
+ <xs:enumeration value="testWeb"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="webappsList">
+ <xs:list itemType="webappsOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="webappsType">
+ <xs:restriction base="webappsList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="serverModeOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="prod"/>
+ <xs:enumeration value="dev"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="serverModeList">
+ <xs:list itemType="serverModeOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="serverModeType">
+ <xs:restriction base="serverModeList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="2"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="dbOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="all"/>
+ <xs:enumeration value="none"/>
+ <xs:enumeration value="oracle8"/>
+ <xs:enumeration value="oracle9"/>
+ <xs:enumeration value="db2"/>
+ <xs:enumeration value="mssql"/>
+ <xs:enumeration value="pointbase"/>
+ <xs:enumeration value="sybase"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="dbList">
+ <xs:list itemType="dbOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="dbType">
+ <xs:restriction base="dbList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="7"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="statusOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="active"/>
+ <xs:enumeration value="inactive"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="statusList">
+ <xs:list itemType="statusOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="statusType">
+ <xs:restriction base="statusList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="2"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="conversationOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="db"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="conversationList">
+ <xs:list itemType="conversationOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="conversationType">
+ <xs:restriction base="conversationList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <!--
+ REMOVED
+ <xs:simpleType name="domainOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="knexbvt"/>
+ <xs:enumeration value="securitybvt"/>
+ <xs:enumeration value="transecuritybvt"/>
+ <xs:enumeration value="runtime9QADomain"/>
+ <xs:enumeration value="samplesDomain"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="domainList">
+ <xs:list itemType="domainOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="domainType">
+ <xs:restriction base="domainList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ -->
+
+ <xs:simpleType name="osOptions">
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="win"/>
+ <xs:enumeration value="sol"/>
+ <xs:enumeration value="lin"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="osList">
+ <xs:list itemType="osOptions"/>
+ </xs:simpleType>
+ <xs:simpleType name="osType">
+ <xs:restriction base="osList">
+ <xs:minLength value="0"/>
+ <xs:maxLength value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:complexType name="clientTypesType">
+ <xs:attribute
+ name="jdkclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclient"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="thinclientstrict"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="securityTypeType">
+ <xs:attribute
+ name="security61"
+ type="xs:boolean"
+ use="optional"
+ />
+ <xs:attribute
+ name="security70"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="SSLRestrictionType">
+ <xs:attribute
+ name="value"
+ type="xs:boolean"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="OSRestrictionType">
+ <xs:attribute
+ name="names"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="excluded"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="JavaRestrictionType">
+ <xs:attribute
+ name="versions"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="excluded"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-vehicleType">
+ <xs:sequence>
+ <xs:element name="javatest" type="javatestType"/>
+ </xs:sequence>
+ <xs:attribute
+ name="type"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="process"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="test-blockType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-sequential"
+ type="test-sequentialType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="count"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresRun"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="requiresSuccess"
+ type="xs:string"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="independent-test-groupType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="process"
+ type="processType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-parameter"
+ type="test-parameterType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-metadata"
+ type="test-metadataType"
+ />
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ minOccurs="0"
+ name="test-parallel"
+ type="test-parallelType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="test-sequential"
+ type="test-sequentialType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-unit-modifier"
+ type="test-unit-modifierType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-suite-call"
+ type="test-suite-callType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="test-block"
+ type="test-blockType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="independent-test-group"
+ type="independent-test-groupType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="test"
+ type="testType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="if"
+ type="ifType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ name="requires-dependent"
+ type="requiresDependentType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="custom-task"
+ type="anythingType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="optional"
+ />
+ <xs:attribute
+ name="rerunFailedTestOnly"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="utilityType">
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="arg"
+ type="argType"
+ />
+ </xs:choice>
+ </xs:sequence>
+ <xs:attribute
+ name="classname"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="methodname"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="argType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="http-url-connectionType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="miscrequestheader"
+ type="miscrequestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedstring"
+ type="expectedstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedresponsecode"
+ type="expectedresponsecodeType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="expectedheader"
+ type="expectedheaderType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie" type="xs:string"/>
+ <xs:attribute name="secure" type="xs:string"/>
+ <xs:attribute name="sendSSLCookie" type="xs:string"/>
+ <xs:attribute name="protocol" type="xs:string"/>
+ <xs:attribute name="clearcookies" type="xs:string"/>
+ </xs:complexType>
+ <xs:complexType name="servlettaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testmethod"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="secure">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="sendSSLCookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="protocol" type="xs:string"/>
+ <xs:attribute name="clearcookies">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="servletwritabletaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestheader"
+ type="requestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="miscrequestheader"
+ type="miscrequestheaderType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="requestparam"
+ type="requestparamType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedstring"
+ type="expectedstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedresponsecode"
+ type="xs:integer"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="expectedheader"
+ type="expectedheaderType"
+ />
+ <xs:element
+ minOccurs="0"
+ name="authenticate"
+ type="authenticateType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="target"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="testmethod"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute name="connectionmode" type="xs:string"/>
+ <xs:attribute name="followredirect" type="xs:string"/>
+ <xs:attribute name="sendcookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="secure">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="sendSSLCookie">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="protocol" type="xs:double"/>
+ <xs:attribute name="clearcookies">
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="true"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:complexType name="webappstandardtaskType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="1"
+ name="testmethod"
+ type="testmethodType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="testclass"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
+ <xs:complexType name="cmdlineType">
+ <xs:choice maxOccurs="unbounded">
+ <xs:element
+ maxOccurs="1"
+ minOccurs="1"
+ name="cmd"
+ type="cmdType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="cmdtoken"
+ type="cmdtokenType"
+ />
+ <xs:element
+ maxOccurs="unbounded"
+ minOccurs="0"
+ name="enventry"
+ type="enventryType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedexitcode"
+ type="expectedexitcodeType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedoutputstring"
+ type="expectedoutputstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectederrorstring"
+ type="expectederrorstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="expectedoutputerrorstring"
+ type="expectedoutputerrorstringType"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="timeout"
+ type="xs:integer"
+ />
+ <xs:element
+ maxOccurs="1"
+ minOccurs="0"
+ name="workingdir"
+ type="workingdirType"
+ />
+ </xs:choice>
+ <xs:attribute
+ name="checkmode"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="echo"
+ type="xs:boolean"
+ use="optional"
+ />
+ </xs:complexType>
+ <xs:complexType name="cmdType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="cmdtokenType">
+ <xs:simpleContent>
+ <xs:extension base="xs:string"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ <xs:complexType name="enventryType">
+ <xs:attribute
+ name="name"
+ type="xs:string"
+ use="required"
+ />
+ <xs:attribute
+ name="value"
+ type="xs:string"
+ use="required"
+ />
+ </xs:complexType>
[... 390 lines stripped ...]