Ken Webb 2011-04-29T20:38:51Z
<!-- HTModL 1.0 DTD adapted from Extensible HTML version 1.0 Transitional DTD http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd This is not a complete DTD, but is only intended to highlight what HTModL is about, and to show the differences between HTML and HTModL. The only substantive difference between HTML and HTModL is that in HTModL the div element requires a class attribute. To validate HTModL: - Use a copy of a .dtd from www.w3.org where class is #REQUIRED - Use a domain-specific copy of that DTD that includes all attributes you are using, although it's probably not possible to associate class values with a set of other attributes. --> <!-- core attributes common to most elements id document-wide unique id class space separated list of classes (#IMPLIED in HTML) style associated style info (irrelevant to HTModL) title advisory title/amplification (irrelevant to HTModL) --> <!ENTITY % coreattrs "id ID #IMPLIED class CDATA #REQUIRED" > <!--<!ENTITY % attrs "%coreattrs; %i18n; %events;">--> <!ENTITY % attrs "%coreattrs;"> <!-- %Flow; mixes block and inline and is used for list items etc. --> <!--<!ENTITY % Flow "(#PCDATA | %block; | form | %inline; | %misc;)*">--> <!ENTITY % Flow "(div | ANY)*"> <!ELEMENT div %Flow;> <!-- generic language/style container --> <!ATTLIST div %attrs; <!--ANY attribute is valid in HTModL--> <!--%TextAlign;--> >