2 <!-- $Id: testSuite.rng,v 1.4 2001/09/19 23:41:24 Bear Exp $ -->
3 <grammar xmlns=
"http://relaxng.org/ns/structure/1.0" ns=
"">
5 target namespace is intentionally set to "" so as not to interfere with
10 <ref name=
"testSuite"/>
13 <define name=
"testSuite">
14 <!-- a test suite represents a set of tests -->
15 <element name=
"testSuite">
19 <!-- testSuites can be nested -->
20 <ref name=
"testSuite"/>
21 <!-- a single test case -->
22 <ref name=
"testCase"/>
24 resources are by itself a RELAX NG pattern, and it can be
25 referenced from other patterns through <externalRef/>
26 the scope of the resources are global.
28 <element name=
"resource">
29 <attribute name=
"href">
30 <data type=
"token" key=
"moduleName" />
32 <ref name=
"anyElement"/>
39 <define name=
"testCase">
40 <element name=
"testCase">
44 <!-- invalid patterns -->
46 <element name=
"invalidPattern">
47 <ref name=
"anyElement"/>
51 <!-- a valid pattern and test cases -->
53 <element name=
"validPattern">
54 <!-- the compatibility of this schema with various features -->
56 <attribute name=
"annotation">
61 <attribute name=
"ididref">
66 <attribute name=
"defaultValue">
71 <!-- pattern itself -->
72 <externalRef href=
"relaxng.rng"/>
77 <!-- valid test cases -->
78 <element name=
"valid">
79 <!-- the soundness of this document -->
81 <attribute name=
"ididref">
85 <ref name=
"anyElement"/>
87 <!-- invalid test cases -->
88 <element name=
"invalid">
89 <ref name=
"anyElement"/>
109 <ref name=
"anyElement"/>
119 <define name=
"anyElement">
127 <!-- header is a place holder for meta-information -->
128 <define name=
"header">
130 <element name=
"header">
131 <!-- this schema does not check the contents of headers -->
133 <ref name=
"anyElement"/>