annotate test-schema.xsd @ 604:96cb6735c9c2

Temporary fix of #1580. Updated schema in preparation of #1661, #1469 & #1649
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Thu, 10 Mar 2016 16:42:16 +0000
parents 640ffb822da1
children 716c05000a6e
rev   line source
n@452 1 <?xml version="1.0"?>
n@452 2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
n@452 3 <!-- define simple elements-->
n@452 4 <xs:element name="statement" type="xs:string"/>
n@452 5 <xs:element name="metricenable" type="xs:string"/>
n@452 6 <xs:element name="title" type="xs:string"/>
n@452 7
n@452 8 <!-- define simple attributes-->
n@452 9 <xs:attribute name="id" type="xs:ID"/>
n@452 10 <xs:attribute name="mandatory" type="xs:boolean"/>
n@452 11 <xs:attribute name="name" type="xs:string"/>
n@452 12
n@452 13 <!-- define complex elements-->
n@452 14 <xs:element name="waet">
n@452 15 <xs:complexType>
n@452 16 <xs:sequence>
n@452 17 <xs:element ref="setup" minOccurs="1" maxOccurs="1"/>
n@452 18 <xs:element ref="page" minOccurs="1" maxOccurs="unbounded"/>
n@452 19 </xs:sequence>
n@452 20 </xs:complexType>
n@452 21 </xs:element>
n@452 22
n@452 23 <xs:element name="setup">
n@452 24 <xs:complexType>
n@452 25 <xs:sequence>
n@604 26 <xs:element name="exitText" type="xs:string" minOccurs="0" maxOccurs="1"/>
n@471 27 <xs:element ref="survey" minOccurs="0" maxOccurs="2"/>
n@452 28 <xs:element ref="metric" maxOccurs="1"/>
n@452 29 <xs:element ref="interface" maxOccurs="1"/>
n@452 30 </xs:sequence>
n@452 31 <xs:attribute name="interface" type="xs:string" use="required"/>
n@503 32 <xs:attribute name="projectReturn" type="xs:string" use="required"/>
n@453 33 <xs:attribute name="randomiseOrder" type="xs:boolean" default="false"/>
n@453 34 <xs:attribute name="testPages" type="xs:nonNegativeInteger" default="0"/>
n@452 35 <xs:attribute name="loudness" type="xs:nonPositiveInteger" use="optional"/>
n@453 36 <xs:attribute name="sampleRate" type="xs:positiveInteger" use="optional"/>
n@604 37 <xs:attribute name="calibration" type="xs:boolean" default="false"/>
n@452 38 </xs:complexType>
n@452 39 </xs:element>
n@452 40
n@452 41 <xs:element name="page">
n@452 42 <xs:complexType>
n@452 43 <xs:sequence>
n@452 44 <xs:element ref="title" minOccurs="0" maxOccurs="1"/>
n@452 45 <xs:element name="commentboxprefix" type="xs:string" minOccurs="0" maxOccurs="1"/>
n@452 46 <xs:element ref="interface" minOccurs="1" maxOccurs="unbounded"/>
n@452 47 <xs:element ref="audioelement" minOccurs="1" maxOccurs="unbounded"/>
n@452 48 <xs:element ref="commentquestion" minOccurs="0" maxOccurs="unbounded"/>
n@471 49 <xs:element ref="survey" minOccurs="0" maxOccurs="2"/>
n@452 50 </xs:sequence>
n@452 51 <xs:attribute ref="id" use="required"/>
n@545 52 <xs:attribute name="hostURL" type="xs:anyURI" default=""/>
n@453 53 <xs:attribute name="randomiseOrder" type="xs:boolean" default="false"/>
n@453 54 <xs:attribute name="repeatCount" type="xs:nonNegativeInteger" default="0"/>
n@452 55 <xs:attribute name="loop" type="xs:boolean" default="false"/>
n@604 56 <xs:attribute name="synchronous" type="xs:boolean" default="false"/>
n@453 57 <xs:attribute name="showElementComments" type="xs:boolean" default="false"/>
n@452 58 <xs:attribute name="loudness" type="xs:nonPositiveInteger" use="optional"/>
n@603 59 <xs:attribute name="label" use="optional" default="default">
n@603 60 <xs:simpleType>
n@603 61 <xs:restriction base="xs:string">
n@603 62 <xs:enumeration value="default"/>
n@603 63 <xs:enumeration value="none"/>
n@603 64 <xs:enumeration value="number"/>
n@603 65 <xs:enumeration value="letter"/>
n@603 66 <xs:enumeration value="capital"/>
n@603 67 </xs:restriction>
n@603 68 </xs:simpleType>
n@603 69 </xs:attribute>
n@452 70 </xs:complexType>
n@452 71 </xs:element>
n@452 72
n@452 73 <xs:element name="metric">
n@452 74 <xs:complexType>
n@452 75 <xs:sequence>
n@452 76 <xs:element name="metricenable" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
n@452 77 </xs:sequence>
n@452 78 </xs:complexType>
n@452 79 </xs:element>
n@452 80
n@452 81 <xs:element name="interface">
n@452 82 <xs:complexType>
n@452 83 <xs:sequence>
n@452 84 <xs:element ref="title" minOccurs="0" maxOccurs="1"/>
n@452 85 <xs:element name="interfaceoption" minOccurs="0" maxOccurs="unbounded">
n@452 86 <xs:complexType>
n@452 87 <xs:attribute name="type" use="required">
n@452 88 <xs:simpleType>
n@452 89 <xs:restriction base="xs:string">
n@452 90 <xs:enumeration value="check"/>
n@452 91 <xs:enumeration value="show"/>
n@452 92 <xs:enumeration value="option"/>
n@452 93 </xs:restriction>
n@452 94 </xs:simpleType>
n@452 95 </xs:attribute>
n@452 96 <xs:attribute ref="name" use="required"/>
n@506 97 <xs:attribute name="min" type="xs:decimal" use="optional"/>
n@506 98 <xs:attribute name="max" type="xs:decimal" use="optional"/>
n@452 99 </xs:complexType>
n@452 100 </xs:element>
n@452 101 <xs:element name="scales" minOccurs="0" maxOccurs="1">
n@452 102 <xs:complexType>
n@452 103 <xs:sequence>
n@452 104 <xs:element name="scalelabel" minOccurs="0" maxOccurs="unbounded">
n@452 105 <xs:complexType>
n@452 106 <xs:simpleContent>
n@452 107 <xs:extension base="xs:string">
n@452 108 <xs:attribute name="position" use="required">
n@452 109 <xs:simpleType>
n@452 110 <xs:restriction base="xs:nonNegativeInteger">
n@452 111 <xs:minInclusive value="0"/>
n@452 112 <xs:maxInclusive value="100"/>
n@452 113 </xs:restriction>
n@452 114 </xs:simpleType>
n@452 115 </xs:attribute>
n@452 116 </xs:extension>
n@452 117 </xs:simpleContent>
n@452 118 </xs:complexType>
n@452 119 </xs:element>
n@452 120 </xs:sequence>
n@452 121 </xs:complexType>
n@452 122 </xs:element>
n@452 123 </xs:sequence>
n@452 124 <xs:attribute ref="name" use="optional"/>
n@452 125 </xs:complexType>
n@452 126 </xs:element>
n@452 127
n@452 128 <xs:element name="audioelement">
n@452 129 <xs:complexType>
n@452 130 <xs:attribute ref="id" use="required"/>
n@452 131 <xs:attribute name="url" type="xs:anyURI" use="required"/>
n@453 132 <xs:attribute name="gain" type="xs:decimal" default="0"/>
n@588 133 <xs:attribute ref="name"/>
n@503 134 <xs:attribute name="type" default="normal">
n@452 135 <xs:simpleType>
n@452 136 <xs:restriction base="xs:string">
n@452 137 <xs:enumeration value="normal"/>
n@452 138 <xs:enumeration value="anchor"/>
n@452 139 <xs:enumeration value="reference"/>
n@452 140 <xs:enumeration value="outside-reference"/>
n@452 141 </xs:restriction>
n@452 142 </xs:simpleType>
n@452 143 </xs:attribute>
n@452 144 <xs:attribute name="marker" use="optional">
n@452 145 <xs:simpleType>
n@452 146 <xs:restriction base="xs:nonNegativeInteger">
n@452 147 <xs:minInclusive value="0"/>
n@452 148 <xs:maxInclusive value="100"/>
n@452 149 </xs:restriction>
n@452 150 </xs:simpleType>
n@452 151 </xs:attribute>
n@452 152 <xs:attribute name="loudness" type="xs:nonPositiveInteger" use="optional"/>
n@452 153 </xs:complexType>
n@452 154 </xs:element>
n@452 155
n@452 156 <xs:element name="commentquestion">
n@452 157 <xs:complexType>
n@452 158 <xs:sequence>
n@452 159 <xs:element ref="statement" minOccurs="0" maxOccurs="1"/>
n@452 160 <xs:element name="option" minOccurs="0" maxOccurs="unbounded">
n@452 161 <xs:complexType>
n@452 162 <xs:simpleContent>
n@452 163 <xs:extension base="xs:string">
n@452 164 <xs:attribute ref="name"/>
n@452 165 </xs:extension>
n@452 166 </xs:simpleContent>
n@452 167 </xs:complexType>
n@452 168 </xs:element>
n@452 169 </xs:sequence>
n@592 170 <xs:attribute ref="id" use="optional"/>
n@592 171 <xs:attribute ref="name" use="optional"/>
n@452 172 <xs:attribute name="type" default="question">
n@452 173 <xs:simpleType>
n@452 174 <xs:restriction base="xs:string">
n@452 175 <xs:enumeration value="question"/>
n@452 176 <xs:enumeration value="radio"/>
n@452 177 <xs:enumeration value="checkbox"/>
n@452 178 </xs:restriction>
n@452 179 </xs:simpleType>
n@452 180 </xs:attribute>
n@452 181 </xs:complexType>
n@452 182 </xs:element>
n@452 183
n@452 184 <xs:element name="survey">
n@452 185 <xs:complexType>
n@452 186 <xs:sequence>
n@525 187 <xs:element name="surveyentry" minOccurs="0" maxOccurs="unbounded">
n@452 188 <xs:complexType>
n@452 189 <xs:sequence>
n@452 190 <xs:element ref="statement" minOccurs="1" maxOccurs="1"/>
n@452 191 <xs:element name="option" minOccurs="0" maxOccurs="unbounded">
n@452 192 <xs:complexType>
n@452 193 <xs:simpleContent>
n@452 194 <xs:extension base="xs:string">
n@452 195 <xs:attribute ref="name"/>
n@452 196 </xs:extension>
n@452 197 </xs:simpleContent>
n@452 198 </xs:complexType>
n@452 199 </xs:element>
n@452 200 </xs:sequence>
n@594 201 <xs:attribute ref="id" use="required"/>
n@594 202 <xs:attribute ref="name"/>
n@452 203 <xs:attribute ref="mandatory"/>
n@453 204 <xs:attribute name="min" type="xs:decimal"/>
n@453 205 <xs:attribute name="max" type="xs:decimal"/>
n@452 206 <xs:attribute name="type" use="required">
n@452 207 <xs:simpleType>
n@452 208 <xs:restriction base="xs:string">
n@452 209 <xs:enumeration value="statement"/>
n@452 210 <xs:enumeration value="question"/>
n@452 211 <xs:enumeration value="number"/>
n@452 212 <xs:enumeration value="radio"/>
n@452 213 <xs:enumeration value="checkbox"/>
n@452 214 </xs:restriction>
n@452 215 </xs:simpleType>
n@452 216 </xs:attribute>
n@452 217 <xs:attribute name="boxsize" default="normal">
n@452 218 <xs:simpleType>
n@452 219 <xs:restriction base="xs:string">
n@452 220 <xs:enumeration value="normal"/>
n@452 221 <xs:enumeration value="large"/>
n@452 222 <xs:enumeration value="small"/>
n@452 223 <xs:enumeration value="huge"/>
n@452 224 </xs:restriction>
n@452 225 </xs:simpleType>
n@452 226 </xs:attribute>
n@452 227 </xs:complexType>
n@452 228 </xs:element>
n@452 229 </xs:sequence>
n@452 230 <xs:attribute name="location">
n@452 231 <xs:simpleType>
n@452 232 <xs:restriction base="xs:string">
n@452 233 <xs:enumeration value="before"/>
n@452 234 <xs:enumeration value="pre"/>
n@452 235 <xs:enumeration value="after"/>
n@452 236 <xs:enumeration value="post"/>
n@452 237 </xs:restriction>
n@452 238 </xs:simpleType>
n@452 239 </xs:attribute>
n@452 240 </xs:complexType>
n@452 241 </xs:element>
n@452 242
n@452 243 </xs:schema>