diff dtd/html-forms.mod @ 0:bca6df27dbfd

mostly unchanged from http://www.cc.org/dtd
author ht
date Sat, 19 Jan 2008 22:54:40 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dtd/html-forms.mod	Sat Jan 19 22:54:40 2008 +0000
@@ -0,0 +1,152 @@
+<!--
+  Forms DTD for Voyager. This is expected to be
+  supplanted by a new forms module providing an improved
+  match to database and workflow applications.
+
+  Copyright (c) 1998 W3C (MIT, INRIA, Keio), All Rights Reserved. 
+
+  Author: Dave Raggett  <dsr@w3.org>
+-->
+
+ <!--================ Forms ===============================================-->
+ <!ELEMENT form %Block;>   <!-- forms shouldn't be nested -->
+
+ <!ENTITY % form.extra "">
+
+ <!ATTLIST form
+   %attrs;
+   action      %URI;          #REQUIRED
+   method      (get|post)     "get"
+   enctype     %ContentType;  "application/x-www-form-urlencoded"
+   onsubmit    %Script;       #IMPLIED
+   onreset     %Script;       #IMPLIED
+   accept-charset %Charsets;  #IMPLIED
+   %form.extra;
+   >
+
+ <!--
+   Each label must not contain more than ONE field
+   Label elements shouldn't be nested.
+ -->
+ <!ELEMENT label %Inline;>
+ <!ATTLIST label
+   %attrs;
+   for         IDREF          #IMPLIED
+   accesskey   %Character;    #IMPLIED
+   onfocus     %Script;       #IMPLIED
+   onblur      %Script;       #IMPLIED
+   >
+
+ <!ENTITY % InputType
+   "(text | password | checkbox |
+     radio | submit | reset |
+     file | hidden | image | button)"
+    >
+
+ <!-- attribute name required for all but submit & reset -->
+ <!ENTITY % input.extra "">
+
+ <!ELEMENT input EMPTY>     <!-- form control -->
+ <!ATTLIST input
+   %attrs;
+   type        %InputType;    "text"
+   name        CDATA          #IMPLIED
+   value       CDATA          #IMPLIED
+   checked     (checked)      #IMPLIED
+   disabled    (disabled)     #IMPLIED
+   readonly    (readonly)     #IMPLIED
+   size        CDATA          #IMPLIED
+   maxlength   %Number;       #IMPLIED
+   src         %URI;          #IMPLIED
+   alt         CDATA          #IMPLIED
+   usemap      %URI;          #IMPLIED
+   tabindex    %Number;       #IMPLIED
+   accesskey   %Character;    #IMPLIED
+   onfocus     %Script;       #IMPLIED
+   onblur      %Script;       #IMPLIED
+   onselect    %Script;       #IMPLIED
+   onchange    %Script;       #IMPLIED
+   accept      %ContentTypes; #IMPLIED
+   %input.extra;
+   >
+
+ <!ELEMENT select (optgroup|option)+>  <!-- option selector -->
+ <!ATTLIST select
+   %attrs;
+   name        CDATA          #IMPLIED
+   size        %Number;       #IMPLIED
+   multiple    (multiple)     #IMPLIED
+   disabled    (disabled)     #IMPLIED
+   tabindex    %Number;       #IMPLIED
+   onfocus     %Script;       #IMPLIED
+   onblur      %Script;       #IMPLIED
+   onchange    %Script;       #IMPLIED
+   >
+
+ <!ELEMENT optgroup (option)+>   <!-- option group -->
+ <!ATTLIST optgroup
+   %attrs;
+   disabled    (disabled)     #IMPLIED
+   label       %Text;         #REQUIRED
+   >
+
+ <!ELEMENT option (#PCDATA)>     <!-- selectable choice -->
+ <!ATTLIST option
+   %attrs;
+   selected    (selected)     #IMPLIED
+   disabled    (disabled)     #IMPLIED
+   label       %Text;         #IMPLIED
+   value       CDATA          #IMPLIED
+   >
+
+ <!ELEMENT textarea (#PCDATA)>     <!-- multi-line text field -->
+ <!ATTLIST textarea
+   %attrs;
+   name        CDATA          #IMPLIED
+   rows        %Number;       #REQUIRED
+   cols        %Number;       #REQUIRED
+   disabled    (disabled)     #IMPLIED
+   readonly    (readonly)     #IMPLIED
+   tabindex    %Number;       #IMPLIED
+   accesskey   %Character;    #IMPLIED
+   onfocus     %Script;       #IMPLIED
+   onblur      %Script;       #IMPLIED
+   onselect    %Script;       #IMPLIED
+   onchange    %Script;       #IMPLIED
+   >
+
+ <!--
+   div is introduced here to enclose the contents of
+   the fieldset element to avoid mixed content problems
+ -->
+ <!ELEMENT fieldset (legend,div)>   <!-- form control group -->
+ <!ATTLIST fieldset
+   %attrs;
+   >
+
+ <!ENTITY % legend.extra "">
+
+ <!ELEMENT legend %Inline;>     <!-- fieldset label -->
+ <!ATTLIST legend
+   %attrs;
+   accesskey   %Character;    #IMPLIED
+   %legend.extra;
+   >
+
+ <!--
+  Buttons shouldn't include anchors, form controls, or form elements
+ --> 
+ <!ELEMENT button %Flow;>  <!-- push button -->
+ <!ATTLIST button
+   %attrs;
+   name        CDATA          #IMPLIED
+   value       CDATA          #IMPLIED
+   type        (button|submit|reset) "submit"
+   disabled    (disabled)     #IMPLIED
+   tabindex    %Number;       #IMPLIED
+   accesskey   %Character;    #IMPLIED
+   onfocus     %Script;       #IMPLIED
+   onblur      %Script;       #IMPLIED
+   >
+
+