markup_validity 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. data/CHANGELOG.rdoc +10 -0
  2. data/Manifest.txt +88 -0
  3. data/Rakefile +7 -11
  4. data/lib/markup_validity.rb +1 -1
  5. data/lib/markup_validity/MarkUp.html +1095 -0
  6. data/lib/markup_validity/SCHEMA.html +90 -0
  7. data/lib/markup_validity/assertions.rb +8 -1
  8. data/lib/markup_validity/examples.html +25 -0
  9. data/lib/markup_validity/rspec.rb +19 -0
  10. data/lib/markup_validity/templates.html +15 -0
  11. data/lib/markup_validity/validator.rb +27 -1
  12. data/lib/markup_validity/xframes-1.xsd +166 -0
  13. data/lib/markup_validity/xhtml-access-1.xsd +43 -0
  14. data/lib/markup_validity/xhtml-applet-1.xsd +66 -0
  15. data/lib/markup_validity/xhtml-attribs-1.xsd +67 -0
  16. data/lib/markup_validity/xhtml-base-1.xsd +31 -0
  17. data/lib/markup_validity/xhtml-basic-form-1.xsd +195 -0
  18. data/lib/markup_validity/xhtml-basic-table-1.xsd +169 -0
  19. data/lib/markup_validity/xhtml-basic10-model-1.xsd +385 -0
  20. data/lib/markup_validity/xhtml-basic10-module-redefines-1.xsd +61 -0
  21. data/lib/markup_validity/xhtml-basic10-modules-1.xsd +233 -0
  22. data/lib/markup_validity/xhtml-basic10.xsd +99 -0
  23. data/lib/markup_validity/xhtml-basic11-model-1.xsd +622 -0
  24. data/lib/markup_validity/xhtml-basic11-modules-1.xsd +508 -0
  25. data/lib/markup_validity/xhtml-basic11.xsd +105 -0
  26. data/lib/markup_validity/xhtml-bdo-1.xsd +72 -0
  27. data/lib/markup_validity/xhtml-blkphras-1.xsd +155 -0
  28. data/lib/markup_validity/xhtml-blkpres-1.xsd +32 -0
  29. data/lib/markup_validity/xhtml-blkstruct-1.xsd +44 -0
  30. data/lib/markup_validity/xhtml-charent-1.xsd +38 -0
  31. data/lib/markup_validity/xhtml-copyright-1.xsd +29 -0
  32. data/lib/markup_validity/xhtml-csismap-1.xsd +91 -0
  33. data/lib/markup_validity/xhtml-datatypes-1.xsd +177 -0
  34. data/lib/markup_validity/xhtml-edit-1.xsd +34 -0
  35. data/lib/markup_validity/xhtml-events-1.xsd +130 -0
  36. data/lib/markup_validity/xhtml-form-1.xsd +321 -0
  37. data/lib/markup_validity/xhtml-frames-1.xsd +113 -0
  38. data/lib/markup_validity/xhtml-framework-1.xsd +62 -0
  39. data/lib/markup_validity/xhtml-hypertext-1.xsd +47 -0
  40. data/lib/markup_validity/xhtml-iframe-1.xsd +68 -0
  41. data/lib/markup_validity/xhtml-image-1.xsd +40 -0
  42. data/lib/markup_validity/xhtml-inlphras-1.xsd +158 -0
  43. data/lib/markup_validity/xhtml-inlpres-1.xsd +34 -0
  44. data/lib/markup_validity/xhtml-inlstruct-1.xsd +45 -0
  45. data/lib/markup_validity/xhtml-inlstyle-1.xsd +22 -0
  46. data/lib/markup_validity/xhtml-inputmode-1.xsd +35 -0
  47. data/lib/markup_validity/xhtml-lat1.ent +196 -0
  48. data/lib/markup_validity/xhtml-legacy-1.xsd +97 -0
  49. data/lib/markup_validity/xhtml-link-1.xsd +45 -0
  50. data/lib/markup_validity/xhtml-list-1.xsd +94 -0
  51. data/lib/markup_validity/xhtml-meta-1.xsd +54 -0
  52. data/lib/markup_validity/xhtml-metaAttributes-1.xsd +39 -0
  53. data/lib/markup_validity/xhtml-misc-1.xsd +441 -0
  54. data/lib/markup_validity/xhtml-nameident-1.xsd +63 -0
  55. data/lib/markup_validity/xhtml-notations-1.xsd +69 -0
  56. data/lib/markup_validity/xhtml-object-1.xsd +71 -0
  57. data/lib/markup_validity/xhtml-param-1.xsd +46 -0
  58. data/lib/markup_validity/xhtml-pres-1.xsd +46 -0
  59. data/lib/markup_validity/xhtml-print-1.xsd +85 -0
  60. data/lib/markup_validity/xhtml-print-model-1.xsd +604 -0
  61. data/lib/markup_validity/xhtml-print-modules-1.xsd +422 -0
  62. data/lib/markup_validity/xhtml-rdfa-1.dtd +438 -0
  63. data/lib/markup_validity/xhtml-rdfa-1.xsd +116 -0
  64. data/lib/markup_validity/xhtml-rdfa-model-1.xsd +461 -0
  65. data/lib/markup_validity/xhtml-rdfa-modules-1.xsd +548 -0
  66. data/lib/markup_validity/xhtml-ruby-1.xsd +170 -0
  67. data/lib/markup_validity/xhtml-ruby-basic-1.xsd +84 -0
  68. data/lib/markup_validity/xhtml-script-1.xsd +65 -0
  69. data/lib/markup_validity/xhtml-special.ent +80 -0
  70. data/lib/markup_validity/xhtml-ssismap-1.xsd +38 -0
  71. data/lib/markup_validity/xhtml-struct-1.xsd +85 -0
  72. data/lib/markup_validity/xhtml-style-1.xsd +47 -0
  73. data/lib/markup_validity/xhtml-symbol.ent +237 -0
  74. data/lib/markup_validity/xhtml-table-1.xsd +267 -0
  75. data/lib/markup_validity/xhtml-target-1.xsd +49 -0
  76. data/lib/markup_validity/xhtml-text-1.xsd +62 -0
  77. data/lib/markup_validity/xhtml1-strict.dtd +978 -0
  78. data/lib/markup_validity/xhtml1-transitional.dtd +1201 -0
  79. data/lib/markup_validity/xhtml11-model-1.xsd +715 -0
  80. data/lib/markup_validity/xhtml11-module-redefines-1.xsd +335 -0
  81. data/lib/markup_validity/xhtml11-modules-1.xsd +605 -0
  82. data/lib/markup_validity/xhtml11.xsd +107 -0
  83. data/lib/markup_validity/xhtml2.xsd +21 -0
  84. data/lib/markup_validity/xml-events-1.xsd +73 -0
  85. data/lib/markup_validity/xml-events-2.xsd +73 -0
  86. data/lib/markup_validity/xml-events-attribs-1.xsd +73 -0
  87. data/lib/markup_validity/xml-events-attribs-2.xsd +75 -0
  88. data/lib/markup_validity/xml-events-copyright-1.xsd +34 -0
  89. data/lib/markup_validity/xml-events-copyright-2.xsd +34 -0
  90. data/lib/markup_validity/xml-handlers-1.xsd +136 -0
  91. data/lib/markup_validity/xml-handlers-2.xsd +98 -0
  92. data/lib/markup_validity/xml-script-1.xsd +38 -0
  93. data/spec/matcher_spec.rb +8 -0
  94. data/test/assets/invalid_entity.xhtml +109 -0
  95. data/test/assets/invalid_entity_transitional.xhtml +109 -0
  96. data/test/helper.rb +48 -0
  97. data/test/test_markup_validity.rb +19 -0
  98. metadata +90 -3
@@ -0,0 +1,116 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3.org/1999/xhtml" xmlns:xh11d="http://www.w3.org/1999/xhtml/datatypes/" xmlns="http://www.w3.org/1999/xhtml" elementFormDefault="qualified">
3
+ <xs:annotation>
4
+ <xs:documentation> This is the XML Schema driver for XHTML + RDFa Please use this namespace
5
+ for XHTML elements: "http://www.w3.org/1999/xhtml" $Id: xhtml-rdfa-1.xsd,v 1.2
6
+ 2008/07/02 13:26:46 ahby Exp $ </xs:documentation>
7
+ <xs:documentation source="xhtml-copyright-1.xsd"/>
8
+ </xs:annotation>
9
+ <xs:annotation>
10
+ <xs:documentation> This is the Schema Driver file for XHTML + RDFa Document Type This schema
11
+ + imports external schemas (xml.xsd) + refedines (and include)s schema modules for
12
+ XHTML1.1 Document Type. + includes Schema for Named content model for the XHTML1.1
13
+ Document Type XHTML1.1 Document Type includes the following Modules XHTML Core modules
14
+ (Required for XHTML Family Conformance) + text + hypertext + lists + structure Other
15
+ XHTML modules + Edit + Bdo + Presentational + Link + Meta + Base + Scripting + Style +
16
+ Image + Applet + Object + Param (Applet/Object modules require Param Module) + Tables +
17
+ Forms + Client side image maps + Server side image maps + Ruby </xs:documentation>
18
+ </xs:annotation>
19
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd">
20
+ <xs:annotation>
21
+ <xs:documentation> This import brings in the XML namespace attributes The XML attributes
22
+ are used by various modules. </xs:documentation>
23
+ </xs:annotation>
24
+ </xs:import>
25
+ <xs:import namespace="http://www.w3.org/1999/xhtml/datatypes/" schemaLocation="xhtml-datatypes-1.xsd"/>
26
+ <xs:include schemaLocation="xhtml-rdfa-model-1.xsd">
27
+ <xs:annotation>
28
+ <xs:documentation> Document Model module for the XHTML+RDFa Document Type. This schema
29
+ file defines all named models used by XHTML Modularization Framework for XHTML+RDFa
30
+ Document Type </xs:documentation>
31
+ </xs:annotation>
32
+ </xs:include>
33
+ <xs:include schemaLocation="xhtml-rdfa-modules-1.xsd">
34
+ <xs:annotation>
35
+ <xs:documentation> Schema that includes all modules (and redefinitions) for XHTML1.1
36
+ Document Type. </xs:documentation>
37
+ </xs:annotation>
38
+ </xs:include>
39
+ <!-- link, meta, and a need to be defined directly here -->
40
+ <xs:attributeGroup name="xhtml.a.attlist">
41
+ <xs:attributeGroup ref="xhtml.Common.attrib"/>
42
+ <xs:attribute name="href" type="xh11d:URI"/>
43
+ <xs:attribute name="charset" type="xh11d:Charset"/>
44
+ <xs:attribute name="type" type="xh11d:ContentType"/>
45
+ <xs:attribute name="hreflang" type="xh11d:LanguageCode"/>
46
+ <xs:attribute name="accesskey" type="xh11d:Character"/>
47
+ <xs:attribute name="tabindex" type="xh11d:Number"/>
48
+ <xs:attributeGroup ref="xhtml.a.csim.attlist">
49
+ <xs:annotation>
50
+ <xs:documentation>
51
+ Redefinition by Client Side Image Map Module
52
+ </xs:documentation>
53
+ </xs:annotation>
54
+ </xs:attributeGroup>
55
+ <xs:attributeGroup ref="xhtml.a.events.attlist">
56
+ <xs:annotation>
57
+ <xs:documentation>
58
+ Redefinition by XHTML Event Attribute Module
59
+ </xs:documentation>
60
+ </xs:annotation>
61
+ </xs:attributeGroup>
62
+ <xs:attributeGroup ref="xhtml.a.target.attlist">
63
+ <xs:annotation>
64
+ <xs:documentation>
65
+ Target Module - A Attribute Additions
66
+ </xs:documentation>
67
+ </xs:annotation>
68
+ </xs:attributeGroup>
69
+ </xs:attributeGroup>
70
+ <xs:group name="xhtml.a.content">
71
+ <xs:sequence>
72
+ <xs:group ref="xhtml.InlNoAnchor.mix" minOccurs="0" maxOccurs="unbounded"/>
73
+ </xs:sequence>
74
+ </xs:group>
75
+ <xs:complexType name="xhtml.a.type" mixed="true">
76
+ <xs:group ref="xhtml.a.content"/>
77
+ <xs:attributeGroup ref="xhtml.a.attlist"/>
78
+ </xs:complexType>
79
+ <xs:attributeGroup name="xhtml.link.attlist">
80
+ <xs:attributeGroup ref="xhtml.Common.attrib"/>
81
+ <xs:attribute name="charset" type="xh11d:Charset"/>
82
+ <xs:attribute name="href" type="xh11d:URI"/>
83
+ <xs:attribute name="hreflang" type="xh11d:LanguageCode"/>
84
+ <xs:attribute name="type" type="xh11d:ContentType"/>
85
+ <xs:attribute name="media" type="xh11d:MediaDesc"/>
86
+ </xs:attributeGroup>
87
+ <xs:group name="xhtml.link.content">
88
+ <xs:sequence/>
89
+ </xs:group>
90
+ <xs:complexType name="xhtml.link.type">
91
+ <xs:group ref="xhtml.link.content"/>
92
+ <xs:attributeGroup ref="xhtml.link.attlist"/>
93
+ </xs:complexType>
94
+ <xs:attributeGroup name="xhtml.meta.attlist">
95
+ <xs:attributeGroup ref="xhtml.I18n.attrib"/>
96
+ <xs:attribute ref="xml:space"/>
97
+ <xs:attribute name="http-equiv" type="xs:NMTOKEN"/>
98
+ <xs:attribute name="name" type="xs:NMTOKEN"/>
99
+ <xs:attribute name="content" type="xh11d:CDATA" use="required"/>
100
+ <xs:attribute name="scheme" type="xh11d:CDATA"/>
101
+ <xs:attribute name="about" type="xh11d:URIorSafeCURIE"/>
102
+ <xs:attribute name="datatype" type="xh11d:CURIE"/>
103
+ <xs:attribute name="typeof" type="xh11d:CURIEs"/>
104
+ <xs:attribute name="property" type="xh11d:CURIEs"/>
105
+ <xs:attribute name="rel" type="xh11d:CURIEs"/>
106
+ <xs:attribute name="resource" type="xh11d:URIorSafeCURIE"/>
107
+ <xs:attribute name="rev" type="xh11d:CURIEs"/>
108
+ </xs:attributeGroup>
109
+ <xs:group name="xhtml.meta.content">
110
+ <xs:sequence/>
111
+ </xs:group>
112
+ <xs:complexType name="xhtml.meta.type">
113
+ <xs:group ref="xhtml.meta.content"/>
114
+ <xs:attributeGroup ref="xhtml.meta.attlist"/>
115
+ </xs:complexType>
116
+ </xs:schema>
@@ -0,0 +1,461 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xh11d="http://www.w3.org/1999/xhtml/datatypes/" elementFormDefault="qualified">
3
+ <xs:import namespace="http://www.w3.org/1999/xhtml/datatypes/" schemaLocation="xhtml-datatypes-1.xsd"/>
4
+ <xs:annotation>
5
+ <xs:documentation>
6
+ This is the XML Schema module of common content models for XHTML11
7
+
8
+ $Id: xhtml-rdfa-model-1.xsd,v 1.5 2008/07/05 04:30:45 smccarro Exp $
9
+ </xs:documentation>
10
+ <xs:documentation source="xhtml-copyright-1.xsd"/>
11
+ </xs:annotation>
12
+ <xs:annotation>
13
+ <xs:documentation>
14
+ XHTML Document Model
15
+ This module describes the groupings of elements/attributes
16
+ that make up common content models for XHTML elements.
17
+ XHTML has following basic content models:
18
+ xhtml.Inline.mix; character-level elements
19
+ xhtml.Block.mix; block-like elements, e.g., paragraphs and lists
20
+ xhtml.Flow.mix; any block or inline elements
21
+ xhtml.HeadOpts.mix; Head Elements
22
+ xhtml.InlinePre.mix; Special class for pre content model
23
+ xhtml.InlineNoAnchor.mix; Content model for Anchor
24
+
25
+ Any groups declared in this module may be used to create
26
+ element content models, but the above are considered 'global'
27
+ (insofar as that term applies here). XHTML has the
28
+ following Attribute Groups
29
+ xhtml.Core.extra.attrib
30
+ xhtml.I18n.extra.attrib
31
+ xhtml.Common.extra
32
+
33
+ The above attribute Groups are considered Global
34
+ </xs:documentation>
35
+ </xs:annotation>
36
+ <xs:include schemaLocation="xhtml-metaAttributes-1.xsd">
37
+ <xs:annotation>
38
+ <xs:documentation>
39
+ XHTML Metainformation Modules
40
+
41
+ Attributes defined here:
42
+ XHTML RDFa attribtues
43
+ </xs:documentation>
44
+ <xs:documentation source="http://www.w3.org/TR/rdfa-syntax"/>
45
+ </xs:annotation>
46
+ </xs:include>
47
+ <xs:attributeGroup name="xhtml.I18n.extra.attrib">
48
+ <xs:annotation>
49
+ <xs:documentation> Extended I18n attribute </xs:documentation>
50
+ </xs:annotation>
51
+ <xs:attributeGroup ref="xhtml.dir.attrib">
52
+ <xs:annotation>
53
+ <xs:documentation>
54
+ "dir" Attribute from Bi Directional Text (bdo) Module
55
+ </xs:documentation>
56
+ </xs:annotation>
57
+ </xs:attributeGroup>
58
+ </xs:attributeGroup>
59
+ <xs:attributeGroup name="xhtml.Common.extra">
60
+ <xs:annotation>
61
+ <xs:documentation> Extended Common Attributes </xs:documentation>
62
+ </xs:annotation>
63
+ <xs:attributeGroup ref="xhtml.style.attrib">
64
+ <xs:annotation>
65
+ <xs:documentation>
66
+ "style" attribute from Inline Style Module
67
+ </xs:documentation>
68
+ </xs:annotation>
69
+ </xs:attributeGroup>
70
+ <xs:attributeGroup ref="xhtml.Events.attrib">
71
+ <xs:annotation>
72
+ <xs:documentation>
73
+ Attributes from Events Module
74
+ </xs:documentation>
75
+ </xs:annotation>
76
+ </xs:attributeGroup>
77
+ <xs:attributeGroup ref="xhtml.metaAttributes.attrib">
78
+ <xs:annotation>
79
+ <xs:documentation>
80
+ Attributes from Metainformation Module
81
+ </xs:documentation>
82
+ </xs:annotation>
83
+ </xs:attributeGroup>
84
+ </xs:attributeGroup>
85
+ <xs:attributeGroup name="xhtml.Core.extra.attrib">
86
+ <xs:annotation>
87
+ <xs:documentation> Extend Core Attributes </xs:documentation>
88
+ </xs:annotation>
89
+ </xs:attributeGroup>
90
+ <xs:attributeGroup name="xhtml.Global.core.extra.attrib">
91
+ <xs:annotation>
92
+ <xs:documentation> Extended Global Core Attributes </xs:documentation>
93
+ </xs:annotation>
94
+ </xs:attributeGroup>
95
+ <xs:attributeGroup name="xhtml.Global.I18n.extra.attrib">
96
+ <xs:annotation>
97
+ <xs:documentation> Extended Global I18n attributes </xs:documentation>
98
+ </xs:annotation>
99
+ </xs:attributeGroup>
100
+ <xs:attributeGroup name="xhtml.Global.Common.extra">
101
+ <xs:annotation>
102
+ <xs:documentation> Extended Global Common Attributes </xs:documentation>
103
+ </xs:annotation>
104
+ </xs:attributeGroup>
105
+ <xs:group name="xhtml.Head.extra">
106
+ <xs:sequence/>
107
+ </xs:group>
108
+ <xs:group name="xhtml.HeadOpts.mix">
109
+ <xs:choice>
110
+ <xs:element name="script" type="xhtml.script.type"/>
111
+ <xs:element name="style" type="xhtml.style.type"/>
112
+ <xs:element name="meta" type="xhtml.meta.type"/>
113
+ <xs:element name="link" type="xhtml.link.type"/>
114
+ <xs:element name="object" type="xhtml.object.type"/>
115
+ <xs:group ref="xhtml.Head.extra"/>
116
+ </xs:choice>
117
+ </xs:group>
118
+ <xs:group name="xhtml.head.content">
119
+ <xs:sequence>
120
+ <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/>
121
+ <xs:choice>
122
+ <xs:sequence>
123
+ <xs:element name="title" minOccurs="1" maxOccurs="1" type="xhtml.title.type"/>
124
+ <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/>
125
+ <xs:sequence minOccurs="0">
126
+ <xs:element name="base" type="xhtml.base.type"/>
127
+ <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/>
128
+ </xs:sequence>
129
+ </xs:sequence>
130
+ <xs:sequence>
131
+ <xs:element name="base" type="xhtml.base.type" minOccurs="1" maxOccurs="1"/>
132
+ <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/>
133
+ <xs:element name="title" minOccurs="1" maxOccurs="1" type="xhtml.title.type"/>
134
+ <xs:group ref="xhtml.HeadOpts.mix" minOccurs="0" maxOccurs="unbounded"/>
135
+ </xs:sequence>
136
+ </xs:choice>
137
+ </xs:sequence>
138
+ </xs:group>
139
+ <!--
140
+ ins and del are used to denote editing changes
141
+ -->
142
+ <xs:group name="xhtml.Edit.class">
143
+ <xs:choice>
144
+ <xs:element name="ins" type="xhtml.edit.type"/>
145
+ <xs:element name="del" type="xhtml.edit.type"/>
146
+ </xs:choice>
147
+ </xs:group>
148
+ <!--
149
+ script and noscript are used to contain scripts
150
+ and alternative content
151
+ -->
152
+ <xs:group name="xhtml.Script.class">
153
+ <xs:choice>
154
+ <xs:element name="script" type="xhtml.script.type"/>
155
+ <xs:element name="noscript" type="xhtml.noscript.type"/>
156
+ </xs:choice>
157
+ </xs:group>
158
+ <xs:group name="xhtml.Misc.extra">
159
+ <xs:sequence/>
160
+ </xs:group>
161
+ <!--
162
+ These elements are neither block nor inline, and can
163
+ essentially be used anywhere in the document body.
164
+ -->
165
+ <xs:group name="xhtml.Misc.class">
166
+ <xs:choice>
167
+ <xs:group ref="xhtml.Edit.class"/>
168
+ <xs:group ref="xhtml.Script.class"/>
169
+ <xs:group ref="xhtml.Misc.extra"/>
170
+ </xs:choice>
171
+ </xs:group>
172
+ <!-- Inline Elements -->
173
+ <xs:group name="xhtml.InlStruct.class">
174
+ <xs:choice>
175
+ <xs:element name="br" type="xhtml.br.type"/>
176
+ <xs:element name="span" type="xhtml.span.type"/>
177
+ </xs:choice>
178
+ </xs:group>
179
+ <xs:group name="xhtml.InlPhras.class">
180
+ <xs:choice>
181
+ <xs:element name="em" type="xhtml.em.type"/>
182
+ <xs:element name="strong" type="xhtml.strong.type"/>
183
+ <xs:element name="dfn" type="xhtml.dfn.type"/>
184
+ <xs:element name="code" type="xhtml.code.type"/>
185
+ <xs:element name="samp" type="xhtml.samp.type"/>
186
+ <xs:element name="kbd" type="xhtml.kbd.type"/>
187
+ <xs:element name="var" type="xhtml.var.type"/>
188
+ <xs:element name="cite" type="xhtml.cite.type"/>
189
+ <xs:element name="abbr" type="xhtml.abbr.type"/>
190
+ <xs:element name="acronym" type="xhtml.acronym.type"/>
191
+ <xs:element name="q" type="xhtml.q.type"/>
192
+ </xs:choice>
193
+ </xs:group>
194
+ <xs:group name="xhtml.InlPres.class">
195
+ <xs:choice>
196
+ <xs:element name="tt" type="xhtml.InlPres.type"/>
197
+ <xs:element name="i" type="xhtml.InlPres.type"/>
198
+ <xs:element name="b" type="xhtml.InlPres.type"/>
199
+ <xs:element name="big" type="xhtml.InlPres.type"/>
200
+ <xs:element name="small" type="xhtml.InlPres.type"/>
201
+ <xs:element name="sub" type="xhtml.InlPres.type"/>
202
+ <xs:element name="sup" type="xhtml.InlPres.type"/>
203
+ </xs:choice>
204
+ </xs:group>
205
+ <xs:group name="xhtml.I18n.class">
206
+ <xs:sequence>
207
+ <xs:element name="bdo" type="xhtml.bdo.type"/>
208
+ </xs:sequence>
209
+ </xs:group>
210
+ <xs:group name="xhtml.Anchor.class">
211
+ <xs:sequence>
212
+ <xs:element name="a" type="xhtml.a.type"/>
213
+ </xs:sequence>
214
+ </xs:group>
215
+ <xs:group name="xhtml.InlSpecial.class">
216
+ <xs:choice>
217
+ <xs:element name="img" type="xhtml.img.type"/>
218
+ <xs:element name="map" type="xhtml.map.type"/>
219
+ <xs:element name="object" type="xhtml.object.type"/>
220
+ </xs:choice>
221
+ </xs:group>
222
+ <xs:group name="xhtml.InlForm.class">
223
+ <xs:choice>
224
+ <xs:element name="input" type="xhtml.input.type"/>
225
+ <xs:element name="select" type="xhtml.select.type"/>
226
+ <xs:element name="textarea" type="xhtml.textarea.type"/>
227
+ <xs:element name="label" type="xhtml.label.type"/>
228
+ <xs:element name="button" type="xhtml.button.type"/>
229
+ </xs:choice>
230
+ </xs:group>
231
+ <xs:group name="xhtml.Inline.extra">
232
+ <xs:sequence/>
233
+ </xs:group>
234
+ <xs:group name="xhtml.Ruby.class">
235
+ <xs:sequence>
236
+ <xs:element name="ruby" type="xhtml.ruby.type"/>
237
+ </xs:sequence>
238
+ </xs:group>
239
+ <!--
240
+ Inline.class includes all inline elements,
241
+ used as a component in mixes
242
+ -->
243
+ <xs:group name="xhtml.Inline.class">
244
+ <xs:choice>
245
+ <xs:group ref="xhtml.InlStruct.class"/>
246
+ <xs:group ref="xhtml.InlPhras.class"/>
247
+ <xs:group ref="xhtml.InlPres.class"/>
248
+ <xs:group ref="xhtml.I18n.class"/>
249
+ <xs:group ref="xhtml.Anchor.class"/>
250
+ <xs:group ref="xhtml.InlSpecial.class"/>
251
+ <xs:group ref="xhtml.InlForm.class"/>
252
+ <xs:group ref="xhtml.Ruby.class"/>
253
+ <xs:group ref="xhtml.Inline.extra"/>
254
+ </xs:choice>
255
+ </xs:group>
256
+ <!--
257
+ InlNoRuby.class includes all inline elements
258
+ except ruby
259
+ -->
260
+ <xs:group name="xhtml.InlNoRuby.class">
261
+ <xs:choice>
262
+ <xs:group ref="xhtml.InlStruct.class"/>
263
+ <xs:group ref="xhtml.InlPhras.class"/>
264
+ <xs:group ref="xhtml.InlPres.class"/>
265
+ <xs:group ref="xhtml.I18n.class"/>
266
+ <xs:group ref="xhtml.Anchor.class"/>
267
+ <xs:group ref="xhtml.InlSpecial.class"/>
268
+ <xs:group ref="xhtml.InlForm.class"/>
269
+ <xs:group ref="xhtml.Inline.extra"/>
270
+ </xs:choice>
271
+ </xs:group>
272
+ <!--
273
+ InlinePre.mix
274
+ Used as a component in pre model
275
+ -->
276
+ <xs:group name="xhtml.InlinePre.mix">
277
+ <xs:choice>
278
+ <xs:group ref="xhtml.InlStruct.class"/>
279
+ <xs:group ref="xhtml.InlPhras.class"/>
280
+ <xs:element name="tt" type="xhtml.InlPres.type"/>
281
+ <xs:element name="i" type="xhtml.InlPres.type"/>
282
+ <xs:element name="b" type="xhtml.InlPres.type"/>
283
+ <xs:group ref="xhtml.I18n.class"/>
284
+ <xs:group ref="xhtml.Anchor.class"/>
285
+ <xs:group ref="xhtml.Misc.class"/>
286
+ <xs:element name="map" type="xhtml.map.type"/>
287
+ <xs:group ref="xhtml.Inline.extra"/>
288
+ </xs:choice>
289
+ </xs:group>
290
+ <!--
291
+ InlNoAnchor.class includes all non-anchor inlines,
292
+ used as a component in mixes
293
+ -->
294
+ <xs:group name="xhtml.InlNoAnchor.class">
295
+ <xs:choice>
296
+ <xs:group ref="xhtml.InlStruct.class"/>
297
+ <xs:group ref="xhtml.InlPhras.class"/>
298
+ <xs:group ref="xhtml.InlPres.class"/>
299
+ <xs:group ref="xhtml.I18n.class"/>
300
+ <xs:group ref="xhtml.InlSpecial.class"/>
301
+ <xs:group ref="xhtml.InlForm.class"/>
302
+ <xs:group ref="xhtml.Ruby.class"/>
303
+ <xs:group ref="xhtml.Inline.extra"/>
304
+ </xs:choice>
305
+ </xs:group>
306
+ <!--
307
+ InlNoAnchor.mix includes all non-anchor inlines
308
+ -->
309
+ <xs:group name="xhtml.InlNoAnchor.mix">
310
+ <xs:choice>
311
+ <xs:group ref="xhtml.InlNoAnchor.class"/>
312
+ <xs:group ref="xhtml.Misc.class"/>
313
+ </xs:choice>
314
+ </xs:group>
315
+ <!--
316
+ Inline.mix includes all inline elements, including Misc.class
317
+ -->
318
+ <xs:group name="xhtml.Inline.mix">
319
+ <xs:choice>
320
+ <xs:group ref="xhtml.Inline.class"/>
321
+ <xs:group ref="xhtml.Misc.class"/>
322
+ </xs:choice>
323
+ </xs:group>
324
+ <!--
325
+ InlNoRuby.mix includes all of inline.mix elements
326
+ except ruby
327
+ -->
328
+ <xs:group name="xhtml.InlNoRuby.mix">
329
+ <xs:choice>
330
+ <xs:group ref="xhtml.InlNoRuby.class"/>
331
+ <xs:group ref="xhtml.Misc.class"/>
332
+ </xs:choice>
333
+ </xs:group>
334
+ <!--
335
+ In the HTML 4 DTD, heading and list elements were included
336
+ in the block group. The Heading.class and
337
+ List.class groups must now be included explicitly
338
+ on element declarations where desired.
339
+ -->
340
+ <xs:group name="xhtml.Heading.class">
341
+ <xs:choice>
342
+ <xs:element name="h1" type="xhtml.h1.type"/>
343
+ <xs:element name="h2" type="xhtml.h2.type"/>
344
+ <xs:element name="h3" type="xhtml.h3.type"/>
345
+ <xs:element name="h4" type="xhtml.h4.type"/>
346
+ <xs:element name="h5" type="xhtml.h5.type"/>
347
+ <xs:element name="h6" type="xhtml.h6.type"/>
348
+ </xs:choice>
349
+ </xs:group>
350
+ <xs:group name="xhtml.List.class">
351
+ <xs:choice>
352
+ <xs:element name="ul" type="xhtml.ul.type"/>
353
+ <xs:element name="ol" type="xhtml.ol.type"/>
354
+ <xs:element name="dl" type="xhtml.dl.type"/>
355
+ </xs:choice>
356
+ </xs:group>
357
+ <xs:group name="xhtml.Table.class">
358
+ <xs:choice>
359
+ <xs:element name="table" type="xhtml.table.type"/>
360
+ </xs:choice>
361
+ </xs:group>
362
+ <xs:group name="xhtml.Form.class">
363
+ <xs:choice>
364
+ <xs:element name="form" type="xhtml.form.type"/>
365
+ </xs:choice>
366
+ </xs:group>
367
+ <xs:group name="xhtml.Fieldset.class">
368
+ <xs:choice>
369
+ <xs:element name="fieldset" type="xhtml.fieldset.type"/>
370
+ </xs:choice>
371
+ </xs:group>
372
+ <xs:group name="xhtml.BlkStruct.class">
373
+ <xs:choice>
374
+ <xs:element name="p" type="xhtml.p.type"/>
375
+ <xs:element name="div" type="xhtml.div.type"/>
376
+ </xs:choice>
377
+ </xs:group>
378
+ <xs:group name="xhtml.BlkPhras.class">
379
+ <xs:choice>
380
+ <xs:element name="pre" type="xhtml.pre.type"/>
381
+ <xs:element name="blockquote" type="xhtml.blockquote.type"/>
382
+ <xs:element name="address" type="xhtml.address.type"/>
383
+ </xs:choice>
384
+ </xs:group>
385
+ <xs:group name="xhtml.BlkPres.class">
386
+ <xs:sequence>
387
+ <xs:element name="hr" type="xhtml.hr.type"/>
388
+ </xs:sequence>
389
+ </xs:group>
390
+ <xs:group name="xhtml.BlkSpecial.class">
391
+ <xs:choice>
392
+ <xs:group ref="xhtml.Table.class"/>
393
+ <xs:group ref="xhtml.Form.class"/>
394
+ <xs:group ref="xhtml.Fieldset.class"/>
395
+ </xs:choice>
396
+ </xs:group>
397
+ <xs:group name="xhtml.Block.extra">
398
+ <xs:sequence/>
399
+ </xs:group>
400
+ <!--
401
+ Block.class includes all block elements,
402
+ used as an component in mixes
403
+ -->
404
+ <xs:group name="xhtml.Block.class">
405
+ <xs:choice>
406
+ <xs:group ref="xhtml.BlkStruct.class"/>
407
+ <xs:group ref="xhtml.BlkPhras.class"/>
408
+ <xs:group ref="xhtml.BlkPres.class"/>
409
+ <xs:group ref="xhtml.BlkSpecial.class"/>
410
+ <xs:group ref="xhtml.Block.extra"/>
411
+ </xs:choice>
412
+ </xs:group>
413
+ <!--
414
+ Block.mix includes all block elements plus %Misc.class;
415
+ -->
416
+ <xs:group name="xhtml.Block.mix">
417
+ <xs:choice>
418
+ <xs:group ref="xhtml.Heading.class"/>
419
+ <xs:group ref="xhtml.List.class"/>
420
+ <xs:group ref="xhtml.Block.class"/>
421
+ <xs:group ref="xhtml.Misc.class"/>
422
+ </xs:choice>
423
+ </xs:group>
424
+ <!--
425
+ All Content Elements
426
+ Flow.mix includes all text content, block and inline
427
+ Note that the "any" element included here allows us
428
+ to add data from any other namespace, a necessity
429
+ for compound document creation.
430
+ Note however that it is not possible to add
431
+ to any head level element without further
432
+ modification. To add RDF metadata to the head
433
+ of a document, modify the structure module.
434
+ -->
435
+ <xs:group name="xhtml.Flow.mix">
436
+ <xs:choice>
437
+ <xs:group ref="xhtml.Heading.class"/>
438
+ <xs:group ref="xhtml.List.class"/>
439
+ <xs:group ref="xhtml.Block.class"/>
440
+ <xs:group ref="xhtml.Inline.class"/>
441
+ <xs:group ref="xhtml.Misc.class"/>
442
+ </xs:choice>
443
+ </xs:group>
444
+ <!--
445
+ BlkNoForm.mix includes all non-form block elements,
446
+ plus Misc.class
447
+ -->
448
+ <xs:group name="xhtml.BlkNoForm.mix">
449
+ <xs:choice>
450
+ <xs:group ref="xhtml.Heading.class"/>
451
+ <xs:group ref="xhtml.List.class"/>
452
+ <xs:group ref="xhtml.BlkStruct.class"/>
453
+ <xs:group ref="xhtml.BlkPhras.class"/>
454
+ <xs:group ref="xhtml.BlkPres.class"/>
455
+ <xs:group ref="xhtml.Table.class"/>
456
+ <xs:group ref="xhtml.Block.extra"/>
457
+ <xs:group ref="xhtml.Misc.class"/>
458
+ </xs:choice>
459
+ </xs:group>
460
+ <xs:element name="html" type="xhtml.html.type"/>
461
+ </xs:schema>