<?xml encoding="UTF-8"?>
<!ELEMENT TestSuite (
	Statistic?,
	Model*,
	Coverage*,
	Constraint*,
	Directive?,
        TestSuiteFiles?,
	TestCase*,
	Statistic?)>
<!ATTLIST TestSuite
	suiteGenerator CDATA "GOTCHA Release 2.5"
	date CDATA #REQUIRED
	master CDATA #IMPLIED>
<!ELEMENT Model (StateVar*,RuleDesc*)>
<!ELEMENT StateVar EMPTY>
<!ATTLIST StateVar
	name CDATA #REQUIRED
	range CDATA #REQUIRED
	coverage (false|true) "false">
<!ELEMENT RuleDesc EMPTY>
<!ATTLIST RuleDesc
	name CDATA #REQUIRED>
<!ELEMENT Coverage (#PCDATA)*>
<!ATTLIST Coverage
	cid ID #IMPLIED
	type CDATA #IMPLIED
	name CDATA #IMPLIED
	parms CDATA #IMPLIED> 
<!ELEMENT Constraint (#PCDATA)*>
<!ATTLIST Constraint
	tcid ID #IMPLIED	
	type CDATA #IMPLIED>
<!ELEMENT Directive (#PCDATA)*>
<!ELEMENT Statistic (#PCDATA)*>
<!ATTLIST Statistic
	states CDATA #IMPLIED 
	rules CDATA #IMPLIED 
	coverageTasks CDATA #IMPLIED 
	coverageTasksNC CDATA #IMPLIED 
	coverageTasksNearCovered CDATA #IMPLIED 
	testcases CDATA #IMPLIED 
	testLengthAverage CDATA #IMPLIED
	longestTestCase IDREF #IMPLIED
	shortestTestCase IDREF #IMPLIED> 
<!ELEMENT TestSuiteFiles (File*)>
<!ELEMENT File EMPTY>
<!ATTLIST File
	path CDATA #REQUIRED
	firstTestCase CDATA #IMPLIED
	lastTestCase CDATA #IMPLIED>
<!ELEMENT TestCase (CoverageCount*,(Transition)+)>
<!ATTLIST TestCase
	tid ID #IMPLIED>
<!ELEMENT CoverageCount EMPTY>
<!ATTLIST CoverageCount
	cid IDREF #IMPLIED
	coverageTasks CDATA  #IMPLIED
	newCoverageTasks CDATA  #IMPLIED>
<!ELEMENT Transition (Rule+,State+)+>
<!ATTLIST Transition
	trid CDATA #IMPLIED>
<!ELEMENT Rule (MethodPattern+,DataInputPattern+)>
<!ATTLIST Rule
	rid CDATA #IMPLIED>
<!ELEMENT MethodPattern (#PCDATA)*>
<!ELEMENT DataInputPattern (#PCDATA)*>
<!ELEMENT State (#PCDATA)*> 
<!ATTLIST State
	sid CDATA #IMPLIED>
