1
<?xml version="1.0" encoding="UTF-8"?>
4
Licensed to the Apache Software Foundation (ASF) under one
5
or more contributor license agreements. See the NOTICE file
6
distributed with this work for additional information
7
regarding copyright ownership. The ASF licenses this file
8
to you under the Apache License, Version 2.0 (the
9
"License"); you may not use this file except in compliance
10
with the License. You may obtain a copy of the License at
12
http://www.apache.org/licenses/LICENSE-2.0
14
Unless required by applicable law or agreed to in writing,
15
software distributed under the License is distributed on an
16
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17
KIND, either express or implied. See the License for the
18
specific language governing permissions and limitations
22
<xs:schema version="1.0"
24
xmlns:xs="http://www.w3.org/2001/XMLSchema"
25
targetNamespace="http://maven.apache.org/FML/1.0"
26
xmlns="http://maven.apache.org/FML/1.0"
27
xmlns:xml="http://www.w3.org/XML/1998/namespace"
28
elementFormDefault="qualified">
31
<xs:documentation source="description">
32
Doxia FML (FAQ Markup Language) 1.0 XML Schema.
34
This is based on: Extensible HTML version 1.0 Transitional XML Schema
35
http://www.w3.org/2002/08/xhtml/xhtml1-transitional.xsd
37
For further information, see:
38
http://maven.apache.org/doxia/references/fml-format.html
42
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
46
================ Character mnemonic entities =========================
48
XHTML entity sets are identified by the PUBLIC and SYSTEM identifiers:
50
PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN"
51
SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent"
53
PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
54
SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent"
56
PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN"
57
SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent"
63
================== Imported Names ====================================
67
<xs:simpleType name="ContentType">
70
media type, as per [RFC2045]
73
<xs:restriction base="xs:string"/>
76
<xs:simpleType name="ContentTypes">
79
comma-separated list of media types, as per [RFC2045]
82
<xs:restriction base="xs:string"/>
85
<xs:simpleType name="Charset">
88
a character encoding, as per [RFC2045]
91
<xs:restriction base="xs:string"/>
94
<xs:simpleType name="Charsets">
97
a space separated list of character encodings, as per [RFC2045]
100
<xs:restriction base="xs:string"/>
103
<xs:simpleType name="LanguageCode">
106
a language code, as per [RFC3066]
109
<xs:restriction base="xs:language"/>
112
<xs:simpleType name="Character">
115
a single character, as per section 2.2 of [XML]
118
<xs:restriction base="xs:string">
119
<xs:length value="1" fixed="true"/>
123
<xs:simpleType name="Number">
129
<xs:restriction base="xs:nonNegativeInteger">
130
<xs:pattern value="[0-9]+"/>
134
<xs:simpleType name="tabindexNumber">
137
tabindex attribute specifies the position of the current element
138
in the tabbing order for the current document. This value must be
139
a number between 0 and 32767. User agents should ignore leading zeros.
142
<xs:restriction base="Number">
143
<xs:minInclusive value="0"/>
144
<xs:maxInclusive value="32767"/>
148
<xs:simpleType name="LinkTypes">
151
space-separated list of link types
154
<xs:restriction base="xs:NMTOKENS"/>
157
<xs:simpleType name="MediaDesc">
160
single or comma-separated list of media descriptors
163
<xs:restriction base="xs:string">
164
<xs:pattern value="[^,]+(,\s*[^,]+)*"/>
168
<xs:simpleType name="URI">
171
a Uniform Resource Identifier, see [RFC2396]
174
<xs:restriction base="xs:anyURI"/>
177
<xs:simpleType name="UriList">
180
a space separated list of Uniform Resource Identifiers
183
<xs:restriction base="xs:string"/>
186
<xs:simpleType name="Datetime">
189
date and time information. ISO date format
192
<xs:restriction base="xs:dateTime"/>
195
<xs:simpleType name="Script">
201
<xs:restriction base="xs:string"/>
204
<xs:simpleType name="StyleSheet">
210
<xs:restriction base="xs:string"/>
213
<xs:simpleType name="Text">
219
<xs:restriction base="xs:string"/>
222
<xs:simpleType name="FrameTarget">
228
<xs:restriction base="xs:NMTOKEN">
229
<xs:pattern value="_(blank|self|parent|top)|[A-Za-z]\c*"/>
233
<xs:simpleType name="Length">
236
nn for pixels or nn% for percentage length
239
<xs:restriction base="xs:string">
240
<xs:pattern value="[\-+]?(\d+|\d+(\.\d+)?%)"/>
244
<xs:simpleType name="MultiLength">
247
pixel, percentage, or relative
250
<xs:restriction base="xs:string">
251
<xs:pattern value="[\-+]?(\d+|\d+(\.\d+)?%)|[1-9]?(\d+)?\*"/>
255
<xs:simpleType name="Pixels">
258
integer representing length in pixels
261
<xs:restriction base="xs:nonNegativeInteger"/>
266
these are used for image maps
270
<xs:simpleType name="Shape">
271
<xs:restriction base="xs:token">
272
<xs:enumeration value="rect"/>
273
<xs:enumeration value="circle"/>
274
<xs:enumeration value="poly"/>
275
<xs:enumeration value="default"/>
279
<xs:simpleType name="Coords">
282
comma separated list of lengths
285
<xs:restriction base="xs:string">
286
<xs:pattern value="[\-+]?(\d+|\d+(\.\d+)?%)(,\s*[\-+]?(\d+|\d+(\.\d+)?%))*"/>
290
<xs:simpleType name="ImgAlign">
293
used for object, applet, img, input and iframe
296
<xs:restriction base="xs:token">
297
<xs:enumeration value="top"/>
298
<xs:enumeration value="middle"/>
299
<xs:enumeration value="bottom"/>
300
<xs:enumeration value="left"/>
301
<xs:enumeration value="right"/>
305
<xs:simpleType name="Color">
308
a color using sRGB: #RRGGBB as Hex values
310
There are also 16 widely known color names with their sRGB values:
312
Black = #000000 Green = #008000
313
Silver = #C0C0C0 Lime = #00FF00
314
Gray = #808080 Olive = #808000
315
White = #FFFFFF Yellow = #FFFF00
316
Maroon = #800000 Navy = #000080
317
Red = #FF0000 Blue = #0000FF
318
Purple = #800080 Teal = #008080
319
Fuchsia= #FF00FF Aqua = #00FFFF
322
<xs:restriction base="xs:string">
323
<xs:pattern value="[A-Za-z]+|#[0-9A-Fa-f]{3}|#[0-9A-Fa-f]{6}"/>
329
=================== Generic Attributes ===============================
333
<xs:attributeGroup name="coreattrs">
336
core attributes common to most elements
337
id document-wide unique id
338
class space separated list of classes
339
style associated style info
340
title advisory title/amplification
343
<xs:attribute name="id" type="xs:ID"/>
344
<xs:attribute name="class" type="xs:NMTOKENS"/>
345
<xs:attribute name="style" type="StyleSheet"/>
346
<xs:attribute name="title" type="Text"/>
349
<xs:attributeGroup name="i18n">
352
internationalization attributes
353
lang language code (backwards compatible)
354
xml:lang language code (as per XML 1.0 spec)
355
dir direction for weak/neutral text
358
<xs:attribute name="lang" type="LanguageCode"/>
359
<xs:attribute ref="xml:lang"/>
360
<xs:attribute name="dir">
362
<xs:restriction base="xs:token">
363
<xs:enumeration value="ltr"/>
364
<xs:enumeration value="rtl"/>
370
<xs:attributeGroup name="events">
373
attributes for common UI events
374
onclick a pointer button was clicked
375
ondblclick a pointer button was double clicked
376
onmousedown a pointer button was pressed down
377
onmouseup a pointer button was released
378
onmousemove a pointer was moved onto the element
379
onmouseout a pointer was moved away from the element
380
onkeypress a key was pressed and released
381
onkeydown a key was pressed down
382
onkeyup a key was released
385
<xs:attribute name="onclick" type="Script"/>
386
<xs:attribute name="ondblclick" type="Script"/>
387
<xs:attribute name="onmousedown" type="Script"/>
388
<xs:attribute name="onmouseup" type="Script"/>
389
<xs:attribute name="onmouseover" type="Script"/>
390
<xs:attribute name="onmousemove" type="Script"/>
391
<xs:attribute name="onmouseout" type="Script"/>
392
<xs:attribute name="onkeypress" type="Script"/>
393
<xs:attribute name="onkeydown" type="Script"/>
394
<xs:attribute name="onkeyup" type="Script"/>
397
<xs:attributeGroup name="focus">
400
attributes for elements that can get the focus
401
accesskey accessibility key character
402
tabindex position in tabbing order
403
onfocus the element got the focus
404
onblur the element lost the focus
407
<xs:attribute name="accesskey" type="Character"/>
408
<xs:attribute name="tabindex" type="tabindexNumber"/>
409
<xs:attribute name="onfocus" type="Script"/>
410
<xs:attribute name="onblur" type="Script"/>
413
<xs:attributeGroup name="attrs">
414
<xs:attributeGroup ref="coreattrs"/>
415
<xs:attributeGroup ref="i18n"/>
416
<xs:attributeGroup ref="events"/>
419
<xs:attributeGroup name="TextAlign">
422
text alignment for p, div, h1-h6. The default is
423
align="left" for ltr headings, "right" for rtl
426
<xs:attribute name="align">
428
<xs:restriction base="xs:token">
429
<xs:enumeration value="left"/>
430
<xs:enumeration value="center"/>
431
<xs:enumeration value="right"/>
432
<xs:enumeration value="justify"/>
440
=================== Text Elements ====================================
444
<xs:group name="special.extra">
446
<xs:element ref="object"/>
447
<xs:element ref="applet"/>
448
<xs:element ref="img"/>
449
<xs:element ref="map"/>
450
<xs:element ref="iframe"/>
451
<xs:element ref="source"/> <!-- FML specific -->
455
<xs:group name="special.basic">
457
<xs:element ref="br"/>
458
<xs:element ref="span"/>
459
<xs:element ref="bdo"/>
463
<xs:group name="special">
465
<xs:group ref="special.basic"/>
466
<xs:group ref="special.extra"/>
470
<xs:group name="fontstyle.extra">
472
<xs:element ref="big"/>
473
<xs:element ref="small"/>
474
<xs:element ref="font"/>
475
<xs:element ref="basefont"/>
479
<xs:group name="fontstyle.basic">
481
<xs:element ref="tt"/>
482
<xs:element ref="i"/>
483
<xs:element ref="b"/>
484
<xs:element ref="u"/>
485
<xs:element ref="s"/>
486
<xs:element ref="strike"/>
490
<xs:group name="fontstyle">
492
<xs:group ref="fontstyle.basic"/>
493
<xs:group ref="fontstyle.extra"/>
497
<xs:group name="phrase.extra">
499
<xs:element ref="sub"/>
500
<xs:element ref="sup"/>
504
<xs:group name="phrase.basic">
506
<xs:element ref="em"/>
507
<xs:element ref="strong"/>
508
<xs:element ref="dfn"/>
509
<xs:element ref="code"/>
510
<xs:element ref="q"/>
511
<xs:element ref="samp"/>
512
<xs:element ref="kbd"/>
513
<xs:element ref="var"/>
514
<xs:element ref="cite"/>
515
<xs:element ref="abbr"/>
516
<xs:element ref="acronym"/>
520
<xs:group name="phrase">
522
<xs:group ref="phrase.basic"/>
523
<xs:group ref="phrase.extra"/>
527
<xs:group name="inline.forms">
529
<xs:element ref="input"/>
530
<xs:element ref="select"/>
531
<xs:element ref="textarea"/>
532
<xs:element ref="label"/>
533
<xs:element ref="button"/>
537
<xs:group name="misc.inline">
540
these can only occur at block level
544
<xs:element ref="ins"/>
545
<xs:element ref="del"/>
546
<xs:element ref="script"/>
550
<xs:group name="misc">
553
these can only occur at block level
557
<xs:element ref="noscript"/>
558
<xs:group ref="misc.inline"/>
562
<xs:group name="inline">
564
<xs:element ref="a"/>
565
<xs:group ref="special"/>
566
<xs:group ref="fontstyle"/>
567
<xs:group ref="phrase"/>
568
<xs:group ref="inline.forms"/>
572
<xs:complexType name="Inline" mixed="true">
575
"Inline" covers inline or "text-level" element
578
<xs:choice minOccurs="0" maxOccurs="unbounded">
579
<xs:group ref="inline"/>
580
<xs:group ref="misc.inline"/>
586
================== Block level elements ==============================
590
<xs:group name="heading">
592
<xs:element ref="h1"/>
593
<xs:element ref="h2"/>
594
<xs:element ref="h3"/>
595
<xs:element ref="h4"/>
596
<xs:element ref="h5"/>
597
<xs:element ref="h6"/>
601
<xs:group name="lists">
603
<xs:element ref="ul"/>
604
<xs:element ref="ol"/>
605
<xs:element ref="dl"/>
606
<xs:element ref="menu"/>
607
<xs:element ref="dir"/>
611
<xs:group name="blocktext">
613
<xs:element ref="pre"/>
614
<xs:element ref="hr"/>
615
<xs:element ref="blockquote"/>
616
<xs:element ref="address"/>
617
<xs:element ref="center"/>
618
<xs:element ref="noframes"/>
622
<xs:group name="block">
624
<xs:element ref="p"/>
625
<xs:group ref="heading"/>
626
<xs:element ref="div"/>
627
<xs:group ref="lists"/>
628
<xs:group ref="blocktext"/>
629
<xs:element ref="isindex"/>
630
<xs:element ref="fieldset"/>
631
<xs:element ref="table"/>
635
<xs:complexType name="Flow" mixed="true">
638
"Flow" mixes block and inline and is used for list items etc.
641
<xs:choice minOccurs="0" maxOccurs="unbounded">
642
<xs:group ref="block"/>
643
<xs:element ref="form"/>
644
<xs:group ref="inline"/>
645
<xs:group ref="misc"/>
651
================== Content models for exclusions =====================
655
<xs:complexType name="a.content" mixed="true">
658
a elements use "Inline" excluding a
661
<xs:choice minOccurs="0" maxOccurs="unbounded">
662
<xs:group ref="special"/>
663
<xs:group ref="fontstyle"/>
664
<xs:group ref="phrase"/>
665
<xs:group ref="inline.forms"/>
666
<xs:group ref="misc.inline"/>
670
<xs:complexType name="pre.content" mixed="true">
673
pre uses "Inline" excluding img, object, applet, big, small,
677
<xs:choice minOccurs="0" maxOccurs="unbounded">
678
<xs:element ref="a"/>
679
<xs:group ref="special.basic"/>
680
<xs:group ref="fontstyle.basic"/>
681
<xs:group ref="phrase.basic"/>
682
<xs:group ref="inline.forms"/>
683
<xs:group ref="misc.inline"/>
687
<xs:complexType name="form.content" mixed="true">
690
form uses "Flow" excluding form
693
<xs:choice minOccurs="0" maxOccurs="unbounded">
694
<xs:group ref="block"/>
695
<xs:group ref="inline"/>
696
<xs:group ref="misc"/>
700
<xs:complexType name="button.content" mixed="true">
703
button uses "Flow" but excludes a, form, form controls, iframe
706
<xs:choice minOccurs="0" maxOccurs="unbounded">
707
<xs:element ref="p"/>
708
<xs:group ref="heading"/>
709
<xs:element ref="div"/>
710
<xs:group ref="lists"/>
711
<xs:group ref="blocktext"/>
712
<xs:element ref="table"/>
713
<xs:element ref="br"/>
714
<xs:element ref="span"/>
715
<xs:element ref="bdo"/>
716
<xs:element ref="object"/>
717
<xs:element ref="applet"/>
718
<xs:element ref="img"/>
719
<xs:element ref="map"/>
720
<xs:group ref="fontstyle"/>
721
<xs:group ref="phrase"/>
722
<xs:group ref="misc"/>
728
================ Document Head =======================================
732
<xs:group name="head.misc">
734
<xs:choice minOccurs="0" maxOccurs="unbounded">
735
<xs:element ref="script"/>
736
<xs:element ref="style"/>
737
<xs:element ref="meta"/>
738
<xs:element ref="link"/>
739
<xs:element ref="object"/>
740
<xs:element ref="isindex"/>
745
<xs:element name="head">
748
content model is "head.misc" combined with a single
749
title and an optional base element in any order
754
<xs:group ref="head.misc"/>
757
<xs:element ref="title"/>
758
<xs:group ref="head.misc"/>
759
<xs:sequence minOccurs="0">
760
<xs:element ref="base"/>
761
<xs:group ref="head.misc"/>
765
<xs:element ref="base"/>
766
<xs:group ref="head.misc"/>
767
<xs:element ref="title"/>
768
<xs:group ref="head.misc"/>
772
<xs:attributeGroup ref="i18n"/>
773
<xs:attribute name="id" type="xs:ID"/>
774
<xs:attribute name="profile" type="URI"/>
778
<xs:element name="title">
781
The title element is not considered part of the flow of text.
782
It should be displayed, for example as the page header or
783
window title. Exactly one title is required per document.
786
<xs:complexType mixed="true">
787
<xs:attributeGroup ref="i18n"/>
788
<xs:attribute name="id" type="xs:ID"/>
792
<xs:element name="base">
799
<xs:attribute name="id" type="xs:ID"/>
800
<xs:attribute name="href" type="URI"/>
801
<xs:attribute name="target" type="FrameTarget"/>
805
<xs:element name="meta">
808
generic metainformation
812
<xs:attributeGroup ref="i18n"/>
813
<xs:attribute name="id" type="xs:ID"/>
814
<xs:attribute name="http-equiv"/>
815
<xs:attribute name="name"/>
816
<xs:attribute name="content" use="required"/>
817
<xs:attribute name="scheme"/>
821
<xs:element name="link">
824
Relationship values can be used in principle:
826
a) for document specific toolbars/menus when used
827
with the link element in document head e.g.
828
start, contents, previous, next, index, end, help
829
b) to link to a separate style sheet (rel="stylesheet")
830
c) to make a link to a script (rel="script")
831
d) by stylesheets to control how collections of
832
html nodes are rendered into printed documents
833
e) to make a link to a printable version of this document
834
e.g. a PostScript or PDF version (rel="alternate" media="print")
838
<xs:attributeGroup ref="attrs"/>
839
<xs:attribute name="charset" type="Charset"/>
840
<xs:attribute name="href" type="URI"/>
841
<xs:attribute name="hreflang" type="LanguageCode"/>
842
<xs:attribute name="type" type="ContentType"/>
843
<xs:attribute name="rel" type="LinkTypes"/>
844
<xs:attribute name="rev" type="LinkTypes"/>
845
<xs:attribute name="media" type="MediaDesc"/>
846
<xs:attribute name="target" type="FrameTarget"/>
850
<xs:element name="style">
853
style info, which may include CDATA sections
856
<xs:complexType mixed="true">
857
<xs:attributeGroup ref="i18n"/>
858
<xs:attribute name="id" type="xs:ID"/>
859
<xs:attribute name="type" use="required" type="ContentType"/>
860
<xs:attribute name="media" type="MediaDesc"/>
861
<xs:attribute name="title" type="Text"/>
862
<xs:attribute ref="xml:space" fixed="preserve"/>
866
<xs:element name="script">
869
script statements, which may include CDATA sections
872
<xs:complexType mixed="true">
873
<xs:attribute name="id" type="xs:ID"/>
874
<xs:attribute name="charset" type="Charset"/>
875
<xs:attribute name="type" use="required" type="ContentType"/>
876
<xs:attribute name="language"/>
877
<xs:attribute name="src" type="URI"/>
878
<xs:attribute name="defer">
880
<xs:restriction base="xs:token">
881
<xs:enumeration value="defer"/>
885
<xs:attribute ref="xml:space" fixed="preserve"/>
889
<xs:element name="noscript">
892
alternate content container for non script-based rendering
895
<xs:complexType mixed="true">
897
<xs:extension base="Flow">
898
<xs:attributeGroup ref="attrs"/>
906
======================= Frames =======================================
910
<xs:element name="iframe">
916
<xs:complexType mixed="true">
918
<xs:extension base="Flow">
919
<xs:attributeGroup ref="coreattrs"/>
920
<xs:attribute name="longdesc" type="URI"/>
921
<xs:attribute name="name" type="xs:NMTOKEN"/>
922
<xs:attribute name="src" type="URI"/>
923
<xs:attribute name="frameborder" default="1">
925
<xs:restriction base="xs:token">
926
<xs:enumeration value="1"/>
927
<xs:enumeration value="0"/>
931
<xs:attribute name="marginwidth" type="Pixels"/>
932
<xs:attribute name="marginheight" type="Pixels"/>
933
<xs:attribute name="scrolling" default="auto">
935
<xs:restriction base="xs:token">
936
<xs:enumeration value="yes"/>
937
<xs:enumeration value="no"/>
938
<xs:enumeration value="auto"/>
942
<xs:attribute name="align" type="ImgAlign"/>
943
<xs:attribute name="height" type="Length"/>
944
<xs:attribute name="width" type="Length"/>
950
<xs:element name="noframes">
953
alternate content container for non frame-based rendering
956
<xs:complexType mixed="true">
958
<xs:extension base="Flow">
959
<xs:attributeGroup ref="attrs"/>
967
=================== Document Body ====================================
971
<xs:element name="div">
974
generic language/style container
977
<xs:complexType mixed="true">
979
<xs:extension base="Flow">
980
<xs:attributeGroup ref="attrs"/>
981
<xs:attributeGroup ref="TextAlign"/>
989
=================== Paragraphs =======================================
993
<xs:element name="p">
994
<xs:complexType mixed="true">
996
<xs:extension base="Inline">
997
<xs:attributeGroup ref="attrs"/>
998
<xs:attributeGroup ref="TextAlign"/>
1000
</xs:complexContent>
1006
=================== Headings =========================================
1008
There are six levels of headings from h1 (the most important)
1009
to h6 (the least important).
1013
<xs:element name="h1">
1014
<xs:complexType mixed="true">
1016
<xs:extension base="Inline">
1017
<xs:attributeGroup ref="attrs"/>
1018
<xs:attributeGroup ref="TextAlign"/>
1020
</xs:complexContent>
1024
<xs:element name="h2">
1025
<xs:complexType mixed="true">
1027
<xs:extension base="Inline">
1028
<xs:attributeGroup ref="attrs"/>
1029
<xs:attributeGroup ref="TextAlign"/>
1031
</xs:complexContent>
1035
<xs:element name="h3">
1036
<xs:complexType mixed="true">
1038
<xs:extension base="Inline">
1039
<xs:attributeGroup ref="attrs"/>
1040
<xs:attributeGroup ref="TextAlign"/>
1042
</xs:complexContent>
1046
<xs:element name="h4">
1047
<xs:complexType mixed="true">
1049
<xs:extension base="Inline">
1050
<xs:attributeGroup ref="attrs"/>
1051
<xs:attributeGroup ref="TextAlign"/>
1053
</xs:complexContent>
1057
<xs:element name="h5">
1058
<xs:complexType mixed="true">
1060
<xs:extension base="Inline">
1061
<xs:attributeGroup ref="attrs"/>
1062
<xs:attributeGroup ref="TextAlign"/>
1064
</xs:complexContent>
1068
<xs:element name="h6">
1069
<xs:complexType mixed="true">
1071
<xs:extension base="Inline">
1072
<xs:attributeGroup ref="attrs"/>
1073
<xs:attributeGroup ref="TextAlign"/>
1075
</xs:complexContent>
1081
=================== Lists ============================================
1085
<xs:simpleType name="ULStyle">
1088
Unordered list bullet styles
1091
<xs:restriction base="xs:token">
1092
<xs:enumeration value="disc"/>
1093
<xs:enumeration value="square"/>
1094
<xs:enumeration value="circle"/>
1098
<xs:element name="ul">
1106
<xs:element maxOccurs="unbounded" ref="li"/>
1108
<xs:attributeGroup ref="attrs"/>
1109
<xs:attribute name="type" type="ULStyle"/>
1110
<xs:attribute name="compact">
1112
<xs:restriction base="xs:token">
1113
<xs:enumeration value="compact"/>
1120
<xs:simpleType name="OLStyle">
1123
Ordered list numbering style
1125
1 arabic numbers 1, 2, 3, ...
1126
a lower alpha a, b, c, ...
1127
A upper alpha A, B, C, ...
1128
i lower roman i, ii, iii, ...
1129
I upper roman I, II, III, ...
1131
The style is applied to the sequence number which by default
1132
is reset to 1 for the first list item in an ordered list.
1135
<xs:restriction base="xs:string"/>
1138
<xs:element name="ol">
1141
Ordered (numbered) list
1146
<xs:element maxOccurs="unbounded" ref="li"/>
1148
<xs:attributeGroup ref="attrs"/>
1149
<xs:attribute name="type" type="OLStyle"/>
1150
<xs:attribute name="compact">
1152
<xs:restriction base="xs:token">
1153
<xs:enumeration value="compact"/>
1157
<xs:attribute name="start" type="Number"/>
1161
<xs:element name="menu">
1164
single column list (DEPRECATED)
1169
<xs:element maxOccurs="unbounded" ref="li"/>
1171
<xs:attributeGroup ref="attrs"/>
1172
<xs:attribute name="compact">
1174
<xs:restriction base="xs:token">
1175
<xs:enumeration value="compact"/>
1182
<xs:element name="dir">
1185
multiple column list (DEPRECATED)
1190
<xs:element maxOccurs="unbounded" ref="li"/>
1192
<xs:attributeGroup ref="attrs"/>
1193
<xs:attribute name="compact">
1195
<xs:restriction base="xs:token">
1196
<xs:enumeration value="compact"/>
1203
<xs:simpleType name="LIStyle">
1206
LIStyle is constrained to: "(ULStyle|OLStyle)"
1209
<xs:restriction base="xs:string"/>
1212
<xs:element name="li">
1218
<xs:complexType mixed="true">
1220
<xs:extension base="Flow">
1221
<xs:attributeGroup ref="attrs"/>
1222
<xs:attribute name="type" type="LIStyle"/>
1223
<xs:attribute name="value" type="Number"/>
1225
</xs:complexContent>
1231
definition lists - dt for term, dd for its definition
1235
<xs:element name="dl">
1237
<xs:choice maxOccurs="unbounded">
1238
<xs:element ref="dt"/>
1239
<xs:element ref="dd"/>
1241
<xs:attributeGroup ref="attrs"/>
1242
<xs:attribute name="compact">
1244
<xs:restriction base="xs:token">
1245
<xs:enumeration value="compact"/>
1252
<xs:element name="dt">
1253
<xs:complexType mixed="true">
1255
<xs:extension base="Inline">
1256
<xs:attributeGroup ref="attrs"/>
1258
</xs:complexContent>
1262
<xs:element name="dd">
1263
<xs:complexType mixed="true">
1265
<xs:extension base="Flow">
1266
<xs:attributeGroup ref="attrs"/>
1268
</xs:complexContent>
1274
=================== Address ==========================================
1278
<xs:element name="address">
1281
information on author
1284
<xs:complexType mixed="true">
1285
<xs:choice minOccurs="0" maxOccurs="unbounded">
1286
<xs:group ref="inline"/>
1287
<xs:group ref="misc.inline"/>
1288
<xs:element ref="p"/>
1290
<xs:attributeGroup ref="attrs"/>
1296
=================== Horizontal Rule ==================================
1300
<xs:element name="hr">
1302
<xs:attributeGroup ref="attrs"/>
1303
<xs:attribute name="align">
1305
<xs:restriction base="xs:token">
1306
<xs:enumeration value="left"/>
1307
<xs:enumeration value="center"/>
1308
<xs:enumeration value="right"/>
1312
<xs:attribute name="noshade">
1314
<xs:restriction base="xs:token">
1315
<xs:enumeration value="noshade"/>
1319
<xs:attribute name="size" type="Pixels"/>
1320
<xs:attribute name="width" type="Length"/>
1326
=================== Preformatted Text ================================
1330
<xs:element name="pre">
1333
content is "Inline" excluding
1334
"img|object|applet|big|small|sub|sup|font|basefont"
1337
<xs:complexType mixed="true">
1339
<xs:extension base="pre.content">
1340
<xs:attributeGroup ref="attrs"/>
1341
<xs:attribute name="width" type="Number"/>
1342
<xs:attribute ref="xml:space" fixed="preserve"/>
1344
</xs:complexContent>
1350
=================== Block-like Quotes ================================
1354
<xs:element name="blockquote">
1355
<xs:complexType mixed="true">
1357
<xs:extension base="Flow">
1358
<xs:attributeGroup ref="attrs"/>
1359
<xs:attribute name="cite" type="URI"/>
1361
</xs:complexContent>
1367
=================== Text alignment ===================================
1371
<xs:element name="center">
1377
<xs:complexType mixed="true">
1379
<xs:extension base="Flow">
1380
<xs:attributeGroup ref="attrs"/>
1382
</xs:complexContent>
1388
=================== Inserted/Deleted Text ============================
1390
ins/del are allowed in block and inline content, but its
1391
inappropriate to include block content within an ins element
1392
occurring in inline content.
1396
<xs:element name="ins">
1397
<xs:complexType mixed="true">
1399
<xs:extension base="Flow">
1400
<xs:attributeGroup ref="attrs"/>
1401
<xs:attribute name="cite" type="URI"/>
1402
<xs:attribute name="datetime" type="Datetime"/>
1404
</xs:complexContent>
1408
<xs:element name="del">
1409
<xs:complexType mixed="true">
1411
<xs:extension base="Flow">
1412
<xs:attributeGroup ref="attrs"/>
1413
<xs:attribute name="cite" type="URI"/>
1414
<xs:attribute name="datetime" type="Datetime"/>
1416
</xs:complexContent>
1422
================== The Anchor Element ================================
1426
<xs:element name="a">
1429
content is "Inline" except that anchors shouldn't be nested
1432
<xs:complexType mixed="true">
1434
<xs:extension base="a.content">
1435
<xs:attributeGroup ref="attrs"/>
1436
<xs:attributeGroup ref="focus"/>
1437
<xs:attribute name="charset" type="Charset"/>
1438
<xs:attribute name="type" type="ContentType"/>
1439
<xs:attribute name="name" type="xs:NMTOKEN"/>
1440
<xs:attribute name="href" type="URI"/>
1441
<xs:attribute name="hreflang" type="LanguageCode"/>
1442
<xs:attribute name="rel" type="LinkTypes"/>
1443
<xs:attribute name="rev" type="LinkTypes"/>
1444
<xs:attribute name="shape" default="rect" type="Shape"/>
1445
<xs:attribute name="coords" type="Coords"/>
1446
<xs:attribute name="target" type="FrameTarget"/>
1448
</xs:complexContent>
1454
===================== Inline Elements ================================
1458
<xs:element name="span">
1461
generic language/style container
1464
<xs:complexType mixed="true">
1466
<xs:extension base="Inline">
1467
<xs:attributeGroup ref="attrs"/>
1469
</xs:complexContent>
1473
<xs:element name="bdo">
1479
<xs:complexType mixed="true">
1481
<xs:extension base="Inline">
1482
<xs:attributeGroup ref="coreattrs"/>
1483
<xs:attributeGroup ref="events"/>
1484
<xs:attribute name="lang" type="LanguageCode"/>
1485
<xs:attribute ref="xml:lang"/>
1486
<xs:attribute name="dir" use="required">
1488
<xs:restriction base="xs:token">
1489
<xs:enumeration value="ltr"/>
1490
<xs:enumeration value="rtl"/>
1495
</xs:complexContent>
1499
<xs:element name="br">
1506
<xs:attributeGroup ref="coreattrs"/>
1507
<xs:attribute name="clear" default="none">
1509
<xs:restriction base="xs:token">
1510
<xs:enumeration value="left"/>
1511
<xs:enumeration value="all"/>
1512
<xs:enumeration value="right"/>
1513
<xs:enumeration value="none"/>
1520
<xs:element name="em">
1526
<xs:complexType mixed="true">
1528
<xs:extension base="Inline">
1529
<xs:attributeGroup ref="attrs"/>
1531
</xs:complexContent>
1535
<xs:element name="strong">
1541
<xs:complexType mixed="true">
1543
<xs:extension base="Inline">
1544
<xs:attributeGroup ref="attrs"/>
1546
</xs:complexContent>
1550
<xs:element name="dfn">
1556
<xs:complexType mixed="true">
1558
<xs:extension base="Inline">
1559
<xs:attributeGroup ref="attrs"/>
1561
</xs:complexContent>
1565
<xs:element name="code">
1571
<xs:complexType mixed="true">
1573
<xs:extension base="Inline">
1574
<xs:attributeGroup ref="attrs"/>
1576
</xs:complexContent>
1580
<xs:element name="samp">
1586
<xs:complexType mixed="true">
1588
<xs:extension base="Inline">
1589
<xs:attributeGroup ref="attrs"/>
1591
</xs:complexContent>
1595
<xs:element name="kbd">
1598
something user would type
1601
<xs:complexType mixed="true">
1603
<xs:extension base="Inline">
1604
<xs:attributeGroup ref="attrs"/>
1606
</xs:complexContent>
1610
<xs:element name="var">
1616
<xs:complexType mixed="true">
1618
<xs:extension base="Inline">
1619
<xs:attributeGroup ref="attrs"/>
1621
</xs:complexContent>
1625
<xs:element name="cite">
1631
<xs:complexType mixed="true">
1633
<xs:extension base="Inline">
1634
<xs:attributeGroup ref="attrs"/>
1636
</xs:complexContent>
1640
<xs:element name="abbr">
1646
<xs:complexType mixed="true">
1648
<xs:extension base="Inline">
1649
<xs:attributeGroup ref="attrs"/>
1651
</xs:complexContent>
1655
<xs:element name="acronym">
1661
<xs:complexType mixed="true">
1663
<xs:extension base="Inline">
1664
<xs:attributeGroup ref="attrs"/>
1666
</xs:complexContent>
1670
<xs:element name="q">
1676
<xs:complexType mixed="true">
1678
<xs:extension base="Inline">
1679
<xs:attributeGroup ref="attrs"/>
1680
<xs:attribute name="cite" type="URI"/>
1682
</xs:complexContent>
1686
<xs:element name="sub">
1692
<xs:complexType mixed="true">
1694
<xs:extension base="Inline">
1695
<xs:attributeGroup ref="attrs"/>
1697
</xs:complexContent>
1701
<xs:element name="sup">
1707
<xs:complexType mixed="true">
1709
<xs:extension base="Inline">
1710
<xs:attributeGroup ref="attrs"/>
1712
</xs:complexContent>
1716
<xs:element name="tt">
1722
<xs:complexType mixed="true">
1724
<xs:extension base="Inline">
1725
<xs:attributeGroup ref="attrs"/>
1727
</xs:complexContent>
1731
<xs:element name="i">
1737
<xs:complexType mixed="true">
1739
<xs:extension base="Inline">
1740
<xs:attributeGroup ref="attrs"/>
1742
</xs:complexContent>
1746
<xs:element name="b">
1752
<xs:complexType mixed="true">
1754
<xs:extension base="Inline">
1755
<xs:attributeGroup ref="attrs"/>
1757
</xs:complexContent>
1761
<xs:element name="big">
1767
<xs:complexType mixed="true">
1769
<xs:extension base="Inline">
1770
<xs:attributeGroup ref="attrs"/>
1772
</xs:complexContent>
1776
<xs:element name="small">
1782
<xs:complexType mixed="true">
1784
<xs:extension base="Inline">
1785
<xs:attributeGroup ref="attrs"/>
1787
</xs:complexContent>
1791
<xs:element name="u">
1797
<xs:complexType mixed="true">
1799
<xs:extension base="Inline">
1800
<xs:attributeGroup ref="attrs"/>
1802
</xs:complexContent>
1806
<xs:element name="s">
1812
<xs:complexType mixed="true">
1814
<xs:extension base="Inline">
1815
<xs:attributeGroup ref="attrs"/>
1817
</xs:complexContent>
1821
<xs:element name="strike">
1827
<xs:complexType mixed="true">
1829
<xs:extension base="Inline">
1830
<xs:attributeGroup ref="attrs"/>
1832
</xs:complexContent>
1836
<xs:element name="basefont">
1843
<xs:attribute name="id" type="xs:ID"/>
1844
<xs:attribute name="size" use="required"/>
1845
<xs:attribute name="color" type="Color"/>
1846
<xs:attribute name="face"/>
1850
<xs:element name="font">
1853
local change to font
1856
<xs:complexType mixed="true">
1858
<xs:extension base="Inline">
1859
<xs:attributeGroup ref="coreattrs"/>
1860
<xs:attributeGroup ref="i18n"/>
1861
<xs:attribute name="size"/>
1862
<xs:attribute name="color" type="Color"/>
1863
<xs:attribute name="face"/>
1865
</xs:complexContent>
1871
==================== Object ======================================
1873
object is used to embed objects as part of HTML pages.
1874
param elements should precede other content. Parameters
1875
can also be expressed as attribute/value pairs on the
1876
object element itself when brevity is desired.
1880
<xs:element name="object">
1881
<xs:complexType mixed="true">
1882
<xs:choice minOccurs="0" maxOccurs="unbounded">
1883
<xs:element ref="param"/>
1884
<xs:group ref="block"/>
1885
<xs:element ref="form"/>
1886
<xs:group ref="inline"/>
1887
<xs:group ref="misc"/>
1889
<xs:attributeGroup ref="attrs"/>
1890
<xs:attribute name="declare">
1892
<xs:restriction base="xs:token">
1893
<xs:enumeration value="declare"/>
1897
<xs:attribute name="classid" type="URI"/>
1898
<xs:attribute name="codebase" type="URI"/>
1899
<xs:attribute name="data" type="URI"/>
1900
<xs:attribute name="type" type="ContentType"/>
1901
<xs:attribute name="codetype" type="ContentType"/>
1902
<xs:attribute name="archive" type="UriList"/>
1903
<xs:attribute name="standby" type="Text"/>
1904
<xs:attribute name="height" type="Length"/>
1905
<xs:attribute name="width" type="Length"/>
1906
<xs:attribute name="usemap" type="URI"/>
1907
<xs:attribute name="name" type="xs:NMTOKEN"/>
1908
<xs:attribute name="tabindex" type="Number"/>
1909
<xs:attribute name="align" type="ImgAlign"/>
1910
<xs:attribute name="border" type="Pixels"/>
1911
<xs:attribute name="hspace" type="Pixels"/>
1912
<xs:attribute name="vspace" type="Pixels"/>
1916
<xs:element name="param">
1919
param is used to supply a named property value.
1920
In XML it would seem natural to follow RDF and support an
1921
abbreviated syntax where the param elements are replaced
1922
by attribute value pairs on the object start tag.
1926
<xs:attribute name="id" type="xs:ID"/>
1927
<xs:attribute name="name" use="required"/>
1928
<xs:attribute name="value"/>
1929
<xs:attribute name="valuetype" default="data">
1931
<xs:restriction base="xs:token">
1932
<xs:enumeration value="data"/>
1933
<xs:enumeration value="ref"/>
1934
<xs:enumeration value="object"/>
1938
<xs:attribute name="type" type="ContentType"/>
1944
=================== Java applet ==================================
1946
One of code or object attributes must be present.
1947
Place param elements before other content.
1951
<xs:element name="applet">
1952
<xs:complexType mixed="true">
1953
<xs:choice minOccurs="0" maxOccurs="unbounded">
1954
<xs:element ref="param"/>
1955
<xs:group ref="block"/>
1956
<xs:element ref="form"/>
1957
<xs:group ref="inline"/>
1958
<xs:group ref="misc"/>
1960
<xs:attributeGroup ref="coreattrs"/>
1961
<xs:attribute name="codebase" type="URI"/>
1962
<xs:attribute name="archive"/>
1963
<xs:attribute name="code"/>
1964
<xs:attribute name="object"/>
1965
<xs:attribute name="alt" type="Text"/>
1966
<xs:attribute name="name" type="xs:NMTOKEN"/>
1967
<xs:attribute name="width" use="required" type="Length"/>
1968
<xs:attribute name="height" use="required" type="Length"/>
1969
<xs:attribute name="align" type="ImgAlign"/>
1970
<xs:attribute name="hspace" type="Pixels"/>
1971
<xs:attribute name="vspace" type="Pixels"/>
1977
=================== Images ===========================================
1979
To avoid accessibility problems for people who aren't
1980
able to see the image, you should provide a text
1981
description using the alt and longdesc attributes.
1982
In addition, avoid the use of server-side image maps.
1986
<xs:element name="img">
1988
<xs:attributeGroup ref="attrs"/>
1989
<xs:attribute name="src" use="required" type="URI"/>
1990
<xs:attribute name="alt" use="required" type="Text"/>
1991
<xs:attribute name="name" type="xs:NMTOKEN"/>
1992
<xs:attribute name="longdesc" type="URI"/>
1993
<xs:attribute name="height" type="Length"/>
1994
<xs:attribute name="width" type="Length"/>
1995
<xs:attribute name="usemap" type="URI">
1998
usemap points to a map element which may be in this document
1999
or an external document, although the latter is not widely supported
2003
<xs:attribute name="ismap">
2005
<xs:restriction base="xs:token">
2006
<xs:enumeration value="ismap"/>
2010
<xs:attribute name="align" type="ImgAlign"/>
2011
<xs:attribute name="border" type="Length"/>
2012
<xs:attribute name="hspace" type="Pixels"/>
2013
<xs:attribute name="vspace" type="Pixels"/>
2019
================== Client-side image maps ============================
2021
These can be placed in the same document or grouped in a
2022
separate document although this isn't yet widely supported
2026
<xs:element name="map">
2029
<xs:choice maxOccurs="unbounded">
2030
<xs:group ref="block"/>
2031
<xs:element ref="form"/>
2032
<xs:group ref="misc"/>
2034
<xs:element maxOccurs="unbounded" ref="area"/>
2036
<xs:attributeGroup ref="i18n"/>
2037
<xs:attributeGroup ref="events"/>
2038
<xs:attribute name="id" use="required" type="xs:ID"/>
2039
<xs:attribute name="class"/>
2040
<xs:attribute name="style" type="StyleSheet"/>
2041
<xs:attribute name="title" type="Text"/>
2042
<xs:attribute name="name"/>
2046
<xs:element name="area">
2048
<xs:attributeGroup ref="attrs"/>
2049
<xs:attributeGroup ref="focus"/>
2050
<xs:attribute name="shape" default="rect" type="Shape"/>
2051
<xs:attribute name="coords" type="Coords"/>
2052
<xs:attribute name="href" type="URI"/>
2053
<xs:attribute name="nohref">
2055
<xs:restriction base="xs:token">
2056
<xs:enumeration value="nohref"/>
2060
<xs:attribute name="alt" use="required" type="Text"/>
2061
<xs:attribute name="target" type="FrameTarget"/>
2067
================ Forms ===============================================
2071
<xs:element name="form">
2072
<xs:complexType mixed="true">
2074
<xs:extension base="form.content">
2075
<xs:attributeGroup ref="attrs"/>
2076
<xs:attribute name="action" use="required" type="URI"/>
2077
<xs:attribute name="method" default="get">
2079
<xs:restriction base="xs:token">
2080
<xs:enumeration value="get"/>
2081
<xs:enumeration value="post"/>
2085
<xs:attribute name="enctype" type="ContentType" default="application/x-www-form-urlencoded"/>
2086
<xs:attribute name="onsubmit" type="Script"/>
2087
<xs:attribute name="onreset" type="Script"/>
2088
<xs:attribute name="accept" type="ContentTypes"/>
2089
<xs:attribute name="accept-charset" type="Charsets"/>
2090
<xs:attribute name="target" type="FrameTarget"/>
2092
</xs:complexContent>
2096
<xs:element name="label">
2099
Each label must not contain more than ONE field
2100
Label elements shouldn't be nested.
2103
<xs:complexType mixed="true">
2105
<xs:extension base="Inline">
2106
<xs:attributeGroup ref="attrs"/>
2107
<xs:attribute name="for" type="xs:IDREF"/>
2108
<xs:attribute name="accesskey" type="Character"/>
2109
<xs:attribute name="onfocus" type="Script"/>
2110
<xs:attribute name="onblur" type="Script"/>
2112
</xs:complexContent>
2116
<xs:simpleType name="InputType">
2117
<xs:restriction base="xs:token">
2118
<xs:enumeration value="text"/>
2119
<xs:enumeration value="password"/>
2120
<xs:enumeration value="checkbox"/>
2121
<xs:enumeration value="radio"/>
2122
<xs:enumeration value="submit"/>
2123
<xs:enumeration value="reset"/>
2124
<xs:enumeration value="file"/>
2125
<xs:enumeration value="hidden"/>
2126
<xs:enumeration value="image"/>
2127
<xs:enumeration value="button"/>
2131
<xs:element name="input">
2138
<xs:attributeGroup ref="attrs"/>
2139
<xs:attributeGroup ref="focus"/>
2140
<xs:attribute name="type" default="text" type="InputType"/>
2141
<xs:attribute name="name">
2144
the name attribute is required for all but submit & reset
2148
<xs:attribute name="value"/>
2149
<xs:attribute name="checked">
2151
<xs:restriction base="xs:token">
2152
<xs:enumeration value="checked"/>
2156
<xs:attribute name="disabled">
2158
<xs:restriction base="xs:token">
2159
<xs:enumeration value="disabled"/>
2163
<xs:attribute name="readonly">
2165
<xs:restriction base="xs:token">
2166
<xs:enumeration value="readonly"/>
2170
<xs:attribute name="size"/>
2171
<xs:attribute name="maxlength" type="Number"/>
2172
<xs:attribute name="src" type="URI"/>
2173
<xs:attribute name="alt"/>
2174
<xs:attribute name="usemap" type="URI"/>
2175
<xs:attribute name="onselect" type="Script"/>
2176
<xs:attribute name="onchange" type="Script"/>
2177
<xs:attribute name="accept" type="ContentTypes"/>
2178
<xs:attribute name="align" type="ImgAlign"/>
2182
<xs:element name="select">
2189
<xs:choice maxOccurs="unbounded">
2190
<xs:element ref="optgroup"/>
2191
<xs:element ref="option"/>
2193
<xs:attributeGroup ref="attrs"/>
2194
<xs:attribute name="name"/>
2195
<xs:attribute name="size" type="Number"/>
2196
<xs:attribute name="multiple">
2198
<xs:restriction base="xs:token">
2199
<xs:enumeration value="multiple"/>
2203
<xs:attribute name="disabled">
2205
<xs:restriction base="xs:token">
2206
<xs:enumeration value="disabled"/>
2210
<xs:attribute name="tabindex" type="tabindexNumber"/>
2211
<xs:attribute name="onfocus" type="Script"/>
2212
<xs:attribute name="onblur" type="Script"/>
2213
<xs:attribute name="onchange" type="Script"/>
2217
<xs:element name="optgroup">
2225
<xs:element maxOccurs="unbounded" ref="option"/>
2227
<xs:attributeGroup ref="attrs"/>
2228
<xs:attribute name="disabled">
2230
<xs:restriction base="xs:token">
2231
<xs:enumeration value="disabled"/>
2235
<xs:attribute name="label" use="required" type="Text"/>
2239
<xs:element name="option">
2245
<xs:complexType mixed="true">
2246
<xs:attributeGroup ref="attrs"/>
2247
<xs:attribute name="selected">
2249
<xs:restriction base="xs:token">
2250
<xs:enumeration value="selected"/>
2254
<xs:attribute name="disabled">
2256
<xs:restriction base="xs:token">
2257
<xs:enumeration value="disabled"/>
2261
<xs:attribute name="label" type="Text"/>
2262
<xs:attribute name="value"/>
2266
<xs:element name="textarea">
2269
multi-line text field
2272
<xs:complexType mixed="true">
2273
<xs:attributeGroup ref="attrs"/>
2274
<xs:attributeGroup ref="focus"/>
2275
<xs:attribute name="name"/>
2276
<xs:attribute name="rows" use="required" type="Number"/>
2277
<xs:attribute name="cols" use="required" type="Number"/>
2278
<xs:attribute name="disabled">
2280
<xs:restriction base="xs:token">
2281
<xs:enumeration value="disabled"/>
2285
<xs:attribute name="readonly">
2287
<xs:restriction base="xs:token">
2288
<xs:enumeration value="readonly"/>
2292
<xs:attribute name="onselect" type="Script"/>
2293
<xs:attribute name="onchange" type="Script"/>
2297
<xs:element name="fieldset">
2300
The fieldset element is used to group form fields.
2301
Only one legend element should occur in the content
2302
and if present should only be preceded by whitespace.
2304
NOTE: this content model is different from the XHTML 1.0 DTD,
2305
closer to the intended content model in HTML4 DTD
2308
<xs:complexType mixed="true">
2310
<xs:element ref="legend"/>
2311
<xs:choice minOccurs="0" maxOccurs="unbounded">
2312
<xs:group ref="block"/>
2313
<xs:element ref="form"/>
2314
<xs:group ref="inline"/>
2315
<xs:group ref="misc"/>
2318
<xs:attributeGroup ref="attrs"/>
2322
<xs:simpleType name="LAlign">
2323
<xs:restriction base="xs:token">
2324
<xs:enumeration value="top"/>
2325
<xs:enumeration value="bottom"/>
2326
<xs:enumeration value="left"/>
2327
<xs:enumeration value="right"/>
2331
<xs:element name="legend">
2337
<xs:complexType mixed="true">
2339
<xs:extension base="Inline">
2340
<xs:attributeGroup ref="attrs"/>
2341
<xs:attribute name="accesskey" type="Character"/>
2342
<xs:attribute name="align" type="LAlign"/>
2344
</xs:complexContent>
2348
<xs:element name="button">
2351
Content is "Flow" excluding a, form and form controls
2354
<xs:complexType mixed="true">
2356
<xs:extension base="button.content">
2357
<xs:attributeGroup ref="attrs"/>
2358
<xs:attributeGroup ref="focus"/>
2359
<xs:attribute name="name"/>
2360
<xs:attribute name="value"/>
2361
<xs:attribute name="type" default="submit">
2363
<xs:restriction base="xs:token">
2364
<xs:enumeration value="button"/>
2365
<xs:enumeration value="submit"/>
2366
<xs:enumeration value="reset"/>
2370
<xs:attribute name="disabled">
2372
<xs:restriction base="xs:token">
2373
<xs:enumeration value="disabled"/>
2378
</xs:complexContent>
2382
<xs:element name="isindex">
2385
single-line text input control (DEPRECATED)
2389
<xs:attributeGroup ref="coreattrs"/>
2390
<xs:attributeGroup ref="i18n"/>
2391
<xs:attribute name="prompt" type="Text"/>
2397
======================= Tables =======================================
2399
Derived from IETF HTML table standard, see [RFC1942]
2403
<xs:simpleType name="TFrame">
2406
The border attribute sets the thickness of the frame around the
2407
table. The default units are screen pixels.
2409
The frame attribute specifies which parts of the frame around
2410
the table should be rendered. The values are not the same as
2411
CALS to avoid a name clash with the valign attribute.
2414
<xs:restriction base="xs:token">
2415
<xs:enumeration value="void"/>
2416
<xs:enumeration value="above"/>
2417
<xs:enumeration value="below"/>
2418
<xs:enumeration value="hsides"/>
2419
<xs:enumeration value="lhs"/>
2420
<xs:enumeration value="rhs"/>
2421
<xs:enumeration value="vsides"/>
2422
<xs:enumeration value="box"/>
2423
<xs:enumeration value="border"/>
2427
<xs:simpleType name="TRules">
2430
The rules attribute defines which rules to draw between cells:
2432
If rules is absent then assume:
2433
"none" if border is absent or border="0" otherwise "all"
2436
<xs:restriction base="xs:token">
2437
<xs:enumeration value="none"/>
2438
<xs:enumeration value="groups"/>
2439
<xs:enumeration value="rows"/>
2440
<xs:enumeration value="cols"/>
2441
<xs:enumeration value="all"/>
2445
<xs:simpleType name="TAlign">
2448
horizontal placement of table relative to document
2451
<xs:restriction base="xs:token">
2452
<xs:enumeration value="left"/>
2453
<xs:enumeration value="center"/>
2454
<xs:enumeration value="right"/>
2458
<xs:attributeGroup name="cellhalign">
2461
horizontal alignment attributes for cell contents
2463
char alignment char, e.g. char=':'
2464
charoff offset for alignment char
2467
<xs:attribute name="align">
2469
<xs:restriction base="xs:token">
2470
<xs:enumeration value="left"/>
2471
<xs:enumeration value="center"/>
2472
<xs:enumeration value="right"/>
2473
<xs:enumeration value="justify"/>
2474
<xs:enumeration value="char"/>
2478
<xs:attribute name="char" type="Character"/>
2479
<xs:attribute name="charoff" type="Length"/>
2480
</xs:attributeGroup>
2482
<xs:attributeGroup name="cellvalign">
2485
vertical alignment attributes for cell contents
2488
<xs:attribute name="valign">
2490
<xs:restriction base="xs:token">
2491
<xs:enumeration value="top"/>
2492
<xs:enumeration value="middle"/>
2493
<xs:enumeration value="bottom"/>
2494
<xs:enumeration value="baseline"/>
2498
</xs:attributeGroup>
2500
<xs:element name="table">
2503
<xs:element minOccurs="0" ref="caption"/>
2505
<xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
2506
<xs:element minOccurs="0" maxOccurs="unbounded" ref="colgroup"/>
2508
<xs:element minOccurs="0" ref="thead"/>
2509
<xs:element minOccurs="0" ref="tfoot"/>
2511
<xs:element maxOccurs="unbounded" ref="tbody"/>
2512
<xs:element maxOccurs="unbounded" ref="tr"/>
2515
<xs:attributeGroup ref="attrs"/>
2516
<xs:attribute name="summary" type="Text"/>
2517
<xs:attribute name="width" type="Length"/>
2518
<xs:attribute name="border" type="Pixels"/>
2519
<xs:attribute name="frame" type="TFrame"/>
2520
<xs:attribute name="rules" type="TRules"/>
2521
<xs:attribute name="cellspacing" type="Length"/>
2522
<xs:attribute name="cellpadding" type="Length"/>
2523
<xs:attribute name="align" type="TAlign"/>
2524
<xs:attribute name="bgcolor" type="Color"/>
2528
<xs:simpleType name="CAlign">
2529
<xs:restriction base="xs:token">
2530
<xs:enumeration value="top"/>
2531
<xs:enumeration value="bottom"/>
2532
<xs:enumeration value="left"/>
2533
<xs:enumeration value="right"/>
2537
<xs:element name="caption">
2538
<xs:complexType mixed="true">
2540
<xs:extension base="Inline">
2541
<xs:attributeGroup ref="attrs"/>
2542
<xs:attribute name="align" type="CAlign"/>
2544
</xs:complexContent>
2550
Use thead to duplicate headers when breaking table
2551
across page boundaries, or for static headers when
2552
tbody sections are rendered in scrolling panel.
2554
Use tfoot to duplicate footers when breaking table
2555
across page boundaries, or for static footers when
2556
tbody sections are rendered in scrolling panel.
2558
Use multiple tbody sections when rules are needed
2559
between groups of table rows.
2563
<xs:element name="thead">
2566
<xs:element maxOccurs="unbounded" ref="tr"/>
2568
<xs:attributeGroup ref="attrs"/>
2569
<xs:attributeGroup ref="cellhalign"/>
2570
<xs:attributeGroup ref="cellvalign"/>
2574
<xs:element name="tfoot">
2577
<xs:element maxOccurs="unbounded" ref="tr"/>
2579
<xs:attributeGroup ref="attrs"/>
2580
<xs:attributeGroup ref="cellhalign"/>
2581
<xs:attributeGroup ref="cellvalign"/>
2585
<xs:element name="tbody">
2588
<xs:element maxOccurs="unbounded" ref="tr"/>
2590
<xs:attributeGroup ref="attrs"/>
2591
<xs:attributeGroup ref="cellhalign"/>
2592
<xs:attributeGroup ref="cellvalign"/>
2596
<xs:element name="colgroup">
2599
colgroup groups a set of col elements. It allows you to group
2600
several semantically related columns together.
2605
<xs:element minOccurs="0" maxOccurs="unbounded" ref="col"/>
2607
<xs:attributeGroup ref="attrs"/>
2608
<xs:attribute name="span" default="1" type="Number"/>
2609
<xs:attribute name="width" type="MultiLength"/>
2610
<xs:attributeGroup ref="cellhalign"/>
2611
<xs:attributeGroup ref="cellvalign"/>
2615
<xs:element name="col">
2618
col elements define the alignment properties for cells in
2619
one or more columns.
2621
The width attribute specifies the width of the columns, e.g.
2623
width=64 width in screen pixels
2624
width=0.5* relative width of 0.5
2626
The span attribute causes the attributes of one
2627
col element to apply to more than one column.
2631
<xs:attributeGroup ref="attrs"/>
2632
<xs:attribute name="span" default="1" type="Number"/>
2633
<xs:attribute name="width" type="MultiLength"/>
2634
<xs:attributeGroup ref="cellhalign"/>
2635
<xs:attributeGroup ref="cellvalign"/>
2639
<xs:element name="tr">
2641
<xs:choice maxOccurs="unbounded">
2642
<xs:element ref="th"/>
2643
<xs:element ref="td"/>
2645
<xs:attributeGroup ref="attrs"/>
2646
<xs:attributeGroup ref="cellhalign"/>
2647
<xs:attributeGroup ref="cellvalign"/>
2648
<xs:attribute name="bgcolor" type="Color"/>
2652
<xs:simpleType name="Scope">
2655
Scope is simpler than headers attribute for common tables
2658
<xs:restriction base="xs:token">
2659
<xs:enumeration value="row"/>
2660
<xs:enumeration value="col"/>
2661
<xs:enumeration value="rowgroup"/>
2662
<xs:enumeration value="colgroup"/>
2668
th is for headers, td for data and for cells acting as both
2672
<xs:element name="th">
2673
<xs:complexType mixed="true">
2675
<xs:extension base="Flow">
2676
<xs:attributeGroup ref="attrs"/>
2677
<xs:attribute name="abbr" type="Text"/>
2678
<xs:attribute name="axis"/>
2679
<xs:attribute name="headers" type="xs:IDREFS"/>
2680
<xs:attribute name="scope" type="Scope"/>
2681
<xs:attribute name="rowspan" default="1" type="Number"/>
2682
<xs:attribute name="colspan" default="1" type="Number"/>
2683
<xs:attributeGroup ref="cellhalign"/>
2684
<xs:attributeGroup ref="cellvalign"/>
2685
<xs:attribute name="nowrap">
2687
<xs:restriction base="xs:token">
2688
<xs:enumeration value="nowrap"/>
2692
<xs:attribute name="bgcolor" type="Color"/>
2693
<xs:attribute name="width" type="Length"/>
2694
<xs:attribute name="height" type="Length"/>
2696
</xs:complexContent>
2700
<xs:element name="td">
2701
<xs:complexType mixed="true">
2703
<xs:extension base="Flow">
2704
<xs:attributeGroup ref="attrs"/>
2705
<xs:attribute name="abbr" type="Text"/>
2706
<xs:attribute name="axis"/>
2707
<xs:attribute name="headers" type="xs:IDREFS"/>
2708
<xs:attribute name="scope" type="Scope"/>
2709
<xs:attribute name="rowspan" default="1" type="Number"/>
2710
<xs:attribute name="colspan" default="1" type="Number"/>
2711
<xs:attributeGroup ref="cellhalign"/>
2712
<xs:attributeGroup ref="cellvalign"/>
2713
<xs:attribute name="nowrap">
2715
<xs:restriction base="xs:token">
2716
<xs:enumeration value="nowrap"/>
2720
<xs:attribute name="bgcolor" type="Color"/>
2721
<xs:attribute name="width" type="Length"/>
2722
<xs:attribute name="height" type="Length"/>
2724
</xs:complexContent>
2730
================== FML Specific =====================================
2736
================ Document Structure ==================================
2740
<xs:element name="faqs">
2742
<xs:documentation source="version">1.0.0</xs:documentation>
2743
<xs:documentation source="description">
2744
The <faqs/> element is the root of the FML descriptor.
2749
<xs:element ref="part" minOccurs="1" maxOccurs="unbounded">
2751
<xs:documentation source="version">1.0.0</xs:documentation>
2752
<xs:documentation source="description">
2753
Required part element for this faqs element.
2758
<xs:attributeGroup ref="i18n"/>
2759
<xs:attribute name="id" type="xs:string" default="FAQ">
2761
<xs:documentation source="version">1.0.0</xs:documentation>
2762
<xs:documentation source="description">
2763
The identifier for this faqs element.
2767
<xs:attribute name="title" type="Text" default="Frequently Asked Questions">
2769
<xs:documentation source="version">1.0.0</xs:documentation>
2770
<xs:documentation source="description">
2771
The title for this faqs element.
2775
<xs:attribute name="toplink" type="xs:boolean" default="true">
2777
<xs:documentation source="version">1.0.0</xs:documentation>
2778
<xs:documentation source="description">
2779
Boolean to generate optionally [top] links.
2786
<xs:element name="part">
2788
<xs:documentation source="version">1.0</xs:documentation>
2789
<xs:documentation source="description">
2790
A part element of the faqs element.
2795
<xs:element ref="title" minOccurs="0" maxOccurs="1">
2797
<xs:documentation source="version">1.0.0</xs:documentation>
2798
<xs:documentation source="description">
2799
Optional title for this part element.
2803
<xs:element ref="faq" minOccurs="1" maxOccurs="unbounded">
2805
<xs:documentation source="version">1.0.0</xs:documentation>
2806
<xs:documentation source="description">
2807
Required faq element for this part element.
2812
<xs:attribute name="id" type="xs:string">
2814
<xs:documentation source="version">1.0.0</xs:documentation>
2815
<xs:documentation source="description">
2816
The identifier for this part element.
2823
<xs:element name="faq">
2825
<xs:documentation source="version">1.0.0</xs:documentation>
2826
<xs:documentation source="description">
2830
<xs:complexType mixed="true">
2832
<xs:element ref="question" minOccurs="1" maxOccurs="1">
2834
<xs:documentation source="version">1.0.0</xs:documentation>
2835
<xs:documentation source="description">
2836
The question of this faq element.
2840
<xs:element ref="answer" minOccurs="1" maxOccurs="1">
2842
<xs:documentation source="version">1.0.0</xs:documentation>
2843
<xs:documentation source="description">
2844
The answer of this faq element.
2849
<xs:attribute name="id" type="xs:string">
2851
<xs:documentation source="version">1.0.0</xs:documentation>
2852
<xs:documentation source="description">
2853
The identifier of this faq element.
2860
<xs:element name="question">
2862
<xs:documentation source="version">1.0.0</xs:documentation>
2863
<xs:documentation source="description">
2864
A faq question element.
2867
<xs:complexType mixed="true">
2869
<xs:group ref="fontstyle" minOccurs="0" maxOccurs="unbounded"/>
2870
<xs:group ref="phrase" minOccurs="0" maxOccurs="unbounded"/>
2875
<xs:element name="answer">
2877
<xs:documentation source="version">1.0.0</xs:documentation>
2878
<xs:documentation source="description">
2879
A faq answer element.
2882
<xs:complexType mixed="true">
2883
<xs:choice minOccurs="0" maxOccurs="unbounded">
2884
<xs:group ref="block"/>
2885
<xs:element ref="form"/>
2886
<xs:group ref="inline"/>
2887
<xs:group ref="misc"/>
2894
================ Document Addons =====================================
2895
See "special.extra" group.
2899
<xs:element name="source">
2901
<xs:documentation source="version">1.0.0</xs:documentation>
2902
<xs:documentation source="description">
2906
<xs:complexType mixed="true">
2908
<xs:any minOccurs="0" maxOccurs="unbounded" processContents="skip"/>
b'\\ No newline at end of file'