1
<!-- ...................................................................... -->
2
<!-- XHTML Simplified Forms Module ....................................... -->
3
<!-- file: xhtml-basic-form-1.mod
5
This is XHTML Basic, a proper subset of XHTML.
6
Copyright 1998-2005 W3C (MIT, ERCIM, Keio), All Rights Reserved.
7
Revision: $Id: xhtml-basic-form-1.mod,v 4.1 2001/04/05 06:57:40 altheim Exp $ SMI
9
This DTD module is identified by the PUBLIC and SYSTEM identifiers:
11
PUBLIC "-//W3C//ELEMENTS XHTML Basic Forms 1.0//EN"
12
SYSTEM "http://www.w3.org/MarkUp/DTD/xhtml-basic-form-1.mod"
16
....................................................................... -->
20
This forms module is based on the HTML 3.2 forms model, with
21
the WAI-requested addition of the label element. While this
22
module essentially mimics the content model and attributes of
23
HTML 3.2 forms, the element types declared herein also include
24
all HTML 4 common attributes.
26
form, label, input, select, option, textarea
29
<!-- declare qualified element type names:
31
<!ENTITY % form.qname "form" >
32
<!ENTITY % label.qname "label" >
33
<!ENTITY % input.qname "input" >
34
<!ENTITY % select.qname "select" >
35
<!ENTITY % option.qname "option" >
36
<!ENTITY % textarea.qname "textarea" >
38
<!-- %BlkNoForm.mix; includes all non-form block elements,
41
<!ENTITY % BlkNoForm.mix
52
<!-- form: Form Element ................................ -->
54
<!ENTITY % form.element "INCLUDE" >
56
<!ENTITY % form.content
57
"( %BlkNoForm.mix; )+"
59
<!ELEMENT %form.qname; %form.content; >
60
<!-- end of form.element -->]]>
62
<!ENTITY % form.attlist "INCLUDE" >
64
<!ATTLIST %form.qname;
66
action %URI.datatype; #REQUIRED
67
method ( get | post ) 'get'
68
enctype %ContentType.datatype; 'application/x-www-form-urlencoded'
70
<!-- end of form.attlist -->]]>
72
<!-- label: Form Field Label Text ...................... -->
74
<!ENTITY % label.element "INCLUDE" >
76
<!-- Each label must not contain more than ONE field
78
<!ENTITY % label.content
80
| %input.qname; | %select.qname; | %textarea.qname;
88
<!ELEMENT %label.qname; %label.content; >
89
<!-- end of label.element -->]]>
91
<!ENTITY % label.attlist "INCLUDE" >
93
<!ATTLIST %label.qname;
96
accesskey %Character.datatype; #IMPLIED
98
<!-- end of label.attlist -->]]>
100
<!-- input: Form Control ............................... -->
102
<!ENTITY % input.element "INCLUDE" >
104
<!ENTITY % input.content "EMPTY" >
105
<!ELEMENT %input.qname; %input.content; >
106
<!-- end of input.element -->]]>
108
<!-- Basic Forms removes 'button', 'image' and 'file' input types.
110
<!ENTITY % input.attlist "INCLUDE" >
112
<!ENTITY % InputType.class
113
"( text | password | checkbox | radio
114
| submit | reset | hidden )"
116
<!-- attribute name required for all but submit & reset
118
<!ATTLIST %input.qname;
120
type %InputType.class; 'text'
123
checked ( checked ) #IMPLIED
124
size %Number.datatype; #IMPLIED
125
maxlength %Number.datatype; #IMPLIED
126
src %URI.datatype; #IMPLIED
127
tabindex %Number.datatype; #IMPLIED
128
accesskey %Character.datatype; #IMPLIED
130
<!-- end of input.attlist -->]]>
132
<!-- select: Option Selector ........................... -->
134
<!ENTITY % select.element "INCLUDE" >
136
<!ENTITY % select.content "( %option.qname; )+" >
137
<!ELEMENT %select.qname; %select.content; >
138
<!-- end of select.element -->]]>
140
<!ENTITY % select.attlist "INCLUDE" >
142
<!ATTLIST %select.qname;
145
size %Number.datatype; #IMPLIED
146
multiple ( multiple ) #IMPLIED
147
tabindex %Number.datatype; #IMPLIED
149
<!-- end of select.attlist -->]]>
151
<!-- option: Selectable Choice ......................... -->
153
<!ENTITY % option.element "INCLUDE" >
155
<!ENTITY % option.content "( #PCDATA )" >
156
<!ELEMENT %option.qname; %option.content; >
157
<!-- end of option.element -->]]>
159
<!ENTITY % option.attlist "INCLUDE" >
161
<!ATTLIST %option.qname;
163
selected ( selected ) #IMPLIED
166
<!-- end of option.attlist -->]]>
168
<!-- textarea: Multi-Line Text Field ................... -->
170
<!ENTITY % textarea.element "INCLUDE" >
171
<![%textarea.element;[
172
<!ENTITY % textarea.content "( #PCDATA )" >
173
<!ELEMENT %textarea.qname; %textarea.content; >
174
<!-- end of textarea.element -->]]>
176
<!ENTITY % textarea.attlist "INCLUDE" >
177
<![%textarea.attlist;[
178
<!ATTLIST %textarea.qname;
181
rows %Number.datatype; #REQUIRED
182
cols %Number.datatype; #REQUIRED
183
tabindex %Number.datatype; #IMPLIED
184
accesskey %Character.datatype; #IMPLIED
186
<!-- end of textarea.attlist -->]]>
188
<!-- end of xhtml-basic-form-1.mod -->