1 <?xml version=
"1.0" encoding=
"utf-8" ?>
2 <xs:schema xmlns:
xs=
"http://www.w3.org/2001/XMLSchema">
4 <xs:element name=
"ui" type=
"UI"/>
6 <xs:complexType name=
"UI">
8 <xs:element name=
"author" type=
"xs:string" minOccurs=
"0" />
9 <xs:element name=
"comment" type=
"xs:string" minOccurs=
"0" />
10 <xs:element name=
"exportmacro" type=
"xs:string" minOccurs=
"0" />
11 <xs:element name=
"class" type=
"xs:string" />
12 <xs:element name=
"widget" type=
"Widget" />
13 <xs:element name=
"layoutdefault" type=
"LayoutDefault" minOccurs=
"0" />
14 <xs:element name=
"layoutfunction" type=
"LayoutFunction" minOccurs=
"0" />
15 <xs:element name=
"pixmapfunction" type=
"xs:string" minOccurs=
"0" />
16 <xs:element name=
"customwidgets" type=
"CustomWidgets" minOccurs=
"0" />
17 <xs:element name=
"tabstops" type=
"TabStops" minOccurs=
"0" />
18 <xs:element name=
"images" type=
"Images" minOccurs=
"0" />
19 <xs:element name=
"includes" type=
"Includes" minOccurs=
"0" />
20 <xs:element name=
"resources" type=
"Resources" minOccurs=
"0" />
21 <xs:element name=
"connections" type=
"Connections" minOccurs=
"0" />
22 <xs:element name=
"designerdata" type=
"DesignerData" minOccurs=
"0" />
23 <xs:element name=
"slots" type=
"Slots" minOccurs=
"0" />
24 <xs:element name=
"buttongroups" type=
"ButtonGroups" minOccurs=
"0" />
26 <xs:attribute name=
"version" type=
"xs:string" use=
"required" />
27 <xs:attribute name=
"language" type=
"xs:string" />
28 <xs:attribute name=
"displayname" type=
"xs:string" />
29 <!-- Legacy attribute generated by uic3 -->
30 <xs:attribute name=
"stdsetdef" type=
"xs:integer" />
31 <!-- Legacy attribute generated by the VS integration -->
32 <xs:attribute name=
"stdSetDef" type=
"xs:integer" />
35 <!-- include begin -->
36 <xs:complexType name=
"Includes">
38 <xs:element name=
"include" type=
"Include" maxOccurs=
"unbounded" />
42 <xs:complexType name=
"Include" mixed=
"true" >
43 <xs:attribute name=
"location" type=
"xs:string" use=
"required" />
44 <xs:attribute name=
"impldecl" type=
"xs:string" />
48 <!-- resource begin -->
49 <xs:complexType name=
"Resources">
51 <xs:element name=
"include" type=
"Resource" minOccurs=
"0" maxOccurs=
"unbounded" />
53 <xs:attribute name=
"name" type=
"xs:string" />
56 <xs:complexType name=
"Resource">
57 <xs:attribute name=
"location" type=
"xs:string" use=
"required" />
61 <!-- actions begin -->
62 <xs:complexType name=
"ActionGroup">
63 <xs:sequence maxOccurs=
"unbounded">
64 <xs:element name=
"action" type=
"Action" minOccurs=
"0" maxOccurs=
"unbounded" />
65 <xs:element name=
"actiongroup" type=
"ActionGroup" minOccurs=
"0" maxOccurs=
"unbounded" />
66 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
67 <xs:element name=
"attribute" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
69 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
72 <xs:complexType name=
"Action">
73 <xs:sequence maxOccurs=
"unbounded" >
74 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
75 <xs:element name=
"attribute" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
77 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
78 <xs:attribute name=
"menu" type=
"xs:string" />
81 <xs:complexType name=
"ActionRef">
82 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
86 <!-- button groups begin -->
87 <xs:complexType name=
"ButtonGroup">
88 <xs:sequence maxOccurs=
"unbounded">
89 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
90 <xs:element name=
"attribute" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
92 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
95 <xs:complexType name=
"ButtonGroups">
97 <xs:element name=
"buttongroup" type=
"ButtonGroup" maxOccurs=
"unbounded" />
100 <!-- button groups end -->
102 <!-- images begin -->
103 <xs:complexType name=
"Images">
105 <xs:element name=
"image" type=
"Image" maxOccurs=
"unbounded" />
109 <xs:complexType name=
"Image">
111 <xs:element name=
"data" type=
"ImageData" />
113 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
116 <xs:complexType name=
"ImageData" mixed=
"true" >
117 <xs:attribute name=
"format" type=
"xs:string" use=
"required" />
118 <xs:attribute name=
"length" type=
"xs:integer" use=
"required" />
122 <!-- custom widget support begin -->
123 <xs:complexType name=
"CustomWidgets">
125 <xs:element name=
"customwidget" type=
"CustomWidget" maxOccurs=
"unbounded" />
129 <xs:complexType name=
"Header" mixed=
"true" >
130 <xs:attribute name=
"location" type=
"xs:string" /> <!-- local or global -->
133 <xs:complexType name=
"CustomWidget">
135 <xs:element name=
"class" type=
"xs:string" />
136 <xs:element name=
"extends" type=
"xs:string" />
137 <xs:element name=
"header" type=
"Header" />
138 <xs:element name=
"sizehint" type=
"Size" minOccurs=
"0" />
139 <xs:element name=
"addpagemethod" type=
"xs:string" minOccurs=
"0" />
140 <xs:element name=
"container" type=
"xs:integer" minOccurs=
"0" />
141 <xs:element name=
"sizepolicy" type=
"SizePolicyData" minOccurs=
"0" />
142 <xs:element name=
"pixmap" type=
"xs:string" minOccurs=
"0" />
143 <xs:element name=
"script" type=
"Script" minOccurs=
"0" />
144 <xs:element name=
"properties" type=
"Properties" minOccurs=
"0" />
145 <xs:element name=
"slots" type=
"Slots" minOccurs=
"0" />
146 <xs:element name=
"propertyspecifications" type=
"PropertySpecifications" minOccurs=
"0" />
150 <xs:complexType name=
"Properties">
152 <xs:element name=
"property" type=
"PropertyData" maxOccurs=
"unbounded" />
156 <xs:complexType name=
"PropertyData">
157 <xs:attribute name=
"type" type=
"xs:string" use=
"required" />
160 <xs:complexType name=
"SizePolicyData">
162 <xs:element name=
"hordata" type=
"xs:integer" />
163 <xs:element name=
"verdata" type=
"xs:integer" />
167 <!-- custom widget support end -->
169 <xs:complexType name=
"LayoutDefault">
170 <xs:attribute name=
"spacing" type=
"xs:integer" use=
"required" />
171 <xs:attribute name=
"margin" type=
"xs:integer" use=
"required" />
174 <xs:complexType name=
"LayoutFunction">
175 <xs:attribute name=
"spacing" type=
"xs:string" use=
"required" />
176 <xs:attribute name=
"margin" type=
"xs:string" use=
"required" />
179 <xs:complexType name=
"TabStops">
181 <xs:element name=
"tabstop" type=
"xs:string" maxOccurs=
"unbounded" />
185 <xs:complexType name=
"Layout">
186 <xs:sequence maxOccurs=
"unbounded" >
187 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
188 <xs:element name=
"attribute" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
189 <xs:element name=
"item" type=
"LayoutItem" minOccurs=
"0" maxOccurs=
"unbounded" />
191 <xs:attribute name=
"class" type=
"xs:string" use=
"required" />
192 <xs:attribute name=
"name" type=
"xs:string" />
193 <xs:attribute name=
"stretch" type=
"xs:string" />
194 <xs:attribute name=
"rowstretch" type=
"xs:string" />
195 <xs:attribute name=
"columnstretch" type=
"xs:string" />
196 <xs:attribute name=
"rowminimumheight" type=
"xs:string" />
197 <xs:attribute name=
"columnminimumwidth" type=
"xs:string" />
200 <xs:complexType name=
"LayoutItem">
202 <xs:element name=
"widget" type=
"Widget" />
203 <xs:element name=
"layout" type=
"Layout" />
204 <xs:element name=
"spacer" type=
"Spacer" />
206 <xs:attribute name=
"row" type=
"xs:integer" />
207 <xs:attribute name=
"column" type=
"xs:integer" />
208 <xs:attribute name=
"rowspan" type=
"xs:integer" />
209 <xs:attribute name=
"colspan" type=
"xs:integer" />
212 <!-- item view begin -->
213 <xs:complexType name=
"Row">
215 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
219 <xs:complexType name=
"Column">
221 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
225 <xs:complexType name=
"Item">
226 <xs:sequence maxOccurs=
"unbounded">
227 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
228 <xs:element name=
"item" type=
"Item" minOccurs=
"0" maxOccurs=
"unbounded" />
230 <xs:attribute name=
"row" type=
"xs:integer" />
231 <xs:attribute name=
"column" type=
"xs:integer" />
233 <!-- item view end -->
235 <xs:complexType name=
"Widget">
236 <!-- Order does not matter (cannot use xs:all here
237 because of unbounded row, column, item -->
239 <xs:element name=
"class" type=
"xs:string" minOccurs=
"0" maxOccurs=
"unbounded" /> <!-- unbounded kept for compatibility reasons -->
240 <xs:element name=
"property" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
241 <xs:element name=
"script" type=
"Script" minOccurs=
"0" maxOccurs=
"unbounded" /> <!-- unbounded kept for compatibility reasons -->
242 <xs:element name=
"widgetdata" type=
"WidgetData" minOccurs=
"0" maxOccurs=
"unbounded" /> <!-- unbounded kept for compatibility reasons -->
243 <xs:element name=
"attribute" type=
"Property" minOccurs=
"0" maxOccurs=
"unbounded" />
244 <!-- item view begin -->
245 <xs:element name=
"row" type=
"Row" minOccurs=
"0" maxOccurs=
"unbounded" />
246 <xs:element name=
"column" type=
"Column" minOccurs=
"0" maxOccurs=
"unbounded" />
247 <xs:element name=
"item" type=
"Item" minOccurs=
"0" maxOccurs=
"unbounded" />
248 <!-- item view end -->
249 <xs:element name=
"layout" type=
"Layout" minOccurs=
"0" maxOccurs=
"unbounded" /> <!-- unbounded kept for compatibility reasons -->
250 <xs:element name=
"widget" type=
"Widget" minOccurs=
"0" maxOccurs=
"unbounded" />
251 <xs:element name=
"action" type=
"Action" minOccurs=
"0" maxOccurs=
"unbounded" />
252 <xs:element name=
"actiongroup" type=
"ActionGroup" minOccurs=
"0" maxOccurs=
"unbounded" />
253 <xs:element name=
"addaction" type=
"ActionRef" minOccurs=
"0" maxOccurs=
"unbounded" />
254 <xs:element name=
"zorder" type=
"xs:string" minOccurs=
"0" maxOccurs=
"unbounded" />
256 <xs:attribute name=
"class" type=
"xs:string" use=
"required" />
257 <xs:attribute name=
"name" type=
"xs:string" />
258 <xs:attribute name=
"native" type=
"xs:boolean" />
261 <xs:complexType name=
"Spacer">
263 <xs:element name=
"property" type=
"Property" maxOccurs=
"unbounded" />
265 <xs:attribute name=
"name" type=
"xs:string" />
268 <xs:complexType name=
"Color">
270 <xs:element name=
"red" type=
"xs:integer" />
271 <xs:element name=
"green" type=
"xs:integer" />
272 <xs:element name=
"blue" type=
"xs:integer" />
274 <xs:attribute name=
"alpha" type=
"xs:integer" />
277 <xs:complexType name=
"GradientStop">
279 <xs:element name=
"color" type=
"Color" />
281 <xs:attribute name=
"position" type=
"xs:double" use=
"required" />
284 <xs:complexType name=
"Gradient">
286 <xs:element name=
"gradientStop" type=
"GradientStop" maxOccurs=
"unbounded" />
288 <xs:attribute name=
"startx" type=
"xs:double" use=
"required" />
289 <xs:attribute name=
"starty" type=
"xs:double" use=
"required" />
290 <xs:attribute name=
"endx" type=
"xs:double" use=
"required" />
291 <xs:attribute name=
"endy" type=
"xs:double" use=
"required" />
292 <xs:attribute name=
"centralx" type=
"xs:double" use=
"required" />
293 <xs:attribute name=
"centraly" type=
"xs:double" use=
"required" />
294 <xs:attribute name=
"focalx" type=
"xs:double" use=
"required" />
295 <xs:attribute name=
"focaly" type=
"xs:double" use=
"required" />
296 <xs:attribute name=
"radius" type=
"xs:double" use=
"required" />
297 <xs:attribute name=
"angle" type=
"xs:double" use=
"required" />
298 <xs:attribute name=
"type" type=
"xs:string" use=
"required" />
299 <xs:attribute name=
"spread" type=
"xs:string" use=
"required" />
300 <xs:attribute name=
"coordinatemode" type=
"xs:string" use=
"required" />
303 <xs:complexType name=
"Brush">
305 <xs:element name=
"color" type=
"Color" />
306 <xs:element name=
"texture" type=
"Property" />
307 <xs:element name=
"gradient" type=
"Gradient" />
309 <xs:attribute name=
"brushstyle" type=
"xs:string" use=
"required" />
312 <xs:complexType name=
"ColorRole">
314 <xs:element name=
"brush" type=
"Brush" />
316 <xs:attribute name=
"role" type=
"xs:string" use=
"required" />
319 <xs:complexType name=
"ColorGroup">
320 <xs:sequence maxOccurs=
"unbounded">
321 <xs:element name=
"colorrole" type=
"ColorRole" minOccurs=
"0" maxOccurs=
"unbounded" />
322 <xs:element name=
"color" type=
"Color" minOccurs=
"0" maxOccurs=
"unbounded" />
326 <xs:complexType name=
"Palette">
328 <xs:element name=
"active" type=
"ColorGroup" />
329 <xs:element name=
"inactive" type=
"ColorGroup" />
330 <xs:element name=
"disabled" type=
"ColorGroup" />
334 <xs:complexType name=
"Font">
336 <xs:element name=
"family" type=
"xs:string" minOccurs=
"0" />
337 <xs:element name=
"pointsize" type=
"xs:integer" minOccurs=
"0" />
338 <xs:element name=
"weight" type=
"xs:integer" minOccurs=
"0" />
339 <xs:element name=
"italic" type=
"xs:boolean" minOccurs=
"0" />
340 <xs:element name=
"bold" type=
"xs:boolean" minOccurs=
"0" />
341 <xs:element name=
"underline" type=
"xs:boolean" minOccurs=
"0" />
342 <xs:element name=
"strikeout" type=
"xs:boolean" minOccurs=
"0" />
343 <xs:element name=
"antialiasing" type=
"xs:boolean" minOccurs=
"0" />
344 <xs:element name=
"stylestrategy" type=
"xs:string" minOccurs=
"0" />
345 <xs:element name=
"kerning" type=
"xs:boolean" minOccurs=
"0" />
349 <xs:complexType name=
"Point">
351 <xs:element name=
"x" type=
"xs:integer" />
352 <xs:element name=
"y" type=
"xs:integer" />
356 <xs:complexType name=
"Rect">
358 <xs:element name=
"x" type=
"xs:integer" />
359 <xs:element name=
"y" type=
"xs:integer" />
360 <xs:element name=
"width" type=
"xs:integer" />
361 <xs:element name=
"height" type=
"xs:integer" />
365 <xs:complexType name=
"Locale">
366 <xs:attribute name=
"language" type=
"xs:string" use=
"required" />
367 <xs:attribute name=
"country" type=
"xs:string" use=
"required" />
370 <xs:complexType name=
"SizePolicy">
372 <xs:element name=
"hsizetype" type=
"xs:integer" minOccurs=
"0" />
373 <xs:element name=
"vsizetype" type=
"xs:integer" minOccurs=
"0" />
374 <xs:element name=
"horstretch" type=
"xs:integer" />
375 <xs:element name=
"verstretch" type=
"xs:integer" />
377 <xs:attribute name=
"hsizetype" type=
"xs:string" />
378 <xs:attribute name=
"vsizetype" type=
"xs:string" />
381 <xs:complexType name=
"Size">
383 <xs:element name=
"width" type=
"xs:integer" />
384 <xs:element name=
"height" type=
"xs:integer" />
388 <xs:complexType name=
"Date">
390 <xs:element name=
"year" type=
"xs:integer" />
391 <xs:element name=
"month" type=
"xs:integer" />
392 <xs:element name=
"day" type=
"xs:integer" />
396 <xs:complexType name=
"Time">
398 <xs:element name=
"hour" type=
"xs:integer" />
399 <xs:element name=
"minute" type=
"xs:integer" />
400 <xs:element name=
"second" type=
"xs:integer" />
404 <xs:complexType name=
"DateTime">
406 <xs:element name=
"hour" type=
"xs:integer" />
407 <xs:element name=
"minute" type=
"xs:integer" />
408 <xs:element name=
"second" type=
"xs:integer" />
409 <xs:element name=
"year" type=
"xs:integer" />
410 <xs:element name=
"month" type=
"xs:integer" />
411 <xs:element name=
"day" type=
"xs:integer" />
415 <xs:complexType name=
"StringList">
417 <xs:element name=
"string" type=
"xs:string" maxOccurs=
"unbounded" />
421 <xs:complexType name=
"ResourcePixmap" mixed=
"true">
422 <xs:attribute name=
"resource" type=
"xs:string" />
423 <xs:attribute name=
"alias" type=
"xs:string" />
426 <xs:complexType name=
"ResourceIcon" mixed=
"true">
428 <xs:element name=
"normaloff" type=
"ResourcePixmap" minOccurs=
"0" />
429 <xs:element name=
"normalon" type=
"ResourcePixmap" minOccurs=
"0" />
430 <xs:element name=
"disabledoff" type=
"ResourcePixmap" minOccurs=
"0" />
431 <xs:element name=
"disabledon" type=
"ResourcePixmap" minOccurs=
"0" />
432 <xs:element name=
"activeoff" type=
"ResourcePixmap" minOccurs=
"0" />
433 <xs:element name=
"activeon" type=
"ResourcePixmap" minOccurs=
"0" />
434 <xs:element name=
"selectedoff" type=
"ResourcePixmap" minOccurs=
"0" />
435 <xs:element name=
"selectedon" type=
"ResourcePixmap" minOccurs=
"0" />
437 <xs:attribute name=
"resource" type=
"xs:string" /> <!-- pre 4.4 legacy support -->
440 <xs:complexType name=
"String" mixed=
"true">
441 <xs:attribute name=
"notr" type=
"xs:string" />
442 <xs:attribute name=
"comment" type=
"xs:string" />
443 <xs:attribute name=
"extracomment" type=
"xs:string" />
446 <xs:complexType name=
"PointF">
448 <xs:element name=
"x" type=
"xs:double" />
449 <xs:element name=
"y" type=
"xs:double" />
453 <xs:complexType name=
"RectF">
455 <xs:element name=
"x" type=
"xs:double" />
456 <xs:element name=
"y" type=
"xs:double" />
457 <xs:element name=
"width" type=
"xs:double" />
458 <xs:element name=
"height" type=
"xs:double" />
462 <xs:complexType name=
"SizeF">
464 <xs:element name=
"width" type=
"xs:double" />
465 <xs:element name=
"height" type=
"xs:double" />
469 <xs:complexType name=
"Char">
471 <xs:element name=
"unicode" type=
"xs:integer" />
475 <xs:complexType name=
"Url">
477 <xs:element name=
"string" type=
"String" />
481 <xs:complexType name=
"Property">
483 <xs:element name=
"bool" type=
"xs:string" />
484 <xs:element name=
"color" type=
"Color" />
485 <xs:element name=
"cstring" type=
"xs:string" />
486 <xs:element name=
"cursor" type=
"xs:integer" />
487 <xs:element name=
"cursorshape" type=
"xs:string" />
488 <xs:element name=
"enum" type=
"xs:string" />
489 <xs:element name=
"font" type =
"Font" />
490 <xs:element name=
"iconset" type=
"ResourceIcon"/>
491 <xs:element name=
"pixmap" type=
"ResourcePixmap" />
492 <xs:element name=
"palette" type=
"Palette" />
493 <xs:element name=
"point" type=
"Point" />
494 <xs:element name=
"rect" type=
"Rect" />
495 <xs:element name=
"set" type=
"xs:string" />
496 <xs:element name=
"locale" type=
"Locale" />
497 <xs:element name=
"sizepolicy" type=
"SizePolicy" />
498 <xs:element name=
"size" type=
"Size" />
499 <xs:element name=
"string" type=
"String" />
500 <xs:element name=
"stringlist" type=
"StringList" />
501 <xs:element name=
"number" type=
"xs:integer" />
502 <xs:element name=
"float" type=
"xs:float" />
503 <xs:element name=
"double" type=
"xs:double" />
504 <xs:element name=
"date" type=
"Date" />
505 <xs:element name=
"time" type=
"Time" />
506 <xs:element name=
"datetime" type=
"DateTime" />
507 <xs:element name=
"pointf" type=
"PointF" />
508 <xs:element name=
"rectf" type=
"RectF" />
509 <xs:element name=
"sizef" type=
"SizeF" />
510 <xs:element name=
"longlong" type=
"xs:long" />
511 <xs:element name=
"char" type=
"Char" />
512 <xs:element name=
"url" type=
"Url" />
513 <xs:element name=
"uint" type=
"xs:unsignedInt" />
514 <xs:element name=
"ulonglong" type=
"xs:unsignedLong" />
515 <xs:element name=
"brush" type=
"Brush" />
517 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
518 <xs:attribute name=
"stdset" type=
"xs:integer" />
521 <xs:complexType name=
"Connections">
523 <xs:element name=
"connection" type=
"Connection" minOccurs=
"0" maxOccurs=
"unbounded" />
527 <xs:complexType name=
"Connection">
529 <xs:element name=
"sender" type=
"xs:string" />
530 <xs:element name=
"signal" type=
"xs:string" />
531 <xs:element name=
"receiver" type=
"xs:string" />
532 <xs:element name=
"slot" type=
"xs:string" />
533 <xs:element name=
"hints" type=
"ConnectionHints" minOccurs=
"0" />
537 <xs:complexType name=
"ConnectionHints">
539 <xs:element name=
"hint" type=
"ConnectionHint" maxOccurs=
"unbounded" />
543 <xs:complexType name=
"ConnectionHint">
545 <xs:element name=
"x" type=
"xs:integer"/>
546 <xs:element name=
"y" type=
"xs:integer"/>
548 <xs:attribute name=
"type" type=
"xs:string" use=
"required" />
551 <xs:complexType name=
"Script">
552 <xs:attribute name=
"source" type=
"xs:string" use=
"required" />
553 <xs:attribute name=
"language" type=
"xs:string" use=
"required" />
556 <xs:complexType name=
"WidgetData">
558 <xs:element name=
"property" type=
"Property" maxOccurs=
"unbounded" />
562 <xs:complexType name=
"DesignerData">
564 <xs:element name=
"property" type=
"Property" maxOccurs=
"unbounded" />
568 <xs:complexType name=
"Slots">
569 <xs:sequence maxOccurs=
"unbounded">
570 <xs:element name=
"signal" type=
"xs:string" minOccurs=
"0" maxOccurs=
"unbounded" />
571 <xs:element name=
"slot" type=
"xs:string" minOccurs=
"0" maxOccurs=
"unbounded" />
575 <xs:complexType name=
"PropertySpecifications">
576 <xs:sequence maxOccurs=
"unbounded">
577 <xs:element name=
"stringpropertyspecification" type=
"StringPropertySpecification" minOccurs=
"0" maxOccurs=
"unbounded" />
581 <xs:complexType name=
"StringPropertySpecification">
582 <xs:attribute name=
"name" type=
"xs:string" use=
"required" />
583 <xs:attribute name=
"type" type=
"xs:string" use=
"required" />
584 <xs:attribute name=
"notr" type=
"xs:string"/>