C++ CSS HTML Java JavaScript MySQL Oracle PERL PHP SQL Unix VBScript XHTML XML Сети
Модуляризация XHTML - Реализации модулей XHTML DTD
 

Е. Реализации модулей XHTML DTD

Содержание

Данное приложение является нормативным.

В нем содержатся реализации модулей, определенных в разделе "Абстрактные модули XHTML" через XML DTD. Эти реализации могут использоваться в типах документов семейства XHTML.

Е.1. Символьные сущности XHTML

XHTML DTD предоставляют доступ к стандартному набору именованных символьных сущностей. Они определяются в настоящем разделе.

Е.1.1. Символьные сущности XHTML Latin 1

<!-- ...................................................................... -->
<!-- XML-совместимый набор символьных сущностей ISO Latin 1 для XHTML ............ -->
<!-- файл: xhtml-lat1.ent

   Стандартный вызов:

    <!ENTITY % xhtml-lat1
      PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN"
         "xhtml-lat1.ent" >
    %xhtml-lat1;

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-lat1.ent"

   Версия: $Id: xhtml-lat1.ent,v 4.1 2001/04/10 09:34:14 altheim Exp $ SMI

    с определением, данным в стандарте ISO 8879, 
   при условии включения данной информации во все копии.
-->

<!ENTITY nbsp  "&#160;" ><!-- неразрывный пробел, U+00A0 ISOnum -->
<!ENTITY iexcl "&#161;" ><!-- перевернутый восклицательный знак, U+00A1 ISOnum -->
<!ENTITY cent  "&#162;" ><!-- знак цента, U+00A2 ISOnum -->
<!ENTITY pound "&#163;" ><!-- знак фунта, U+00A3 ISOnum -->
<!ENTITY curren "&#164;" ><!-- знак валюты, U+00A4 ISOnum -->
<!ENTITY yen  "&#165;" ><!-- знак иены = знак юаня, U+00A5 ISOnum -->
<!ENTITY brvbar "&#166;" ><!-- вертикальная черта, U+00A6 ISOnum -->
<!ENTITY sect  "&#167;" ><!-- знак параграфа, U+00A7 ISOnum -->
<!ENTITY uml  "&#168;" ><!-- трема, U+00A8 ISOdia -->
<!ENTITY copy  "&#169;" ><!-- знак авторского права, U+00A9 ISOnum -->
<!ENTITY ordf  "&#170;" ><!-- индикатор порядкового числительного женского рода, U+00AA ISOnum -->
<!ENTITY laquo "&#171;" ><!-- левая двойная угловая кавычка, U+00AB ISOnum -->
<!ENTITY not  "&#172;" ><!-- знак отрицания, U+00AC ISOnum -->
<!ENTITY shy  "&#173;" ><!-- мягкий перенос, U+00AD ISOnum -->
<!ENTITY reg  "&#174;" ><!-- знак зарегистрированной торговой марки, U+00AE ISOnum -->
<!ENTITY macr  "&#175;" ><!-- знак долготы над гласным, U+00AF ISOdia -->
<!ENTITY deg  "&#176;" ><!-- знак градуса, U+00B0 ISOnum -->
<!ENTITY plusmn "&#177;" ><!-- знак "плюс-минус", U+00B1 ISOnum -->
<!ENTITY sup2  "&#178;" ><!-- два в верхнем индексе = квадрат, U+00B2 ISOnum -->
<!ENTITY sup3  "&#179;" ><!-- три в верхнем индексе = куб, U+00B3 ISOnum -->
<!ENTITY acute "&#180;" ><!-- акут, U+00B4 ISOdia -->
<!ENTITY micro "&#181;" ><!-- знак "мю", U+00B5 ISOnum -->
<!ENTITY para  "&#182;" ><!-- символ абзаца, U+00B6 ISOnum -->
<!ENTITY middot "&#183;" ><!-- средняя точка = грузинская запятая, U+00B7 ISOnum -->
<!ENTITY cedil "&#184;" ><!-- седиль, U+00B8 ISOdia -->
<!ENTITY sup1  "&#185;" ><!-- единица в верхнем индексе, U+00B9 ISOnum -->
<!ENTITY ordm  "&#186;" ><!-- индикатор порядкового числительного мужского рода, U+00BA ISOnum -->
<!ENTITY raquo "&#187;" ><!-- правая двойная угловая кавычка, U+00BB ISOnum -->
<!ENTITY frac14 "&#188;" ><!-- простая дробь одна четверть, U+00BC ISOnum -->
<!ENTITY frac12 "&#189;" ><!-- простая дробь одна вторая, U+00BD ISOnum -->
<!ENTITY frac34 "&#190;" ><!-- простая дробь три четверти, U+00BE ISOnum -->
<!ENTITY iquest "&#191;" ><!-- перевернутый вопросительный знак, U+00BF ISOnum -->
<!ENTITY Agrave "&#192;" ><!-- латинская прописная буква A с грависом, U+00C0 ISOlat1 -->
<!ENTITY Aacute "&#193;" ><!-- латинская прописная буква A с акутом, U+00C1 ISOlat1 -->
<!ENTITY Acirc "&#194;" ><!-- латинская прописная буква A с циркумфлексом, U+00C2 ISOlat1 -->
<!ENTITY Atilde "&#195;" ><!-- латинская прописная буква A с тильдой, U+00C3 ISOlat1 -->
<!ENTITY Auml  "&#196;" ><!-- латинская прописная буква A с тремой, U+00C4 ISOlat1 -->
<!ENTITY Aring "&#197;" ><!-- латинская прописная буква A с кружочком, U+00C5 ISOlat1 -->
<!ENTITY AElig "&#198;" ><!-- латинская заглавная лигатура AE, U+00C6 ISOlat1 -->
<!ENTITY Ccedil "&#199;" ><!-- латинская прописная буква C с седилем, U+00C7 ISOlat1 -->
<!ENTITY Egrave "&#200;" ><!-- латинская прописная буква E с грависом, U+00C8 ISOlat1 -->
<!ENTITY Eacute "&#201;" ><!-- латинская прописная буква E с акутом, U+00C9 ISOlat1 -->
<!ENTITY Ecirc "&#202;" ><!-- латинская прописная буква E с циркумфлексом, U+00CA ISOlat1 -->
<!ENTITY Euml  "&#203;" ><!-- латинская прописная буква E с тремой, U+00CB ISOlat1 -->
<!ENTITY Igrave "&#204;" ><!-- латинская прописная буква I с грависом, U+00CC ISOlat1 -->
<!ENTITY Iacute "&#205;" ><!-- латинская прописная буква I с акутом, U+00CD ISOlat1 -->
<!ENTITY Icirc "&#206;" ><!-- латинская прописная буква I с циркумфлексом, U+00CE ISOlat1 -->
<!ENTITY Iuml  "&#207;" ><!-- латинская прописная буква I с тремой, U+00CF ISOlat1 -->
<!ENTITY ETH  "&#208;" ><!-- латинский прописной символ ETH, U+00D0 ISOlat1 -->
<!ENTITY Ntilde "&#209;" ><!-- латинская прописная буква N с тильдой, U+00D1 ISOlat1 -->
<!ENTITY Ograve "&#210;" ><!-- латинская прописная буква O с грависом, U+00D2 ISOlat1 -->
<!ENTITY Oacute "&#211;" ><!-- латинская прописная буква O с акутом, U+00D3 ISOlat1 -->
<!ENTITY Ocirc "&#212;" ><!-- латинская прописная буква O с циркумфлексом, U+00D4 ISOlat1 -->
<!ENTITY Otilde "&#213;" ><!-- латинская прописная буква O с тильдой, U+00D5 ISOlat1 -->
<!ENTITY Ouml  "&#214;" ><!-- латинская прописная буква O с тремой, U+00D6 ISOlat1 -->
<!ENTITY times "&#215;" ><!-- знак умножения, U+00D7 ISOnum -->
<!ENTITY Oslash "&#216;" ><!-- перечеркнутая латинская прописная буква O, U+00D8 ISOlat1 -->
<!ENTITY Ugrave "&#217;" ><!-- латинская прописная буква U с грависом, U+00D9 ISOlat1 -->
<!ENTITY Uacute "&#218;" ><!-- латинская прописная буква U с акутом, U+00DA ISOlat1 -->
<!ENTITY Ucirc "&#219;" ><!-- латинская прописная буква U с циркумфлексом, U+00DB ISOlat1 -->
<!ENTITY Uuml  "&#220;" ><!-- латинская прописная буква U с тремой, U+00DC ISOlat1 -->
<!ENTITY Yacute "&#221;" ><!-- латинская прописная буква Y с акутом, U+00DD ISOlat1 -->
<!ENTITY THORN "&#222;" ><!-- латинский прописной символ THORN, U+00DE ISOlat1 -->
<!ENTITY szlig "&#223;" ><!-- латинская строчная буква "острое с", U+00DF ISOlat1 -->
<!ENTITY Agrave "&#224;" ><!-- латинская строчная буква a с грависом, U+00C0 ISOlat1 -->
<!ENTITY aacute "&#225;" ><!-- латинская строчная буква a с акутом, U+00E1 ISOlat1 -->
<!ENTITY acirc "&#226;" ><!-- латинская строчная буква a с циркумфлексом, U+00E2 ISOlat1 -->
<!ENTITY atilde "&#227;" ><!-- латинская строчная буква a с тильдой, U+00E3 ISOlat1 -->
<!ENTITY auml  "&#228;" ><!-- латинская строчная буква a с тремой, U+00E4 ISOlat1 -->
<!ENTITY aring "&#229;" ><!-- латинская строчная буква a с кружочком, U+00E5 ISOlat1 -->
<!ENTITY aelig "&#230;" ><!-- латинская строчная лигатура ae, U+00E6 ISOlat1 -->
<!ENTITY ccedil "&#231;" ><!-- латинская строчная буква c с седилем, U+00E7 ISOlat1 -->
<!ENTITY egrave "&#232;" ><!-- латинская строчная буква e с грависом, U+00E8 ISOlat1 -->
<!ENTITY eacute "&#233;" ><!-- латинская строчная буква e с акутом, U+00E9 ISOlat1 -->
<!ENTITY ecirc "&#234;" ><!-- латинская строчная буква e с циркумфлексом, U+00EA ISOlat1 -->
<!ENTITY euml  "&#235;" ><!-- латинская строчная буква e с тремой, U+00EB ISOlat1 -->
<!ENTITY igrave "&#236;" ><!-- латинская строчная буква i с грависом, U+00EC ISOlat1 -->
<!ENTITY iacute "&#237;" ><!-- латинская строчная буква i с акутом, U+00ED ISOlat1 -->
<!ENTITY icirc "&#238;" ><!-- латинская строчная буква i с циркумфлексом, U+00EE ISOlat1 -->
<!ENTITY iuml  "&#239;" ><!-- латинская строчная буква i с тремой, U+00EF ISOlat1 -->
<!ENTITY eth  "&#240;" ><!-- латинская строчная eth, U+00F0 ISOlat1 -->
<!ENTITY ntilde "&#241;" ><!-- латинская строчная буква n с тильдой, U+00F1 ISOlat1 -->
<!ENTITY ograve "&#242;" ><!-- латинская строчная буква o с грависом, U+00F2 ISOlat1 -->
<!ENTITY oacute "&#243;" ><!-- латинская строчная буква o с акутом, U+00F3 ISOlat1 -->
<!ENTITY ocirc "&#244;" ><!-- латинская строчная буква o с циркумфлексом, U+00F4 ISOlat1 -->
<!ENTITY otilde "&#245;" ><!-- латинская строчная буква o с тильдой, U+00F5 ISOlat1 -->
<!ENTITY ouml  "&#246;" ><!-- латинская строчная буква o с тремой, U+00F6 ISOlat1 -->
<!ENTITY divide "&#247;" ><!-- знак деления, U+00F7 ISOnum -->
<!ENTITY oslash "&#248;" ><!-- перечеркнутая латинская строчная буква o, U+00F8 ISOlat1 -->
<!ENTITY ugrave "&#249;" ><!-- латинская прописная буква u с грависом, U+00F9 ISOlat1 -->
<!ENTITY uacute "&#250;" ><!-- латинская прописная буква u с акутом, U+00FA ISOlat1 -->
<!ENTITY ucirc "&#251;" ><!-- латинская прописная буква u с циркумфлексом, U+00FB ISOlat1 -->
<!ENTITY uuml  "&#252;" ><!-- латинская прописная буква u с тремой, U+00FC ISOlat1 -->
<!ENTITY yacute "&#253;" ><!-- латинская прописная буква y с акутом, U+00FD ISOlat1 -->
<!ENTITY thorn "&#254;" ><!-- латинский строчный символ thorn, U+00FE ISOlat1 -->
<!ENTITY yuml  "&#255;" ><!-- латинская прописная буква y с тремой, U+00FF ISOlat1 -->
<!-- конец xhtml-lat1.ent -->

Е.1.2. Специальные символы XHTML

<!-- ...................................................................... -->
<!-- XML-совместимый набор специальных символов ISO Special Character Entity Set для XHTML ............ -->
<!-- файл: xhtml-special.ent

   Стандартный вызов:

    <!ENTITY % xhtml-special
      PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
         "xhtml-special.ent" >
    %xhtml-special;

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-special.ent"

   Версия: $Id: xhtml-special.ent,v 4.1 2001/04/10 09:34:14 altheim Exp $ SMI

    с определением, данным в стандарте ISO 8879,
   при условии включения данной информации во все копии.

   Версии:
2000-10-28: для совместимости добавлены ' и изменены предопределенные сущности XML
-->

<!-- Если имена не являются новыми, указывается соответствующий набор сущностей ISO.
   Новые имена (не входящие в список ISO 8879 [SGML]) не конфликтуют с 
   существующими именами сущностей набора ISO 8879. Номера символов набора ISO 10646 [ISO10646]
   указаны в шестнадцатеричном формате. Значения сущностей представляют
   собой номера ISO 10646 в десятичном виде и относятся
   к набору символов документа. Имена представляют собой имена Unicode [UNICODE].
-->

<!-- Управляющие символы C0 и Basic Latin -->
<!ENTITY lt   "&#60;" ><!-- знак "меньше", U+003C ISOnum -->
<!ENTITY gt   "&#62;" ><!-- знак "больше", U+003E ISOnum -->
<!ENTITY amp   "&#38;" ><!-- амперсанд, U+0026 ISOnum -->
<!ENTITY apos  "&#39;" ><!-- апостроф, U+0027 ISOnum -->
<!ENTITY quot  "&#34;" ><!-- прямая кавычка, U+0022 ISOnum -->

<!-- Latin Extended-A -->
<!ENTITY OElig  "&#338;" ><!-- латинский прописной символ OE, U+0152 ISOlat2 -->
<!ENTITY oelig  "&#339;" ><!-- латинский строчный символ oe, U+0152 ISOlat2 -->

<!-- слово "лигатура" в данном случае не совсем корректно, в некоторых языках это отдельный символ -->
<!ENTITY Scaron "&#352;" ><!-- латинская прописная буква S с "птичкой", U+0160 ISOlat2 -->
<!ENTITY scaron "&#353;" ><!-- латинская строчная буква s с "птичкой", U+0161 ISOlat2 -->
<!ENTITY Yuml  "&#376;" ><!-- латинская заглавная буква Y с тремой, U+0178 ISOlat2 -->

<!-- Символы изменения длительности -->
<!ENTITY circ  "&#710;" ><!-- циркумфлекс, U+02C6 ISOpub -->
<!ENTITY tilde  "&#732;" ><!-- малая тильда, U+02DC ISOdia -->

<!-- Общая пунктуация -->
<!ENTITY ensp  "&#8194;" ><!-- узкий пробел, U+2002 ISOpub -->
<!ENTITY emsp  "&#8195;" ><!-- широкий пробел, U+2003 ISOpub -->
<!ENTITY thinsp "&#8201;" ><!-- минимальный межсловный пробел, U+2009 ISOpub -->
<!ENTITY zwnj   "&#8204;" ><!-- разделитель нулевой ширины, U+200D NEW RFC 2070 -->
<!ENTITY zwj   "&#8205;" ><!-- объединитель нулевой ширины, U+200D NEW RFC 2070 -->
<!ENTITY lrm   "&#8206;" ><!-- метка слева направо, U+200E NEW RFC 2070 -->
<!ENTITY rlm   "&#8207;" ><!-- метка справа налево, U+200F NEW RFC 2070 -->
<!ENTITY ndash  "&#8211;" ><!-- короткое тире, U+2013 ISOpub -->
<!ENTITY mdash  "&#8212;" ><!-- длинное тире, U+2014 ISOpub -->
<!ENTITY lsquo  "&#8216;" ><!-- левая одинарная кавычка, U+2018 ISOnum -->
<!ENTITY rsquo  "&#8217;" ><!-- правая одинарная кавычка, U+2019 ISOnum -->
<!ENTITY sbquo  "&#8218;" ><!-- одинарная нижняя кавычка, U+201A NEW -->
<!ENTITY ldquo  "&#8220;" ><!-- левая двойная кавычка, U+201C ISOnum -->
<!ENTITY rdquo  "&#8221;" ><!-- правая двойная кавычка, U+201D ISOnum -->
<!ENTITY bdquo  "&#8222;" ><!-- двойная нижняя кавычка, U+201E NEW -->
<!ENTITY dagger "&#8224;" ><!-- крестик, U+2020 ISOpub -->
<!ENTITY Dagger "&#8225;" ><!-- двойной крестик, U+2021 ISOpub -->
<!ENTITY permil "&#8240;" ><!-- промилле, U+2030 ISOtech -->

<!-- символ lsaquo предлагается, но еще не стандартизован ISO -->
<!ENTITY lsaquo "&#8249;" ><!-- левая одинарная угловая кавычка, U+2039 ISO proposed -->
<!-- символ rsaquo предлагается, но еще не стандартизован ISO -->
<!ENTITY rsaquo "&#8250;" ><!-- правая одинарная угловая кавычка, U+203A ISO proposed -->
<!ENTITY euro  "&#8364;" ><!-- знак евро, U+20AC NEW -->

<!-- конец xhtml-special.ent -->

Е.1.3. Математические, греческие и прочие символы XHTML

<!-- ...................................................................... -->
<!-- Набор ISO Math, Greek and Symbolic Character Entity Set для XHTML .......... -->
<!-- файл: xhtml-symbol.ent

   Стандартный вызов:

    <!ENTITY % xhtml-symbol
      PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN"
         "xhtml-symbol.ent" >
    %xhtml-symbol;

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-symbol.ent"

   Версия: $Id: xhtml-symbol.ent,v 4.1 2001/04/10 09:34:14 altheim Exp $ SMI

   Частичное авторское право международной организации по стандартизации, 1986:
   Разрешение на копирования в любом виде дается для использования с конформными 
   SGML-системами и приложениями в соответствии с определением, данным в стандарте ISO 8879,
   при условии включения данной информации во все копии.
-->

<!-- Если имена не являются новыми, указывается соответствующий набор сущностей ISO.
   Новые имена (не входящие в список ISO 8879 [SGML]) не конфликтуют с 
   существующими именами сущностей набора ISO 8879. Номера символов набора ISO 10646 [ISO10646]
   указаны в шестнадцатеричном формате. Значения сущностей представляют
   собой номера ISO 10646 в десятичном виде и относятся
   к набору символов документа. Имена представляют собой имена Unicode [UNICODE].
-->

<!-- Latin Extended-B -->
<!ENTITY fnof   "&#402;" ><!-- каллиграфическая строчная латинская f = символ функции
               = флорин, U+0192 ISOtech -->

<!-- греческие -->
<!ENTITY Alpha  "&#913;" ><!-- греческая прописная буква альфа, U+0391 -->
<!ENTITY Beta   "&#914;" ><!-- греческая прописная буква бета, U+0392 -->
<!ENTITY Gamma  "&#915;" ><!-- греческая прописная буква гамма, U+0393 ISOgrk3 -->
<!ENTITY Delta  "&#916;" ><!-- греческая прописная буква дельта, U+0394 ISOgrk3 -->
<!ENTITY Epsilon "&#917;" ><!-- греческая прописная буква эпсилон, U+0395 -->
<!ENTITY Zeta   "&#918;" ><!-- греческая прописная буква дзета, U+0396 -->
<!ENTITY Eta   "&#919;" ><!-- греческая прописная буква эта, U+0397 -->
<!ENTITY Theta  "&#920;" ><!-- греческая прописная буква тета, U+0398 ISOgrk3 -->
<!ENTITY Iota   "&#921;" ><!-- греческая прописная буква йота, U+0399 -->
<!ENTITY Kappa  "&#922;" ><!-- греческая прописная буква каппа, U+039A -->
<!ENTITY Lambda  "&#923;" ><!-- греческая прописная буква лямбда, U+039B ISOgrk3 -->
<!ENTITY Mu    "&#924;" ><!-- греческая прописная буква мю, U+039C -->
<!ENTITY Nu    "&#925;" ><!-- греческая прописная буква ню, U+039D -->
<!ENTITY Xi    "&#926;" ><!-- греческая прописная буква кси, U+039E ISOgrk3 -->
<!ENTITY Omicron "&#927;" ><!-- греческая прописная буква омикрон, U+039F -->
<!ENTITY Pi    "&#928;" ><!-- греческая прописная буква пи, U+03A0 ISOgrk3 -->
<!ENTITY Rho   "&#929;" ><!-- греческая прописная буква ро, U+03A1 -->
<!-- сигма ф и символ U+03A2 отсутствуют -->
<!ENTITY Sigma  "&#931;" ><!-- греческая прописная буква сигма, U+03A3 ISOgrk3 -->
<!ENTITY Tau   "&#932;" ><!-- греческая прописная буква тау, U+03A4 -->
<!ENTITY Upsilon "&#933;" ><!-- греческая прописная буква ипсилон,
               U+03A5 ISOgrk3 -->
<!ENTITY Phi   "&#934;" ><!-- греческая прописная буква фи, U+03A6 ISOgrk3 -->
<!ENTITY Chi   "&#935;" ><!-- греческая прописная буква хи, U+03A7 -->
<!ENTITY Psi   "&#936;" ><!-- греческая прописная буква пси, U+03A8 ISOgrk3 -->
<!ENTITY Omega  "&#937;" ><!-- греческая прописная буква омега, U+03A9 ISOgrk3 -->
<!ENTITY alpha  "&#945;" ><!-- греческая строчная буква альфа, U+03B1 ISOgrk3 -->
<!ENTITY beta   "&#946;" ><!-- греческая строчная буква бета, U+03B2 ISOgrk3 -->
<!ENTITY gamma  "&#947;" ><!-- греческая строчная буква гамма, U+03B3 ISOgrk3 -->
<!ENTITY delta  "&#948;" ><!-- греческая строчная буква дельта, U+03B4 ISOgrk3 -->
<!ENTITY epsilon "&#949;" ><!-- греческая строчная буква эпсилон, U+03B5 ISOgrk3 -->
<!ENTITY zeta   "&#950;" ><!-- греческая строчная буква дзета, U+03B6 ISOgrk3 -->
<!ENTITY eta   "&#951;" ><!-- греческая строчная буква эта, U+03B7 ISOgrk3 -->
<!ENTITY theta  "&#952;" ><!-- греческая строчная буква тета, U+03B8 ISOgrk3 -->
<!ENTITY iota   "&#953;" ><!-- греческая строчная буква йота, U+03B9 ISOgrk3 -->
<!ENTITY kappa  "&#954;" ><!-- греческая строчная буква каппа, U+03BA ISOgrk3 -->
<!ENTITY lambda  "&#955;" ><!-- греческая строчная буква лямбда, U+03BB ISOgrk3 -->
<!ENTITY mu    "&#956;" ><!-- греческая строчная буква мю, U+03BC ISOgrk3 -->
<!ENTITY nu    "&#957;" ><!-- греческая строчная буква ню, U+03BD ISOgrk3 -->
<!ENTITY xi    "&#958;" ><!-- греческая строчная буква кси, U+03BE ISOgrk3 -->
<!ENTITY omicron "&#959;" ><!-- греческая строчная буква омикрон, U+03BF NEW -->
<!ENTITY pi    "&#960;" ><!-- греческая строчная буква пи, U+03C0 ISOgrk3 -->
<!ENTITY rho   "&#961;" ><!-- греческая строчная буква ро, U+03C1 ISOgrk3 -->
<!ENTITY sigmaf  "&#962;" ><!-- греческая строчная буква конечная сигма, U+03C2 ISOgrk3 -->
<!ENTITY sigma  "&#963;" ><!-- греческая строчная буква сигма, U+03C3 ISOgrk3 -->
<!ENTITY tau   "&#964;" ><!-- греческая строчная буква тау, U+03C4 ISOgrk3 -->
<!ENTITY upsilon "&#965;" ><!-- греческая строчная буква ипсилон, U+03C5 ISOgrk3 -->
<!ENTITY phi   "&#966;" ><!-- греческая строчная буква фи, U+03C6 ISOgrk3 -->
<!ENTITY chi   "&#967;" ><!-- греческая строчная буква хи, U+03C7 ISOgrk3 -->
<!ENTITY psi   "&#968;" ><!-- греческая строчная буква пси, U+03C8 ISOgrk3 -->
<!ENTITY omega  "&#969;" ><!-- греческая строчная буква омега, U+03C9 ISOgrk3 -->
<!ENTITY thetasym "&#977;" ><!-- символ греческой строчной буквы тета, U+03D1 NEW -->
<!ENTITY upsih  "&#978;" ><!-- символ ипсилон с крючком, U+03D2 NEW -->
<!ENTITY piv   "&#982;" ><!-- символ греческой пи, U+03D6 ISOgrk3 -->

<!-- Общая пунктуация -->
<!ENTITY bull   "&#8226;" ><!-- маркер = небольшой черный кружок, U+2022 ISOpub -->
<!-- маркер и оператор bullet, U+2219 - НЕ ОДНО И ТО ЖЕ -->
<!ENTITY hellip  "&#8230;" ><!-- горизонтальное многоточие = троеточие, U+2026 ISOpub -->
<!ENTITY prime  "&#8242;" ><!-- штрих = минуты = футы, U+2032 ISOtech -->
<!ENTITY Prime  "&#8243;" ><!-- двойной штрих = секунды = дюймы, U+2033 ISOtech -->
<!ENTITY oline  "&#8254;" ><!-- прочерк, U+203E NEW -->
<!ENTITY frasl  "&#8260;" ><!-- дробная черта, U+2044 NEW -->

<!-- Буквоподобные символы -->
<!ENTITY weierp  "&#8472;" ><!-- письменная заглавная буква P = показательное 
   множество = p Вейерштрасса U+2118 ISOamso -->
<!ENTITY image  "&#8465;" ><!-- готическая заглавная I = мнимая часть, U+2111 ISOamso -->
<!ENTITY real   "&#8476;" ><!-- готическая заглавная R = символ вещественной части, U+211C ISOamso -->
<!ENTITY trade  "&#8482;" ><!-- знак торговой марки, U+2122 ISOnum -->
<!ENTITY alefsym "&#8501;" ><!-- символ алеф = первое трансфинитное кардинальное число, U+2135 NEW -->
<!-- символ алеф и буква алеф иврита, U+05D0 - не оно и то же,
   хотя для обоих символов может использоваться один и тот же глиф -->

<!-- Стрелки -->
<!ENTITY larr   "&#8592;" ><!-- стрелка влево, U+2190 ISOnum -->
<!ENTITY uarr   "&#8593;" ><!-- стрелка вверх, U+2191 ISOnum-->
<!ENTITY rarr   "&#8594;" ><!-- стрелка вправо, U+2192 ISOnum -->
<!ENTITY darr   "&#8595;" ><!-- стрелка вниз, U+2193 ISOnum -->
<!ENTITY harr   "&#8596;" ><!-- стрелка влево-вправо, U+2194 ISOamsa -->
<!ENTITY crarr  "&#8629;" ><!-- угловая стрелка влево вниз
                = возврат каретки, U+21B5 NEW -->
<!ENTITY lArr   "&#8656;" ><!-- двойная стрелка влево, U+21D0 ISOtech -->
<!-- в Unicode не указывается, что lArr и стрелка 'следует' совпадают, но
  не имеется и другого символа для обозначения этой функции. Поэтому ? lArr может
  использоваться в качестве символа 'следует', как предлагается в ISOtech -->
<!ENTITY uArr   "&#8657;" ><!-- двойная стрелка вверх, U+21D1 ISOamsa -->
<!ENTITY rArr   "&#8658;" ><!-- двойная стрелка вправо, U+21D2 ISOtech -->
<!-- в Unicode не указывается, что это символ импликации, но и нет
   другого символа для этой функции, так что ?
   rArr может использоваться для обозначения импликации, как предлагается в ISOtech -->
<!ENTITY dArr   "&#8659;" ><!-- двойная стрелка вниз, U+21D3 ISOamsa -->
<!ENTITY hArr   "&#8660;" ><!-- двойная стрелка вправо, U+21D4 ISOamsa -->

<!-- Математические операторы -->
<!ENTITY forall  "&#8704;" ><!-- для всех, U+2200 ISOtech -->
<!ENTITY part   "&#8706;" ><!-- частичный дифференциал, U+2202 ISOtech -->
<!ENTITY exist  "&#8707;" ><!-- знак "существует", U+2203 ISOtech -->
<!ENTITY empty  "&#8709;" ><!-- пустое множество = нулевое множество = диаметр, U+2205 ISOamso -->
<!ENTITY nabla  "&#8711;" ><!-- набла = обратная разность, U+2207 ISOtech -->
<!ENTITY isin   "&#8712;" ><!-- элемент множества, U+2208 ISOtech -->
<!ENTITY notin  "&#8713;" ><!-- не элемент множества, U+2209 ISOtech -->
<!ENTITY ni    "&#8715;" ><!-- содержит в качестве члена, U+220B ISOtech -->
<!-- нужно ли более запоминаемое название? -->
<!ENTITY prod   "&#8719;" ><!-- знак произведения, U+220F ISOamsb -->
<!-- prod и U+03A0 'греческая заглавная буква пи' - это НЕ одно и то же
   хотя для них может использоваться один и тот же глиф-->
<!ENTITY sum   "&#8721;" ><!-- знак суммы, U+2211 ISOamsb -->
<!-- sum и U+03A3 'греческая заглавная буква сигма' - это НЕ одно и то же, 
   хотя для них может использоваться один и тот же глиф -->
<!ENTITY minus  "&#8722;" ><!-- знак "минус", U+2212 ISOtech -->
<!ENTITY lowast  "&#8727;" ><!-- оператор "звездочка", U+2217 ISOtech -->
<!ENTITY radic  "&#8730;" ><!-- квадратный корень = знак радикала, U+221A ISOtech -->
<!ENTITY prop   "&#8733;" ><!-- знак "пропорционально", U+221D ISOtech -->
<!ENTITY infin  "&#8734;" ><!-- бесконечность, U+221E ISOtech -->
<!ENTITY ang   "&#8736;" ><!-- угол, U+2220 ISOamso -->
<!ENTITY and   "&#8743;" ><!-- логическое "и" = клин, U+2227 ISOtech -->
<!ENTITY or    "&#8744;" ><!-- логическое "или" = знак "V", U+2228 ISOtech -->
<!ENTITY cap   "&#8745;" ><!-- пересечение = перевернутая чашка, U+2229 ISOtech -->
<!ENTITY cup   "&#8746;" ><!-- объединение = чашка, U+222A ISOtech -->
<!ENTITY int   "&#8747;" ><!-- интеграл, U+222B ISOtech -->
<!ENTITY there4  "&#8756;" ><!-- следует, U+2234 ISOtech -->
<!ENTITY sim   "&#8764;" ><!-- оператор "тильда" = пропорционально = подобно, U+223C ISOtech -->
<!-- оператор "тильда и тильда, U+007E, - это НЕ одно и то же,
   хотя для них может использоваться один и тот же глиф -->
<!ENTITY cong   "&#8773;" ><!-- приблизительно равно, U+2245 ISOtech -->
<!ENTITY asymp  "&#8776;" ><!-- почти равно = асимптотически сходится, U+2248 ISOamsr -->
<!ENTITY ne    "&#8800;" ><!-- не равно, U+2260 ISOtech -->
<!ENTITY equiv  "&#8801;" ><!-- идентично, U+2261 ISOtech -->
<!ENTITY le    "&#8804;" ><!-- знак "меньше или равно", U+2264 ISOtech -->
<!ENTITY ge    "&#8805;" ><!-- знак "больше или равно", U+2265 ISOtech -->
<!ENTITY sub   "&#8834;" ><!-- является подмножеством, U+2282 ISOtech -->
<!ENTITY sup   "&#8835;" ><!-- является надмножеством, U+2283 ISOtech -->
<!-- обратите внимание, что nsup, 'не является подмножеством, U+2283' не входит в кодировку Symbol
   и не включается в набор. Нужно ли это, для симметрии?
   Он есть в ISOamsn -->
<!ENTITY nsub   "&#8836;" ><!-- не является подмножеством, U+2284 ISOamsn -->
<!ENTITY sube   "&#8838;" ><!-- является подмножеством или равно, U+2286 ISOtech -->
<!ENTITY supe   "&#8839;" ><!-- является надмножеством или равно, U+2287 ISOtech -->
<!ENTITY oplus  "&#8853;" ><!-- плюс в кружочке = прямая сумма, U+2295 ISOamsb -->
<!ENTITY otimes  "&#8855;" ><!-- знак умножения в кружочке = векторное произведение, U+2297 ISOamsb -->
<!ENTITY perp   "&#8869;" ><!-- ортогонально = перпендикулярно, U+22A5 ISOtech -->
<!ENTITY sdot   "&#8901;" ><!-- оператор "точка", U+22C5 ISOamsb -->
<!-- оператор "точка" и U+00B7, средняя точка, - НЕ одно и то же -->

<!-- Прочие технические символы -->
<!ENTITY lceil  "&#8968;" ><!-- left ceiling = apl upstile, U+2308 ISOamsc -->
<!ENTITY rceil  "&#8969;" ><!-- right ceiling, U+2309 ISOamsc -->
<!ENTITY lfloor  "&#8970;" ><!-- left floor = apl downstile, U+230A ISOamsc -->
<!ENTITY rfloor  "&#8971;" ><!-- right floor, U+230B ISOamsc -->
<!ENTITY lang   "&#9001;" ><!-- левая угловая скобка, U+2329 ISOtech -->
<!-- lang и U+003C 'меньше' или U+2039 - 
   это НЕ одно и то же -->
<!ENTITY rang   "&#9002;" ><!-- правая угловая скобка, U+232A ISOtech -->
<!-- rang и U+003E 'больше' или U+203A 'правая одинарная угловая кавычка' - 
   это НЕ одно и то же -->

<!-- Геометрические фигуры -->
<!ENTITY loz   "&#9674;" ><!-- ромб, U+25CA ISOpub -->

<!-- Прочие символы -->
<!ENTITY spades  "&#9824;" ><!-- черные пики, U+2660 ISOpub -->
<!-- "черные" здесь означает полностью черные, а не просто контур -->
<!ENTITY clubs  "&#9827;" ><!-- черные трефы = трилистник, U+2663 ISOpub -->
<!ENTITY hearts  "&#9829;" ><!-- черные червы = сердечки, U+2665 ISOpub -->
<!ENTITY diams  "&#9830;" ><!-- черные бубны, U+2666 ISOpub -->

<!-- конец xhtml-symbol.ent -->

Е.2. Модульная структура XHTML

Для использования всех преимуществ модулей XHTML DTD авторы DTD должны определить для своих DTD модель содержимого. Для упрощения этого в XHTML имеются различные средства. Они определяются в наборе модулей поддержки, который инициализируется основным модулем структуры:

<!-- ...................................................................... -->
<!-- Модуль модульной структуры XHTML ...................................... -->
<!-- файл: xhtml-framework-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-framework-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Modular Framework 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-framework-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Модульная структура

   Обязательный модуль инициализирует модули, необходимые
   для поддержки модели модуляризации XHTML, включая:

    + нотации
    + типы данных
    + квалифицируемые в пространствах имен имена
    + общие атрибуты
    + модель документа
    + символьные сущности

   >

<!ENTITY % xhtml-arch.module "IGNORE" >
<![%xhtml-arch.module;[
<!ENTITY % xhtml-arch.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Base Architecture 1.0//EN"
      "xhtml-arch-1.mod" >
%xhtml-arch.mod;]]>

<!ENTITY % xhtml-notations.module "INCLUDE" >
<![%xhtml-notations.module;[
<!ENTITY % xhtml-notations.mod
   PUBLIC "-//W3C//NOTATIONS XHTML Notations 1.0//EN"
      "xhtml-notations-1.mod" >
%xhtml-notations.mod;]]>

<!ENTITY % xhtml-datatypes.module "INCLUDE" >
<![%xhtml-datatypes.module;[
<!ENTITY % xhtml-datatypes.mod
   PUBLIC "-//W3C//ENTITIES XHTML Datatypes 1.0//EN"
      "xhtml-datatypes-1.mod" >
%xhtml-datatypes.mod;]]>

<!-- место для модуля поддержки XLink -->
<!ENTITY % xhtml-xlink.mod "" >
%xhtml-xlink.mod;

<!ENTITY % xhtml-qname.module "INCLUDE" >
<![%xhtml-qname.module;[
<!ENTITY % xhtml-qname.mod
   PUBLIC "-//W3C//ENTITIES XHTML Qualified Names 1.0//EN"
      "xhtml-qname-1.mod" >
%xhtml-qname.mod;]]>

<!ENTITY % xhtml-events.module "IGNORE" >
<![%xhtml-events.module;[
<!ENTITY % xhtml-events.mod
   PUBLIC "-//W3C//ENTITIES XHTML Intrinsic Events 1.0//EN"
      "xhtml-events-1.mod" >
%xhtml-events.mod;]]>

<!ENTITY % xhtml-attribs.module "INCLUDE" >
<![%xhtml-attribs.module;[
<!ENTITY % xhtml-attribs.mod
   PUBLIC "-//W3C//ENTITIES XHTML Common Attributes 1.0//EN"
      "xhtml-attribs-1.mod" >
%xhtml-attribs.mod;]]>

<!-- место для переобъявлений моделей содержимого -->
<!ENTITY % xhtml-model.redecl "" >
%xhtml-model.redecl;

<!ENTITY % xhtml-model.module "INCLUDE" >
<![%xhtml-model.module;[
<!-- инициализация модуля модели документа, объявленного в драйвере DTD
-->
%xhtml-model.mod;]]>

<!ENTITY % xhtml-charent.module "INCLUDE" >
<![%xhtml-charent.module;[
<!ENTITY % xhtml-charent.mod
   PUBLIC "-//W3C//ENTITIES XHTML Character Entities 1.0//EN"
      "xhtml-charent-1.mod" >
%xhtml-charent.mod;]]>

<!-- конец файла xhtml-framework-1.mod -->

Обратите внимание, что приведенный выше модуль ссылается на модуль модели содержимого. Этот модуль определяется для каждого типа документа в дополнение к файлу драйвера типа документа. Кроме того, в модульной структуре используются и следующие модули компонентов:

Е.2.1. Базовая архитектура XHTML

<!-- ...................................................................... -->
<!-- Модуль базовой архитектуры XHTML ...................................... -->
<!-- файл: xhtml-arch-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-arch-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Base Architecture 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-arch-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- В этот необязательный модуль входят объявления, позволяющие использовать XHTML
   как базовую архитектуру в соответствии с 'Architectural Forms Definition
   Requirements (Требования к определению архитектурных форм)' (дополнение A.3, 
   ISO/IEC 10744, 2-е издание). Дополнительную информацию
   об использовании архитектурных форм см. на веб-сайте HyTime по адресу:

     http://www.hytime.org/
-->

<?IS10744 ArcBase xhtml ?>

<!NOTATION xhtml PUBLIC "-//W3C//NOTATION AFDR ARCBASE XHTML 1.1//EN" >

<!-- Объявление сущности для связанного архитектурного DTD
-->
<!ENTITY xhtml-arch.dtd
   PUBLIC "-//W3C//DTD XHTML Architecture 1.1//EN"
       "xhtml11-arch.dtd" >

<?IS10744:arch xhtml
  public-id    = "-//W3C//NOTATION AFDR ARCBASE XHTML 1.1//EN"
  dtd-public-id  = "-//W3C//DTD XHTML 1.1//EN"
  dtd-system-id  = "xhtml11.dtd"
  doc-elem-form  = "html"
  form-att    = "html"
  renamer-att   = "htnames"
  suppressor-att = "htsupp"
  data-ignore-att = "htign"
  auto      = "ArcAuto"
  options     = "HtModReq HtModOpt"
  HtModReq    = "Framework Text Hypertext Lists Structure"
  HtModOpt    = "Standard"
?>

<!-- конец xhtml-arch-1.mod -->

Е.2.2. Нотации XHTML

<!-- ...................................................................... -->
<!-- Модуль нотаций XHTML .............................................. -->
<!-- файл: xhtml-notations-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-notations-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//NOTATIONS XHTML Notations 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-notations-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Модуль нотаций

   определяет следующие нотации, многие из которых импортированы
   из других спецификаций и стандартов. Если существует FPI,
   он включается сюда.
-->

<!-- Нотации XML ..................................... -->
<!-- Нотации SGML и XML ............................ -->

<!-- Рекомендация W3C XML 1.0 -->
<!NOTATION w3c-xml 
   PUBLIC "ISO 8879//NOTATION Extensible Markup Language (XML) 1.0//EN" >

<!-- XML 1.0 CDATA -->
<!NOTATION cdata 
   PUBLIC "-//W3C//NOTATION XML 1.0: CDATA//EN" >

<!-- Формальные открытые идентификаторы SGML -->
<!NOTATION fpi
   PUBLIC "ISO 8879:1986//NOTATION Formal Public Identifier//EN" >

<!-- Нотации XHML ..................................... -->

<!-- Расстояния, определенные для cellpadding/cellspacing -->

<!-- nn для пикселов или nn% для длин, задаваемых в процентах -->
<!NOTATION length 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Length//EN" >

<!-- разделенный пробелами список типов ссылок -->
<!NOTATION linkTypes 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: LinkTypes//EN" >

<!-- дескриптор устройства или разделенный запятыми список дескрипторов устройств -->
<!NOTATION mediaDesc 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: MediaDesc//EN" >

<!-- пикселы, проценты или относительная длина -->
<!NOTATION multiLength 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: MultiLength//EN" >

<!-- одна или несколько цифр (ЧИСЛО) -->
<!NOTATION number 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Number//EN" >

<!-- целое число, представляющее длину в пикселах -->
<!NOTATION pixels 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Pixels//EN" >

<!-- текст скрипта -->
<!NOTATION script 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Script//EN" >

<!-- текстовое содержимое -->
<!NOTATION text 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Text//EN" >

<!-- Импортированные нотации ................................ -->

<!-- один символ набора [ISO10646] -->
<!NOTATION character 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Character//EN" >

<!-- кодировка символов в соответствии с [RFC2045] -->
<!NOTATION charset 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Charset//EN" >

<!-- разделенный пробелами список кодировок символов в соответствии с [RFC2045] -->
<!NOTATION charsets 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Charsets//EN" >

<!-- тип устройства в соответствии с [RFC2045] -->
<!NOTATION contentType 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: ContentType//EN" >

<!-- разделенный запятыми список типов устройств в соответствии с [RFC2045] -->
<!NOTATION contentTypes 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: ContentTypes//EN" >

<!-- дата и время. Формат даты ISO -->
<!NOTATION datetime 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: Datetime//EN" >

<!-- код языка в соответствии с [RFC3066] -->
<!NOTATION languageCode 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: LanguageCode//EN" >

<!-- универсальный идентификатор ресурса, см. [URI] -->
<!NOTATION uri 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: URI//EN" >

<!-- разделенный пробелами список универсальных идентификаторов ресурсов, см. [URI] -->
<!NOTATION uris 
  PUBLIC "-//W3C//NOTATION XHTML Datatype: URIs//EN" >

<!-- конец xhtml-notations-1.mod -->

Е.2.3. Типы данных XHTML

<!-- ...................................................................... -->
<!-- Модуль типов данных XHTML .............................................. -->
<!-- файл: xhtml-datatypes-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Datatypes 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-datatypes-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Типы данных

   определяет контейнеры для следующих типов данных, многие из
   которых импортированы из других спецификаций и стандартов.
-->

<!-- Расстояния, определенные для cellpadding/cellspacing -->

<!-- nn для пикселов или nn% для длин, задаваемых в процентах -->
<!ENTITY % Length.datatype "CDATA" >

<!-- разделенный пробелами список типов ссылок -->
<!ENTITY % LinkTypes.datatype "NMTOKENS" >

<!-- дескриптор устройства или разделенный запятыми список дескрипторов устройств -->
<!ENTITY % MediaDesc.datatype "CDATA" >

<!-- пикселы, проценты или относительная длина -->
<!ENTITY % MultiLength.datatype "CDATA" >

<!-- одна или несколько цифр (ЧИСЛО) -->
<!ENTITY % Number.datatype "CDATA" >

<!-- целое число, представляющее длину в пикселах -->
<!ENTITY % Pixels.datatype "CDATA" >

<!-- текст скрипта -->
<!ENTITY % Script.datatype "CDATA" >

<!-- текстовое содержимое -->
<!ENTITY % Text.datatype "CDATA" >

<!-- Импортированные типы данных ................................ -->

<!-- один символ набора [ISO10646] -->
<!ENTITY % Character.datatype "CDATA" >

<!-- кодировка символов в соответствии с [RFC2045] -->
<!ENTITY % Charset.datatype "CDATA" >

<!-- разделенный пробелами список кодировок символов в соответствии с [RFC2045] -->
<!ENTITY % Charsets.datatype "CDATA" >

<!-- Определение цвета с помощью названий или значений sRGB (#RRGGBB) -->
<!ENTITY % Color.datatype "CDATA" >

<!-- тип устройства в соответствии с [RFC2045] -->
<!ENTITY % ContentType.datatype "CDATA" >

<!-- разделенный запятыми список типов устройств в соответствии с [RFC2045] -->
<!ENTITY % ContentTypes.datatype "CDATA" >

<!-- дата и время. Формат даты ISO -->
<!ENTITY % Datetime.datatype "CDATA" >

<!-- формальные открытые идентификаторы в соответствии с [ISO8879] -->
<!ENTITY % FPI.datatype "CDATA" >

<!-- код языка в соответствии с [RFC3066] -->
<!ENTITY % LanguageCode.datatype "NMTOKEN" >

<!-- универсальный идентификатор ресурса, см. [URI] -->
<!ENTITY % URI.datatype "CDATA" >

<!-- разделенный пробелами список универсальных идентификаторов ресурсов, см. [URI] -->
<!ENTITY % URIs.datatype "CDATA" >

<!-- конец файла xhtml-datatypes-1.mod -->

Е.2.4. Определения общих атрибутов XHTML

<!-- ...................................................................... -->
<!-- Модуль общих атрибутов XHTML .................................... -->
<!-- файл: xhtml-attribs-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Common Attributes 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-attribs-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Общие атрибуты

   В этом модуле объявляются многие общие атрибуты для XHTML DTD.
   %NS.decl.attrib; объявляется в модуле XHTML Qname.
-->

<!ENTITY % id.attrib
   "id      ID            #IMPLIED"
>

<!ENTITY % class.attrib
   "class    NMTOKENS         #IMPLIED"
>

<!ENTITY % title.attrib
   "title    %Text.datatype;     #IMPLIED"
>

<!ENTITY % Core.extra.attrib "" >

<!ENTITY % Core.attrib
   "%XHTML.xmlns.attrib;
   %id.attrib;
   %class.attrib;
   %title.attrib;
   %Core.extra.attrib;"
>

<!ENTITY % lang.attrib
   "xml:lang   %LanguageCode.datatype; #IMPLIED"
>

<![%XHTML.bidi;[
<!ENTITY % dir.attrib
   "dir     (ltr | rtl)      #IMPLIED"
>

<!ENTITY % I18n.attrib
   "%dir.attrib;
   %lang.attrib;"
>

]]>
<!ENTITY % I18n.attrib
   "%lang.attrib;"
>

<!ENTITY % Common.extra.attrib "" >

<!-- ранее объявленные атрибуты внутренних событий
-->
<!ENTITY % Events.attrib "" >

<!ENTITY % Common.attrib
   "%Core.attrib;
   %I18n.attrib;
   %Events.attrib;
   %Common.extra.attrib;"
>

<!-- конец файла xhtml-attribs-1.mod -->

Е.2.5. Квалифицированные имена XHTML

<!-- ....................................................................... -->
<!-- Модуль XHTML Qname ................................................... -->
<!-- файл: xhtml-qname-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Qualified Names 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-qname-1.mod"

   Версии:
#2000-10-22: добавлены объявления qname для элементов ruby
   ....................................................................... -->

<!-- Модуль XHTML Qname (квалифицированные имена)

   Этот модуль состоит из двух частей, 'А' и 'Б':

        В разделе Б объявляются параметрические сущности для обеспечения
    квалифицированных для пространств имен для всех типов элементов XHTML:

     %applet.qname;  квалифицированное xmlns имя для <applet>
     %base.qname;   квалифицированное xmlns имя для <base>
     ...

   >

<!-- Раздел А: Структура пространства имен XHTML XML :::::::::::::::::::: -->

<!-- 1. Создадим ключевое слово для условного раздела %XHTML.prefixed;
    для активизации префиксации пространства имен. Используемое по умолчанию значение 
    должно наследовать '%NS.prefixed;' из драйвера DTD, так что, если оно
    не переопределено, поведение по умолчанию следует общей
    схеме префиксации DTD.
-->
<!ENTITY % NS.prefixed "IGNORE" >
<!ENTITY % XHTML.prefixed "%NS.prefixed;" >

<!-- 2. Объявим параметрическую сущность (например, %XHTML.xmlns;), содержащую 
    ссылку на URI, используемый для идентификации пространства имен XHTML:
-->
<!ENTITY % XHTML.xmlns "http://www.w3.org/1999/xhtml" >

<!-- 3. Объявим параметрические сущности (например, %XHTML.prefix;), содержащие 
    строки используемых по умолчанию префиксов пространств имен для случаев, когда
    используется префиксация. Это может переопределяться в драйвере DTD или
    во внутреннем подмножестве экземпляра документа. Если префикс по умолчанию
    не нужен, можно объявить пустую строку.

   ПРИМЕЧАНИЕ: Как указано в [XMLNAMES], префикс пространства имен служит 
   в качестве прокси для URI и сам по себе ничего не значит.
-->
<!ENTITY % XHTML.prefix "" >

<!-- 4. Объявим параметрическую сущность (например, %XHTML.pfx;), содержащую 
    префиксы с двоеточиями (например, '%XHTML.prefix;:'), используемую в случае, когда
    префиксация активна, и пустую строку, когда она неактивна.
-->
<![%XHTML.prefixed;[
<!ENTITY % XHTML.pfx "%XHTML.prefix;:" >
]]>
<!ENTITY % XHTML.pfx "" >

<!-- здесь объявим расширения квалифицированных имен ............ -->
<!ENTITY % xhtml-qname-extra.mod "" >
%xhtml-qname-extra.mod;

<!-- 5. Параметрическую сущность %XHTML.xmlns.extra.attrib; можно переобъявить так,
    чтобы она содержала атрибуты объявлений пространств имен, отличных от XHTML,
    для пространств имен, внедренных в XHTML. По умолчанию
    используется пустая строка. Здесь следует включать XLink, если он используется
    в DTD.
-->
<!ENTITY % XHTML.xmlns.extra.attrib "" >

<!-- Оставшаяся часть раздела А справедлива только для XHTML, но не для расширений. -->

<!-- Объявим параметрическую сущность %NS.decl.attrib;, содержащую
   все объявления пространств имен XML, используемые в DTD, а также
   объявление xmlns для XHTML, форма которого зависит от
   того, используется ли префиксация.
-->
<![%XHTML.prefixed;[
<!ENTITY % NS.decl.attrib
   "xmlns:%XHTML.prefix; %URI.datatype;  #FIXED '%XHTML.xmlns;'
   %XHTML.xmlns.extra.attrib;"
>
]]>
<!ENTITY % NS.decl.attrib
   "%XHTML.xmlns.extra.attrib;"
>

<!-- Место для поддержки XLink в будущем.
-->
<!ENTITY % XLINK.xmlns.attrib "" >

<!-- Объявим параметрическую сущность %NS.decl.attrib;, содержащую все
   атрибуты объявлений пространств имен XML, используемые в XHTML, включая
   используемый по умолчанию атрибут xmlns при неактивной префиксации.
-->
<![%XHTML.prefixed;[
<!ENTITY % XHTML.xmlns.attrib
   "%NS.decl.attrib;
   %XLINK.xmlns.attrib;"
>
]]>
<!ENTITY % XHTML.xmlns.attrib
   "xmlns    %URI.datatype;      #FIXED '%XHTML.xmlns;'
   %XLINK.xmlns.attrib;"
>

<!-- место для переобъявлений квалифицированных имен -->
<!ENTITY % xhtml-qname.redecl "" >
%xhtml-qname.redecl;

<!-- Раздел Б: Квалифицированные имена XHTML ::::::::::::::::::::::::::::: -->

<!-- 6. В этом разделе объявляются параметрические сущности для обеспечения
    квалифицированных для пространств имен для всех типов элементов XHTML.
-->

<!-- модуль: xhtml-applet-1.mod -->
<!ENTITY % applet.qname "%XHTML.pfx;applet" >

<!-- модуль: xhtml-base-1.mod -->
<!ENTITY % base.qname  "%XHTML.pfx;base" >

<!-- модуль: xhtml-bdo-1.mod -->
<!ENTITY % bdo.qname   "%XHTML.pfx;bdo" >

<!-- модуль: xhtml-blkphras-1.mod -->
<!ENTITY % address.qname "%XHTML.pfx;address" >
<!ENTITY % blockquote.qname "%XHTML.pfx;blockquote" >
<!ENTITY % pre.qname   "%XHTML.pfx;pre" >
<!ENTITY % h1.qname   "%XHTML.pfx;h1" >
<!ENTITY % h2.qname   "%XHTML.pfx;h2" >
<!ENTITY % h3.qname   "%XHTML.pfx;h3" >
<!ENTITY % h4.qname   "%XHTML.pfx;h4" >
<!ENTITY % h5.qname   "%XHTML.pfx;h5" >
<!ENTITY % h6.qname   "%XHTML.pfx;h6" >

<!-- модуль: xhtml-blkpres-1.mod -->
<!ENTITY % hr.qname   "%XHTML.pfx;hr" >

<!-- модуль: xhtml-blkstruct-1.mod -->
<!ENTITY % div.qname   "%XHTML.pfx;div" >
<!ENTITY % p.qname    "%XHTML.pfx;p" >

<!-- модуль: xhtml-edit-1.mod -->
<!ENTITY % ins.qname   "%XHTML.pfx;ins" >
<!ENTITY % del.qname   "%XHTML.pfx;del" >

<!-- модуль: xhtml-form-1.mod -->
<!ENTITY % form.qname  "%XHTML.pfx;form" >
<!ENTITY % label.qname  "%XHTML.pfx;label" >
<!ENTITY % input.qname  "%XHTML.pfx;input" >
<!ENTITY % select.qname "%XHTML.pfx;select" >
<!ENTITY % optgroup.qname "%XHTML.pfx;optgroup" >
<!ENTITY % option.qname "%XHTML.pfx;option" >
<!ENTITY % textarea.qname "%XHTML.pfx;textarea" >
<!ENTITY % fieldset.qname "%XHTML.pfx;fieldset" >
<!ENTITY % legend.qname "%XHTML.pfx;legend" >
<!ENTITY % button.qname "%XHTML.pfx;button" >

<!-- модуль: xhtml-hypertext-1.mod -->
<!ENTITY % a.qname    "%XHTML.pfx;a" >

<!-- модуль: xhtml-image-1.mod -->
<!ENTITY % img.qname   "%XHTML.pfx;img" >

<!-- модуль: xhtml-inlphras-1.mod -->
<!ENTITY % abbr.qname  "%XHTML.pfx;abbr" >
<!ENTITY % acronym.qname "%XHTML.pfx;acronym" >
<!ENTITY % cite.qname  "%XHTML.pfx;cite" >
<!ENTITY % code.qname  "%XHTML.pfx;code" >
<!ENTITY % dfn.qname   "%XHTML.pfx;dfn" >
<!ENTITY % em.qname   "%XHTML.pfx;em" >
<!ENTITY % kbd.qname   "%XHTML.pfx;kbd" >
<!ENTITY % q.qname    "%XHTML.pfx;q" >
<!ENTITY % samp.qname  "%XHTML.pfx;samp" >
<!ENTITY % strong.qname "%XHTML.pfx;strong" >
<!ENTITY % var.qname   "%XHTML.pfx;var" >

<!-- модуль: xhtml-inlpres-1.mod -->
<!ENTITY % b.qname    "%XHTML.pfx;b" >
<!ENTITY % big.qname   "%XHTML.pfx;big" >
<!ENTITY % i.qname    "%XHTML.pfx;i" >
<!ENTITY % small.qname  "%XHTML.pfx;small" >
<!ENTITY % sub.qname   "%XHTML.pfx;sub" >
<!ENTITY % sup.qname   "%XHTML.pfx;sup" >
<!ENTITY % tt.qname   "%XHTML.pfx;tt" >

<!-- модуль: xhtml-inlstruct-1.mod -->
<!ENTITY % br.qname   "%XHTML.pfx;br" >
<!ENTITY % span.qname  "%XHTML.pfx;span" >

<!-- модуль: xhtml-ismap-1.mod (а также csismap, ssismap) -->
<!ENTITY % map.qname   "%XHTML.pfx;map" >
<!ENTITY % area.qname  "%XHTML.pfx;area" >

<!-- модуль: xhtml-link-1.mod -->
<!ENTITY % link.qname  "%XHTML.pfx;link" >

<!-- модуль: xhtml-list-1.mod -->
<!ENTITY % dl.qname   "%XHTML.pfx;dl" >
<!ENTITY % dt.qname   "%XHTML.pfx;dt" >
<!ENTITY % dd.qname   "%XHTML.pfx;dd" >
<!ENTITY % ol.qname   "%XHTML.pfx;ol" >
<!ENTITY % ul.qname   "%XHTML.pfx;ul" >
<!ENTITY % li.qname   "%XHTML.pfx;li" >

<!-- модуль: xhtml-meta-1.mod -->
<!ENTITY % meta.qname  "%XHTML.pfx;meta" >

<!-- модуль: xhtml-param-1.mod -->
<!ENTITY % param.qname  "%XHTML.pfx;param" >

<!-- модуль: xhtml-object-1.mod -->
<!ENTITY % object.qname "%XHTML.pfx;object" >

<!-- модуль: xhtml-script-1.mod -->
<!ENTITY % script.qname "%XHTML.pfx;script" >
<!ENTITY % noscript.qname "%XHTML.pfx;noscript" >

<!-- модуль: xhtml-struct-1.mod -->
<!ENTITY % html.qname  "%XHTML.pfx;html" >
<!ENTITY % head.qname  "%XHTML.pfx;head" >
<!ENTITY % title.qname  "%XHTML.pfx;title" >
<!ENTITY % body.qname  "%XHTML.pfx;body" >

<!-- модуль: xhtml-style-1.mod -->
<!ENTITY % style.qname  "%XHTML.pfx;style" >

<!-- модуль: xhtml-table-1.mod -->
<!ENTITY % table.qname  "%XHTML.pfx;table" >
<!ENTITY % caption.qname "%XHTML.pfx;caption" >
<!ENTITY % thead.qname  "%XHTML.pfx;thead" >
<!ENTITY % tfoot.qname  "%XHTML.pfx;tfoot" >
<!ENTITY % tbody.qname  "%XHTML.pfx;tbody" >
<!ENTITY % colgroup.qname "%XHTML.pfx;colgroup" >
<!ENTITY % col.qname   "%XHTML.pfx;col" >
<!ENTITY % tr.qname   "%XHTML.pfx;tr" >
<!ENTITY % th.qname   "%XHTML.pfx;th" >
<!ENTITY % td.qname   "%XHTML.pfx;td" >

<!-- модуль: xhtml-ruby-1.mod -->

<!ENTITY % ruby.qname  "%XHTML.pfx;ruby" >
<!ENTITY % rbc.qname   "%XHTML.pfx;rbc" >
<!ENTITY % rtc.qname   "%XHTML.pfx;rtc" >
<!ENTITY % rb.qname   "%XHTML.pfx;rb" >
<!ENTITY % rt.qname   "%XHTML.pfx;rt" >
<!ENTITY % rp.qname   "%XHTML.pfx;rp" >

<!-- Временные квалифицированные имена XHTML 2.0 ...................... -->

<!-- модуль: xhtml-image-2.mod -->
<!ENTITY % alt.qname   "%XHTML.pfx;alt" >

<!-- конец xhtml-qname-1.mod -->

Е.2.6. Символьные сущности XHTML

<!-- ...................................................................... -->
<!-- Модуль символьных сущностей XHTML ............................... -->
<!-- файл: xhtml-charent-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-charent-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Character Entities 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-charent-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Символьные сущности XHTML

   В этом модуле объявляется набор символьных сущностей для XHTML,
   включая наборы символов Latin 1, Symbol и Special.
-->

<!ENTITY % xhtml-lat1
  PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN"
      "xhtml-lat1.ent" >
%xhtml-lat1;

<!ENTITY % xhtml-symbol
  PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN"
      "xhtml-symbol.ent" >
%xhtml-symbol;

<!ENTITY % xhtml-special
  PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
      "xhtml-special.ent" >
%xhtml-special;

<!-- конец xhtml-charent-1.mod -->

Е.3. Реализации модулей XHTML

В данном разделе содержится формальное определение всех абстрактных модулей XHTML в виде модулей DTD.

Е.3.1. Основные модули XHTML

Е.3.1.1. Структура

<!-- ...................................................................... -->
<!-- Модуль структуры XHTML ............................................ -->
<!-- файл: xhtml-struct-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-struct-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Document Structure 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-struct-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Структура документа

    title, head, body, html

   В модуле Structure определяются основные структурные элементы и
   их атрибуты.

   Обратите внимание, что модуль содержимого элемента типа head переобъявляется
   при включении в DTD модуля Base.

   Параметрическая сущность, содержащая URI пространства имен XML,
   используемого для XHTML - '%XHTML.xmlns;', определена в модуле Qualified Names.
-->

<!-- title: Название документа ............................. -->

<!-- Элемент title не считается частью потока текста.
   Он должен выводиться, например, в виде названия страницы или
   заголовка окна. В документе должно быть одно и только одно название.
-->

<!ENTITY % title.element "INCLUDE" >
<![%title.element;[
<!ENTITY % title.content "(#PCDATA)" >
<!ENTITY % title.qname "title" >
<!ELEMENT %title.qname; %title.content; >
<!-- конец title.element -->]]>

<!ENTITY % title.attlist "INCLUDE" >
<![%title.attlist;[
<!ATTLIST %title.qname;
   %XHTML.xmlns.attrib; 
   %I18n.attrib;
>
<!-- конец title.attlist -->]]>

<!-- head: Заголовок документа ............................... -->

<!ENTITY % head.element "INCLUDE" >
<![%head.element;[
<!ENTITY % head.content
  "(%HeadOpts.mix;, %title.qname;, %HeadOpts.mix;)"
>
<!ENTITY % head.qname "head" >
<!ELEMENT %head.qname; %head.content; >
<!-- конец head.element -->]]>

<!ENTITY % head.attlist "INCLUDE" >
<![%head.attlist;[
<!-- зарезервировано для использования в будущем с профилями документов
-->
<!ENTITY % profile.attrib
   "profile   %URI.datatype;      '%XHTML.profile;'"
>

<!ATTLIST %head.qname;
   %XHTML.xmlns.attrib; 
   %I18n.attrib;
   %profile.attrib;
>
<!-- конец head.attlist -->]]>

<!-- body: Тело документа ............................... -->

<!ENTITY % body.element "INCLUDE" >
<![%body.element;[
<!ENTITY % body.content
   "(%Block.mix;)+"
>
<!ENTITY % body.qname "body" >
<!ELEMENT %body.qname; %body.content; >
<!-- конец body.element -->]]>

<!ENTITY % body.attlist "INCLUDE" >
<![%body.attlist;[
<!ATTLIST %body.qname;
   %Common.attrib;
>
<!-- конец body.attlist -->]]>

<!-- html: Элемент документа XHTML .................... -->

<!ENTITY % html.element "INCLUDE" >
<![%html.element;[
<!ENTITY % html.content "(%head.qname;, %body.qname;)" >
<!ENTITY % html.qname "html" >
<!ELEMENT %html.qname; %html.content; >
<!-- конец html.element -->]]>

<!ENTITY % html.attlist "INCLUDE" >
<![%html.attlist;[
<!-- определенное в драйвере значение атрибута версии
-->
<!ENTITY % XHTML.version.attrib
   "version   %FPI.datatype;      #FIXED '%XHTML.version;'"
>

<!-- информацию о расширении XHTML с помощью пространств
   имен XML см. в модуле Qualified Names
-->
<!ATTLIST %html.qname;
   %XHTML.xmlns.attrib; 
   %XHTML.version.attrib;
   %I18n.attrib;
>
<!-- конец html.attlist -->]]>

<!-- конец файла xhtml-struct-1.mod -->

Е.3.1.2 Текст

<!-- ...................................................................... -->
<!-- Модуль XHTML Text ................................................... -->
<!-- файл: xhtml-text-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Text 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-text-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Текстовое содержимое

   В модуль Text входят объявления всех основных
   элементов, служащих контейнерами текста, и их атрибутов.
-->

<!ENTITY % xhtml-inlstruct.module "INCLUDE" >
<![%xhtml-inlstruct.module;[
<!ENTITY % xhtml-inlstruct.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Inline Structural 1.0//EN"
      "xhtml-inlstruct-1.mod" >
%xhtml-inlstruct.mod;]]>

<!ENTITY % xhtml-inlphras.module "INCLUDE" >
<![%xhtml-inlphras.module;[
<!ENTITY % xhtml-inlphras.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Inline Phrasal 1.0//EN"
      "xhtml-inlphras-1.mod" >
%xhtml-inlphras.mod;]]>

<!ENTITY % xhtml-blkstruct.module "INCLUDE" >
<![%xhtml-blkstruct.module;[
<!ENTITY % xhtml-blkstruct.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Block Structural 1.0//EN"
      "xhtml-blkstruct-1.mod" >
%xhtml-blkstruct.mod;]]>

<!ENTITY % xhtml-blkphras.module "INCLUDE" >
<![%xhtml-blkphras.module;[
<!ENTITY % xhtml-blkphras.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Block Phrasal 1.0//EN"
      "xhtml-blkphras-1.mod" >
%xhtml-blkphras.mod;]]>

<!-- конец файла xhtml-text-1.mod -->

Е.3.1.3 Гипертекст

<!-- ...................................................................... -->
<!-- Модуль XHTML Hypertext .............................................. -->
<!-- файл: xhtml-hypertext-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-hypertext-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Hypertext 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-hypertext-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Hypertext

    a

   В данном модуле объявляется тип элемента якоря ('a'), который
   определяется источник гипертекстовой ссылки Назначение 
   ('цель' ссылки) определяется с помощью атрибута 'id'
   а не 'name', как это было в HTML.
-->

<!-- ............ Элемент якоря ............ -->

<!ENTITY % a.element "INCLUDE" >
<![%a.element;[
<!ENTITY % a.content
   "(#PCDATA | %InlNoAnchor.mix;)*"
>
<!ENTITY % a.qname "a" >
<!ELEMENT %a.qname; %a.content; >
<!-- конец a.element -->]]>

<!ENTITY % a.attlist "INCLUDE" >
<![%a.attlist;[
<!ATTLIST %a.qname;
   %Common.attrib;
   href     %URI.datatype;      #IMPLIED
   charset   %Charset.datatype;    #IMPLIED
   type     %ContentType.datatype;  #IMPLIED
   hreflang   %LanguageCode.datatype; #IMPLIED
   rel     %LinkTypes.datatype;   #IMPLIED
   rev     %LinkTypes.datatype;   #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
>
<!-- конец a.attlist -->]]>

<!-- конец xhtml-hypertext-1.mod -->

Е.3.1.4. Списки

<!-- ...................................................................... -->
<!-- Модуль XHTML Lists .................................................. -->
<!-- файл: xhtml-list-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Lists 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-list-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Списки

    dl, dt, dd, ol, ul, li

   В данном модуле объявляются типы элементов, связанных со списками
   и их атрибуты.
-->

<!ENTITY % dl.qname "dl" >
<!ENTITY % dt.qname "dt" >
<!ENTITY % dd.qname "dd" >
<!ENTITY % ol.qname "ol" >
<!ENTITY % ul.qname "ul" >
<!ENTITY % li.qname "li" >

<!-- dl: Список определений ............................... -->

<!ENTITY % dl.element "INCLUDE" >
<![%dl.element;[
<!ENTITY % dl.content "(%dt.qname; | %dd.qname;)+" >
<!ELEMENT %dl.qname; %dl.content; >
<!-- конец dl.element -->]]>

<!ENTITY % dl.attlist "INCLUDE" >
<![%dl.attlist;[
<!ATTLIST %dl.qname;
   %Common.attrib;
>
<!-- конец dl.attlist -->]]>

<!-- dt: Определяемый термин ............................... -->

<!ENTITY % dt.element "INCLUDE" >
<![%dt.element;[
<!ENTITY % dt.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ELEMENT %dt.qname; %dt.content; >
<!-- конец dt.element -->]]>

<!ENTITY % html.attlist "INCLUDE" >
<![%dl.attlist;[
<!ATTLIST %dt.qname;
   %Common.attrib;
>
<!-- конец dt.attlist -->]]>

<!-- dd: Определение термина ........................ -->

<!ENTITY % dd.element "INCLUDE" >
<![%dd.element;[
<!ENTITY % dd.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ELEMENT %dd.qname; %dd.content; >
<!-- конец dd.element -->]]>

<!ENTITY % dd.attlist "INCLUDE" >
<![%dd.attlist;[
<!ATTLIST %dd.qname;
   %Common.attrib;
>
<!-- конец dd.attlist -->]]>

<!-- ol: Упорядоченный список (нумерованный) ................ -->

<!ENTITY % ol.element "INCLUDE" >
<![%ol.element;[
<!ENTITY % ol.content "(%li.qname;)+" >
<!ELEMENT %ol.qname; %ol.content; >
<!-- конец ol.element -->]]>

<!ENTITY % ol.attlist "INCLUDE" >
<![%ol.attlist;[
<!ATTLIST %ol.qname;
   %Common.attrib;
>
<!-- конец ol.attlist -->]]>

<!-- ul: Неупорядоченный список (маркированный) ................ -->

<!ENTITY % ul.element "INCLUDE" >
<![%ul.element;[
<!ENTITY % ul.content "(%li.qname;)+" >
<!ELEMENT %ul.qname; %ul.content; >
<!-- конец ul.element -->]]>

<!ENTITY % ul.attlist "INCLUDE" >
<![%ul.attlist;[
<!ATTLIST %ul.qname;
   %Common.attrib;
>
<!-- конец ul.attlist -->]]>

<!-- li: Элемент списка ..................................... -->

<!ENTITY % li.element "INCLUDE" >
<![%li.element;[
<!ENTITY % li.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ELEMENT %li.qname; %li.content; >
<!-- конец li.element -->]]>

<!ENTITY % li.attlist "INCLUDE" >
<![%li.attlist;[
<!ATTLIST %li.qname;
   %Common.attrib;
>
<!-- конец li.attlist -->]]>

<!-- конец файла xhtml-list-1.mod -->

Е.3.2. Апплеты

<!-- ...................................................................... -->
<!-- Модуль XHTML для Java-апплетов ............................................ -->
<!-- файл: xhtml-applet-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Java Applets 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-applet-1.mod"

   Версии:
#2001-02-20: в модель содержимого модуля applet добавлена PCDATA
   ....................................................................... -->

<!-- Java-апплеты

    applet

   
   присутствовать либо атрибут code, либо атрибут object. В документах 
   располагайте элементы param внутри элемента <applet> раньше 
   другого содержимого.

   Обратите внимание, что для использования этого модуля необходима установка
   Param Element Module.
-->

<!-- applet: Java-апплет ............................... -->

<!ENTITY % applet.element "INCLUDE" >
<![%applet.element;[
<!ENTITY % applet.content
   "(#PCDATA | %param.qname; | %Flow.mix;)*"
>
<!ENTITY % applet.qname "applet" >
<!ELEMENT %applet.qname; %applet.content; >
<!-- конец applet.element -->]]>

<!ENTITY % applet.attlist "INCLUDE" >
<![%applet.attlist;[
<!ATTLIST %applet.qname;
   %Core.attrib;
   alt     %Text.datatype;     #REQUIRED
   archive   CDATA          #IMPLIED
   code     CDATA          #IMPLIED
   codebase   %URI.datatype;      #IMPLIED
   object    CDATA          #IMPLIED
   width    %Length.datatype;    #REQUIRED
   width    %Length.datatype;    #REQUIRED
>
<!-- конец applet.attlist -->]]>

<!-- конец файла xhtml-applet-1.mod -->

Е.3.3. Текст

Е.3.3.1. Оформление

<!-- ...................................................................... -->
<!-- Модуль XHTML Presentation ............................................ -->
<!-- файл: xhtml-pres-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-pres-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Presentation 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-pres-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элементы оформления

   В данном модуле определяются элементы и их атрибуты для простой
   разметки, связанной с оформлением.
-->

<!ENTITY % xhtml-inlpres.module "INCLUDE" >
<![%xhtml-inlpres.module;[
<!ENTITY % xhtml-inlpres.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Inline Presentation 1.0//EN"
      "xhtml-inlpres-1.mod" >
%xhtml-inlpres.mod;]]>

<!ENTITY % xhtml-blkpres.module "INCLUDE" >
<![%xhtml-blkpres.module;[
<!ENTITY % xhtml-blkpres.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Block Presentation 1.0//EN"
      "xhtml-blkpres-1.mod" >
%xhtml-blkpres.mod;]]>

<!-- конец файла xhtml-pres-1.mod -->

Е.3.3.2. Редактирование

<!-- ...................................................................... -->
<!-- Модуль элементов редактирования XHTML ....................................... -->
<!-- файл: xhtml-edit-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-edit-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Editing Markup 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-edit-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элементы редактирования

    ins, del

   В данном модуле определяются типы элементов и атрибуты, используемые
   для обозначения вставленных и удаленных при редактировании документа фрагментов.
-->

<!-- ins: Вставленный текст ............................... -->

<!ENTITY % ins.element "INCLUDE" >
<![%ins.element;[
<!ENTITY % ins.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ENTITY % ins.qname "ins" >
<!ELEMENT %ins.qname; %ins.content; >
<!-- конец ins.element -->]]>

<!ENTITY % ins.attlist "INCLUDE" >
<![%ins.attlist;[
<!ATTLIST %ins.qname;
   %Common.attrib;
   cite     %URI.datatype;      #IMPLIED
   datetime   %Datetime.datatype;   #IMPLIED
>
<!-- конец ins.attlist -->]]>

<!-- del: Удаленный текст ................................ -->

<!ENTITY % del.element "INCLUDE" >
<![%del.element;[
<!ENTITY % del.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ENTITY % del.qname "del" >
<!ELEMENT %del.qname; %del.content; >
<!-- конец del.element -->]]>

<!ENTITY % del.attlist "INCLUDE" >
<![%del.attlist;[
<!ATTLIST %del.qname;
   %Common.attrib;
   cite     %URI.datatype;      #IMPLIED
   datetime   %Datetime.datatype;   #IMPLIED
>
<!-- конец del.attlist -->]]>

<!-- конец файла xhtml-edit-1.mod -->

Е.3.3.3. Двунаправленный текст

<!-- ...................................................................... -->
<!-- Модуль элементов XHTML BDO ............................................. -->
<!-- файл: xhtml-bdo-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-bdo-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML BDO Element 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-bdo-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элемент переопределения двунаправленности (bdo)

   В данном модуле объявляется элемент 'bdo', используемый для переопределения
   двунаправленного алгоритма Unicode для фрагмента текста.

   ЗАВИСИМОСТИ:
   Основывается на ключевом слове условного раздела %XHTML.bidi; объявлен 
   как "INCLUDE". Поддержка двунаправленного текста включает элемент bdo 
   и атрибут 'dir'.
-->

<!ENTITY % bdo.element "INCLUDE" >
<![%bdo.element;[
<!ENTITY % bdo.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % bdo.qname "bdo" >
<!ELEMENT %bdo.qname; %bdo.content; >
<!-- конец bdo.element -->]]>

<!ENTITY % bdo.attlist "INCLUDE" >
<![%bdo.attlist;[
<!ATTLIST %bdo.qname;
   %Core.attrib;
   xml:lang   %LanguageCode.datatype; #IMPLIED
   dir     (ltr | rtl)      #REQUIRED
>
]]>

<!-- конец файла xhtml-bdo-1.mod -->

Е.3.4. Формы

Е.3.4.1. Простые формы

<!-- ...................................................................... -->
<!-- Модуль упрощенных форм XHTML ....................................... -->
<!-- файл: xhtml-basic-form-1.mod

   Это XHTML Basic, собственное подмножество XHTML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-basic-form-1.mod,v 4.1 2001/04/05 06:57:40 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Basic Forms 1.0//EN" 
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-basic-form-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Простые формы

    и атрибуты, что и в формах HTML 3.2, типы элементов, объявленные 
   здесь, включают также все общие атрибуты HTML 4.

    form, label, input, select, option, textarea
-->

<!-- объявим квалифицированные имена типов элементов:
-->
<!ENTITY % form.qname "form" >
<!ENTITY % label.qname "label" >
<!ENTITY % input.qname "input" >
<!ENTITY % select.qname "select" >
<!ENTITY % option.qname "option" >
<!ENTITY % textarea.qname "textarea" >

<!-- %BlkNoForm.mix; включает все элементы уровня блока, не относящиеся к формам,
   и %Misc.class;
-->
<!ENTITY % BlkNoForm.mix
   "%Heading.class;
   | %List.class;
   | %BlkStruct.class;
   %BlkPhras.class;
   %BlkPres.class;
   | %table.qname; 
   %Block.extra;
   %Misc.class;"
>

<!-- форма: Элемент Form ................................ -->

<!ENTITY % form.element "INCLUDE" >
<![%form.element;[
<!ENTITY % form.content
   "(%BlkNoForm.mix;)+"
>
<!ELEMENT %form.qname; %form.content; >
<!-- конец form.element -->]]>

<!ENTITY % form.attlist "INCLUDE" >
<![%form.attlist;[
<!ATTLIST %form.qname;
   %Common.attrib;
   action    %URI.datatype;      #REQUIRED
   method    (get | post)      'get'
   enctype   %ContentType.datatype;  'application/x-www-form-urlencoded'
>
<!-- конец form.attlist -->]]>

<!-- label: Текст метки поля формы ...................... -->

<!ENTITY % label.element "INCLUDE" >
<![%label.element;[
<!-- Метка не может содержать несколько полей 
-->
<!ENTITY % label.content
   "(#PCDATA
   | %input.qname; | %select.qname; | %textarea.qname;
   | %InlStruct.class;
   %InlPhras.class;
   %I18n.class;
   %InlPres.class;
   %InlSpecial.class;
   %Misc.class;)*"
>
<!ELEMENT %label.qname; %label.content; >
<!-- конец label.element -->]]>

<!ENTITY % label.attlist "INCLUDE" >
<![%label.attlist;[
<!ATTLIST %label.qname;
   %Common.attrib;
   for     IDREF          #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец label.attlist -->]]>

<!-- input: управляющий элемент формы ............................... -->

<!ENTITY % input.element "INCLUDE" >
<![%input.element;[
<!ENTITY % input.content "EMPTY" >
<!ELEMENT %input.qname; %input.content; >
<!-- конец input.element -->]]>

<!-- Из простых форм удалены типы ввода 'image' и 'file'.
-->
<!ENTITY % input.attlist "INCLUDE" >
<![%input.attlist;[
<!ENTITY % InputType.class
   "(text | password | checkbox | radio 
   | submit | reset | hidden)"
>
<!-- имя обязательно для всех атрибутов, кроме submit и reset
-->
<!ATTLIST %input.qname;
   %Common.attrib;
   type     %InputType.class;    'text'
   name     CDATA          #IMPLIED
   value    CDATA          #IMPLIED
   checked   (checked)       #IMPLIED
   size     CDATA          #IMPLIED
   maxlength  %Number.datatype;    #IMPLIED
   src     %URI.datatype;      #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец input.attlist -->]]>

<!-- select: выбор варианта ........................... -->

<!ENTITY % select.element "INCLUDE" >
<![%select.element;[
<!ENTITY % select.content "(%option.qname;)+" >
<!ELEMENT %select.qname; %select.content; >
<!-- конец select.element -->]]>

<!ENTITY % select.attlist "INCLUDE" >
<![%select.attlist;[
<!ATTLIST %select.qname;
   %Common.attrib;
   name     CDATA          #IMPLIED
   size     %Number.datatype;    #IMPLIED
   multiple   (multiple)       #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
>
<!-- конец select.attlist -->]]>

<!-- option: вариант выбора ......................... -->

<!ENTITY % option.element "INCLUDE" >
<![%option.element;[
<!ENTITY % option.content "(#PCDATA)" >
<!ELEMENT %option.qname; %option.content; >
<!-- конец option.element -->]]>

<!ENTITY % option.attlist "INCLUDE" >
<![%option.attlist;[
<!ATTLIST %option.qname;
   %Common.attrib;
   selected   (selected)       #IMPLIED
   value    CDATA          #IMPLIED
>
<!-- конец option.attlist -->]]>

<!-- textarea: текстовое поле из нескольких строк ................... -->

<!ENTITY % textarea.element "INCLUDE" >
<![%textarea.element;[
<!ENTITY % textarea.content "(#PCDATA)" >
<!ELEMENT %textarea.qname; %textarea.content; >
<!-- конец textarea.element -->]]>

<!ENTITY % textarea.attlist "INCLUDE" >
<![%textarea.attlist;[
<!ATTLIST %textarea.qname;
   %Common.attrib;
   name     CDATA          #IMPLIED
   rows     %Number.datatype;    #REQUIRED
   cols     %Number.datatype;    #REQUIRED
   tabindex   %Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец textarea.attlist -->]]>

<!-- конец xhtml-basic-form-1.mod -->

Е.3.4.2. Формы

<!-- ...................................................................... -->
<!-- Модуль XHTML Forms .................................................. -->
<!-- файл: xhtml-form-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Forms 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-form-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Формы

    form, label, input, select, optgroup, option,
    textarea, fieldset, legend, button

   В данном модуле объявляется разметка, обеспечивающая поддержку электронных форм
   на базе функций форм HTML 4.
-->

<!-- объявим квалифицированные имена типов элементов:
-->
<!ENTITY % form.qname "form" >
<!ENTITY % label.qname "label" >
<!ENTITY % input.qname "input" >
<!ENTITY % select.qname "select" >
<!ENTITY % optgroup.qname "optgroup" >
<!ENTITY % option.qname "option" >
<!ENTITY % textarea.qname "textarea" >
<!ENTITY % fieldset.qname "fieldset" >
<!ENTITY % legend.qname "legend" >
<!ENTITY % button.qname "button" >

<!-- %BlkNoForm.mix; включает все элементы уровня блока, не относящиеся к формам,
   и %Misc.class;
-->
<!ENTITY % BlkNoForm.mix
   "%Heading.class;
   | %List.class;
   | %BlkStruct.class;
   %BlkPhras.class;
   %BlkPres.class;
   %Table.class; 
   %Block.extra;
   %Misc.class;"
>

<!-- форма: Элемент Form ................................ -->

<!ENTITY % form.element "INCLUDE" >
<![%form.element;[
<!ENTITY % form.content
   "(%BlkNoForm.mix;
   | %fieldset.qname;)+"
>
<!ELEMENT %form.qname; %form.content; >
<!-- конец form.element -->]]>

<!ENTITY % form.attlist "INCLUDE" >
<![%form.attlist;[
<!ATTLIST %form.qname;
   %Common.attrib;
   action    %URI.datatype;      #REQUIRED
   method    (get | post)      'get'
   enctype   %ContentType.datatype;  'application/x-www-form-urlencoded'
   accept-charset %Charsets.datatype;  #IMPLIED
   accept    %ContentTypes.datatype; #IMPLIED
>
<!-- конец form.attlist -->]]>

<!-- label: текст метки поля формы ...................... -->

<!-- Метка не может содержать несколько полей 
-->

<!ENTITY % label.element "INCLUDE" >
<![%label.element;[
<!ENTITY % label.content
   "(#PCDATA
   | %input.qname; | %select.qname; | %textarea.qname; | %button.qname;
   | %InlStruct.class;
   %InlPhras.class;
   %I18n.class;
   %InlPres.class;
   %Anchor.class;
   %InlSpecial.class;
   %Inline.extra;
   %Misc.class;)*"
>
<!ELEMENT %label.qname; %label.content; >
<!-- конец label.element -->]]>

<!ENTITY % label.attlist "INCLUDE" >
<![%label.attlist;[
<!ATTLIST %label.qname;
   %Common.attrib;
   for     IDREF          #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец label.attlist -->]]>

<!-- input: управляющий элемент формы ............................... -->

<!ENTITY % input.element "INCLUDE" >
<![%input.element;[
<!ENTITY % input.content "EMPTY" >
<!ELEMENT %input.qname; %input.content; >
<!-- конец input.element -->]]>

<!ENTITY % input.attlist "INCLUDE" >
<![%input.attlist;[
<!ENTITY % InputType.class
   "(text | password | checkbox | radio | submit 
   | reset | file | hidden | image | button)"
>
<!-- атрибут 'name' обязателен для всех, кроме submit & reset
-->
<!ATTLIST %input.qname;
   %Common.attrib;
   type     %InputType.class;    'text'
   name     CDATA          #IMPLIED
   value    CDATA          #IMPLIED
   checked   (checked)       #IMPLIED
   disabled   (disabled)       #IMPLIED
   readonly   (readonly)       #IMPLIED
   size     %Number.datatype;    #IMPLIED
   maxlength  %Number.datatype;    #IMPLIED
   src     %URI.datatype;      #IMPLIED
   alt     %Text.datatype;     #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
   accept    %ContentTypes.datatype; #IMPLIED
>
<!-- конец input.attlist -->]]>

<!-- select: выбор варианта ........................... -->

<!ENTITY % select.element "INCLUDE" >
<![%select.element;[
<!ENTITY % select.content
   "(%optgroup.qname; | %option.qname;)+"
>
<!ELEMENT %select.qname; %select.content; >
<!-- конец select.element -->]]>

<!ENTITY % select.attlist "INCLUDE" >
<![%select.attlist;[
<!ATTLIST %select.qname;
   %Common.attrib;
   name     CDATA          #IMPLIED
   size     %Number.datatype;    #IMPLIED
   multiple   (multiple)       #IMPLIED
   disabled   (disabled)       #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
>
<!-- конец select.attlist -->]]>

<!-- optgroup: группа вариантов ........................... -->

<!ENTITY % optgroup.element "INCLUDE" >
<![%optgroup.element;[
<!ENTITY % optgroup.content "(%option.qname;)+" >
<!ELEMENT %optgroup.qname; %optgroup.content; >
<!-- конец optgroup.element -->]]>

<!ENTITY % optgroup.attlist "INCLUDE" >
<![%optgroup.attlist;[
<!ATTLIST %optgroup.qname;
   %Common.attrib;
   disabled   (disabled)       #IMPLIED
   label    %Text.datatype;     #REQUIRED
>
<!-- конец optgroup.attlist -->]]>

<!-- option: вариант выбора ......................... -->

<!ENTITY % option.element "INCLUDE" >
<![%option.element;[
<!ENTITY % option.content "(#PCDATA)" >
<!ELEMENT %option.qname; %option.content; >
<!-- конец option.element -->]]>

<!ENTITY % option.attlist "INCLUDE" >
<![%option.attlist;[
<!ATTLIST %option.qname;
   %Common.attrib;
   selected   (selected)       #IMPLIED
   disabled   (disabled)       #IMPLIED
   label    %Text.datatype;     #IMPLIED
   value    CDATA          #IMPLIED
>
<!-- конец option.attlist -->]]>

<!-- textarea: текстовое поле из нескольких строк ................... -->

<!ENTITY % textarea.element "INCLUDE" >
<![%textarea.element;[
<!ENTITY % textarea.content "(#PCDATA)" >
<!ELEMENT %textarea.qname; %textarea.content; >
<!-- конец textarea.element -->]]>

<!ENTITY % textarea.attlist "INCLUDE" >
<![%textarea.attlist;[
<!ATTLIST %textarea.qname;
   %Common.attrib;
   name     CDATA          #IMPLIED
   rows     %Number.datatype;    #REQUIRED
   cols     %Number.datatype;    #REQUIRED
   disabled   (disabled)       #IMPLIED
   readonly   (readonly)       #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец textarea.attlist -->]]>

<!-- fieldset: Группа элементов управления формой ............................... -->

<!-- #PCDATA для решения проблемы смешанного содержимого,
   по спецификации допустимы только пробельные символы
-->

<!ENTITY % fieldset.element "INCLUDE" >
<![%fieldset.element;[
<!ENTITY % fieldset.content
   "(#PCDATA | %legend.qname; | %Flow.mix;)*"
>
<!ELEMENT %fieldset.qname; %fieldset.content; >
<!-- конец fieldset.element -->]]>

<!ENTITY % fieldset.attlist "INCLUDE" >
<![%fieldset.attlist;[
<!ATTLIST %fieldset.qname;
   %Common.attrib;
>
<!-- конец fieldset.attlist -->]]>

<!-- legend: Подпись к набору полей ........................... -->

<!ENTITY % legend.element "INCLUDE" >
<![%legend.element;[
<!ENTITY % legend.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ELEMENT %legend.qname; %legend.content; >
<!-- конец legend.element -->]]>

<!ENTITY % legend.attlist "INCLUDE" >
<![%legend.attlist;[
<!ATTLIST %legend.qname;
   %Common.attrib;
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец legend.attlist -->]]>

<!-- button: Кнопка ............................... -->

<!ENTITY % button.element "INCLUDE" >
<![%button.element;[
<!ENTITY % button.content
   "(#PCDATA
   | %BlkNoForm.mix;
   | %InlStruct.class;
   %InlPhras.class;
   %InlPres.class;
   %I18n.class;
   %InlSpecial.class;
   %Inline.extra;)*"
>
<!ELEMENT %button.qname; %button.content; >
<!-- конец button.element -->]]>

<!ENTITY % button.attlist "INCLUDE" >
<![%button.attlist;[
<!ATTLIST %button.qname%Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец button.attlist -->]]>

<!-- end of xhtml-form-1.mod -->

Е.3.5. Таблицы

Е.3.5.1. Простые таблицы

<!-- ....................................................................... -->
<!-- Модуль простых таблиц XHTML ............................................. -->
<!-- файл: xhtml-basic-table-1.mod

    $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Basic Tables 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-basic-table-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Простые таблицы

    table, caption, tr, th, td

    степени повторяет модель содержимого и атрибуты таблиц HTML 3.2,
   объявленные здесь типы элементов включают и все
   общие атрибуты HTML 4, и большинство атрибутов таблиц HTML 4.
-->

<!-- объявим квалифицированные имена типов элементов:
-->
<!ENTITY % table.qname "table" >
<!ENTITY % caption.qname "caption" >
<!ENTITY % tr.qname "tr" >
<!ENTITY % th.qname "th" >
<!ENTITY % td.qname "td" >

<!-- атрибуты горизонтального выравнивания для содержимого ячейки
-->
<!ENTITY % CellHAlign.attrib
   "align    (left
          | center
          | right)        #IMPLIED"
>

<!-- атрибуты вертикального выравнивания для содержимого ячейки
-->
<!ENTITY % CellVAlign.attrib
   "valign    (top
          | middle
          | bottom)        #IMPLIED"
>

<!-- область действия по сравнению с атрибутом axes для общих таблиц упрощена
-->
<!ENTITY % scope.attrib
   "scope    (row | col)      #IMPLIED"
>

<!-- table: элемент для задания таблицы .............................. -->

<!ENTITY % table.element "INCLUDE" >
<![%table.element;[
<!ENTITY % table.content
   "(%caption.qname;?, %tr.qname;+)"
>
<!ELEMENT %table.qname; %table.content; >
<!-- конец table.element -->]]>

<!ENTITY % table.attlist "INCLUDE" >
<![%table.attlist;[
<!ATTLIST %table.qname;
   %Common.attrib;
   summary   %Text.datatype;     #IMPLIED
>
<!-- конец table.attlist -->]]>

<!-- caption: заголовок таблицы ............................ -->

<!ENTITY % caption.element "INCLUDE" >
<![%caption.element;[
<!ENTITY % caption.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ELEMENT %caption.qname; %caption.content; >
<!-- конец caption.element -->]]>

<!ENTITY % caption.attlist "INCLUDE" >
<![%caption.attlist;[
<!ATTLIST %caption.qname;
   %Common.attrib;
>
<!-- конец caption.attlist -->]]>

<!-- tr: строка таблицы ..................................... -->

<!ENTITY % tr.element "INCLUDE" >
<![%tr.element;[
<!ENTITY % tr.content "(%th.qname; | %td.qname;)+" >
<!ELEMENT %tr.qname; %tr.content; >
<!-- конец tr.element -->]]>

<!ENTITY % tr.attlist "INCLUDE" >
<![%tr.attlist;[
<!ATTLIST %tr.qname;
   %Common.attrib;
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец tr.attlist -->]]>

<!-- th: ячейка заголовка таблицы ............................. -->

<!-- th используется для ячеек заголовков, td - для данных.
   Для ячеек, служащих и заголовком, и данными используйте элемент td
-->

<!ENTITY % th.element "INCLUDE" >
<![%th.element;[
<!ENTITY % th.content
   "(#PCDATA | %FlowNoTable.mix;)*"
>
<!ELEMENT %th.qname; %th.content; >
<!-- конец th.element -->]]>

<!ENTITY % th.attlist "INCLUDE" >
<![%th.attlist;[
<!ATTLIST %th.qname;
   %Common.attrib;
   abbr     %Text.datatype;     #IMPLIED
   axis     CDATA          #IMPLIED
   headers   IDREFS          #IMPLIED
   %scope.attrib;
   rowspan   %Number.datatype;    '1'
   colspan   %Number.datatype;    '1'
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец th.attlist -->]]>

<!-- td: ячейка данных таблицы ............................. -->

<!ENTITY % td.element "INCLUDE" >
<![%td.element;[
<!ENTITY % td.content
   "(#PCDATA | %FlowNoTable.mix;)*"
>
<!ELEMENT %td.qname; %td.content; >
<!-- конец td.element -->]]>

<!ENTITY % td.attlist "INCLUDE" >
<![%td.attlist;[
<!ATTLIST %td.qname;
   %Common.attrib;
   abbr     %Text.datatype;     #IMPLIED
   axis     CDATA          #IMPLIED
   headers   IDREFS          #IMPLIED
   %scope.attrib;
   rowspan   %Number.datatype;    '1'
   colspan   %Number.datatype;    '1'
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец td.attlist -->]]>

<!-- конец xhtml-basic-table-1.mod -->

Е.3.5.2. Таблицы

<!-- ...................................................................... -->
<!-- Модуль таблиц XHTML .................................................. -->
<!-- файл: xhtml-table-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Tables 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-table-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Таблицы

    table, caption, thead, tfoot, tbody, colgroup, col, tr, th, td

   В данном модуле определяются типы элементов и атрибуты, используемые
   в разметке таблиц, аналогичной разметке HTML 4, включая обеспечение
   доступности для невизуальных агентов пользователей.
-->

<!-- объявим квалифицированные имена типов элементов:
-->
<!ENTITY % table.qname "table" >
<!ENTITY % caption.qname "caption" >
<!ENTITY % thead.qname "thead" >
<!ENTITY % tfoot.qname "tfoot" >
<!ENTITY % tbody.qname "tbody" >
<!ENTITY % colgroup.qname "colgroup" >
<!ENTITY % col.qname "col" >
<!ENTITY % tr.qname "tr" >
<!ENTITY % th.qname "th" >
<!ENTITY % td.qname "td" >

<!-- Атрибут frame определяет, какие части рамки вокруг таблицы
   будут представлены. Значения отличаются от
   CALS во избежание конфликта с атрибутом valign.
-->
<!ENTITY % frame.attrib
   "frame    (void
          | above
          | below
          | hsides
          | lhs
          | rhs
          | vsides
          | box
          | border)        #IMPLIED"
>

<!-- Атрибут rules определяет границы между ячейками:

   если атрибут rules отсутствует, применяется следующее правило:

    >
<!ENTITY % rules.attrib
   "rules    (none
          | groups
          | rows
          | cols
          | all)         #IMPLIED"
>

<!-- атрибуты горизонтального выравнивания для содержимого ячейки
-->
<!ENTITY % CellHAlign.attrib
   "align    (left
          | center
          | right
          | justify
          | char)         #IMPLIED
   char     %Character.datatype;   #IMPLIED
   charoff   %Length.datatype;    #IMPLIED"
>

<!-- атрибут вертикального выравнивания для содержимого ячейки
-->
<!ENTITY % CellVAlign.attrib
   "valign    (top
          | middle
          | bottom
          | baseline)       #IMPLIED"
>

<!-- область действия по сравнению с атрибутом axes для общих таблиц упрощена
-->
<!ENTITY % scope.attrib
   "scope    (row
          | col
          | rowgroup
          | colgroup)       #IMPLIED"
>

<!-- table: элемент для задания таблицы .............................. -->

<!ENTITY % table.element "INCLUDE" >
<![%table.element;[
<!ENTITY % table.content
   "(%caption.qname;?, (%col.qname;* | %colgroup.qname;*),
   ((%thead.qname;?, %tfoot.qname;?, %tbody.qname;+) | (%tr.qname;+)))"
>
<!ELEMENT %table.qname; %table.content; >
<!-- конец table.element -->]]>

<!ENTITY % table.attlist "INCLUDE" >
<![%table.attlist;[
<!ATTLIST %table.qname;
   %Common.attrib;
   summary   %Text.datatype;     #IMPLIED
   width    %Length.datatype;    #IMPLIED
   border    %Pixels.datatype;    #IMPLIED
   %frame.attrib;
   %rules.attrib;
   cellspacing %Length.datatype;    #IMPLIED
   cellpadding %Length.datatype;    #IMPLIED
>
<!-- конец table.attlist -->]]>

<!-- caption: заголовок таблицы ............................ -->

<!ENTITY % caption.element "INCLUDE" >
<![%caption.element;[
<!ENTITY % caption.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ELEMENT %caption.qname; %caption.content; >
<!-- конец caption.element -->]]>

<!ENTITY % caption.attlist "INCLUDE" >
<![%caption.attlist;[
<!ATTLIST %caption.qname;
   %Common.attrib;
>
<!-- конец caption.attlist -->]]>

<!-- thead: верхний колонтитул таблицы ............................... -->

<!-- thead используется для повтора верхнего колонтитула в случае разрыва таблицы
   при переходе на другую страницу или для представления статичных
   верхних колонтитулов, если разделы tbody представляются в прокручиваемой области.
-->

<!ENTITY % thead.element "INCLUDE" >
<![%thead.element;[
<!ENTITY % thead.content "(%tr.qname;)+" >
<!ELEMENT %thead.qname; %thead.content; >
<!-- конец thead.element -->]]>

<!ENTITY % thead.attlist "INCLUDE" >
<![%thead.attlist;[
<!ATTLIST %thead.qname;
   %Common.attrib;
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец thead.attlist -->]]>

<!-- tfoot: нижний колонтитул таблицы ............................... -->

<!-- tfoot используется для повтора нижнего колонтитула в случае разрыва таблицы
   при переходе на другую страницу или для представления статичных
   нижних колонтитулов, если разделы tbody представляются в прокручиваемой области.
-->

<!ENTITY % tfoot.element "INCLUDE" >
<![%tfoot.element;[
<!ENTITY % tfoot.content "(%tr.qname;)+" >
<!ELEMENT %tfoot.qname; %tfoot.content; >
<!-- конец tfoot.element -->]]>

<!ENTITY % tfoot.attlist "INCLUDE" >
<![%tfoot.attlist;[
<!ATTLIST %tfoot.qname;
   %Common.attrib;
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец tfoot.attlist -->]]>

<!-- tbody: тело таблицы ............................... -->

<!-- Если Вы хотите, чтобы между группами строк в таблице выводились границы,
   используйте разделы tbody.
-->

<!ENTITY % tbody.element "INCLUDE" >
<![%tbody.element;[
<!ENTITY % tbody.content "(%tr.qname;)+" >
<!ELEMENT %tbody.qname; %tbody.content; >
<!-- конец tbody.element -->]]>

<!ENTITY % tbody.attlist "INCLUDE" >
<![%tbody.attlist;[
<!ATTLIST %tbody.qname;
   %Common.attrib;
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец tbody.attlist -->]]>

<!-- colgroup: группа столбцов таблицы ...................... -->

<!-- элемент colgroup позволяет организовать группу элементов col. Это позволяет 
   сгруппировать несколько объединенных по смыслу столбцов.
-->

<!ENTITY % colgroup.element "INCLUDE" >
<![%colgroup.element;[
<!ENTITY % colgroup.content "(%col.qname;)*" >
<!ELEMENT %colgroup.qname; %colgroup.content; >
<!-- конец colgroup.element -->]]>

<!ENTITY % colgroup.attlist "INCLUDE" >
<![%colgroup.attlist;[
<!ATTLIST %colgroup.qname;
   %Common.attrib;
   span     %Number.datatype;    '1'
   width    %MultiLength.datatype;  #IMPLIED
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец colgroup.attlist -->]]>

<!-- col: столбец таблицы ...................... -->

<!-- элементы col определяют выравнивание в ячейках
   одного или нескольких столбцов.

   Атрибут width определяет ширину 
   столбцов, например

    width="64"    ширина в экранных пикселах
    width="0.5*"   относительная ширина 0.5

   Атрибут span позволяет применять атрибуты одного элемента
   col к нескольким столбцам.
-->

<!ENTITY % col.element "INCLUDE" >
<![%col.element;[
<!ENTITY % col.content "EMPTY" >
<!ELEMENT %col.qname; %col.content; >
<!-- конец col.element -->]]>

<!ENTITY % col.attlist "INCLUDE" >
<![%col.attlist;[
<!ATTLIST %col.qname;
   %Common.attrib;
   span     %Number.datatype;    '1'
   width    %MultiLength.datatype;  #IMPLIED
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец col.attlist -->]]>

<!-- tr: строка таблицы ..................................... -->

<!ENTITY % tr.element "INCLUDE" >
<![%tr.element;[
<!ENTITY % tr.content "(%th.qname; | %td.qname;)+" >
<!ELEMENT %tr.qname; %tr.content; >
<!-- конец tr.element -->]]>

<!ENTITY % tr.attlist "INCLUDE" >
<![%tr.attlist;[
<!ATTLIST %tr.qname;
   %Common.attrib;
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец tr.attlist -->]]>

<!-- th: ячейка заголовка таблицы ............................. -->

<!-- th используется для ячеек заголовков, td - для данных,
   Для ячеек, служащих и заголовком, и данными используйте элемент td
-->

<!ENTITY % th.element "INCLUDE" >
<![%th.element;[
<!ENTITY % th.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ELEMENT %th.qname; %th.content; >
<!-- конец th.element -->]]>

<!ENTITY % th.attlist "INCLUDE" >
<![%th.attlist;[
<!ATTLIST %th.qname;
   %Common.attrib;
   abbr     %Text.datatype;     #IMPLIED
   axis     CDATA          #IMPLIED
   headers   IDREFS          #IMPLIED
   %scope.attrib;
   rowspan   %Number.datatype;    '1'
   colspan   %Number.datatype;    '1'
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец th.attlist -->]]>

<!-- td: ячейка данных таблицы ............................. -->

<!ENTITY % td.element "INCLUDE" >
<![%td.element;[
<!ENTITY % td.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ELEMENT %td.qname; %td.content; >
<!-- конец td.element -->]]>

<!ENTITY % td.attlist "INCLUDE" >
<![%td.attlist;[
<!ATTLIST %td.qname;
   %Common.attrib;
   abbr     %Text.datatype;     #IMPLIED
   axis     CDATA          #IMPLIED
   headers   IDREFS          #IMPLIED
   %scope.attrib;
   rowspan   %Number.datatype;    '1'
   colspan   %Number.datatype;    '1'
   %CellHAlign.attrib;
   %CellVAlign.attrib;
>
<!-- конец td.attlist -->]]>

<!-- конец файла xhtml-table-1.mod -->

Е.3.6. Изображения

<!-- ...................................................................... -->
<!-- Модуль изображений XHTML .............................................. -->
<!-- файл: xhtml-image-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Images 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-image-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Изображения

    img

   Этот модуль обеспечивает разметку для поддержки простого внедрения изображений.
-->

<!-- Во избежание проблем с пользовательскими агентами, работающими только с текстом,
   а также для обеспечения возможности работы с изображением
   с использованием невизуальных пользовательских агентов рекомендуется задавать описание 
   в атрибуте 'alt' и не использовать серверные изображения-карты.
-->

<!ENTITY % img.element "INCLUDE" >
<![%img.element;[
<!ENTITY % img.content "EMPTY" >
<!ENTITY % img.qname "img" >
<!ELEMENT %img.qname; %img.content; >
<!-- конец img.element -->]]>

<!ENTITY % img.attlist "INCLUDE" >
<![%img.attlist;[
<!ATTLIST %img.qname;
   %Common.attrib;
   src     %URI.datatype;      #REQUIRED
   alt     %Text.datatype;     #REQUIRED
   longdesc   %URI.datatype;      #IMPLIED
   height    %Length.datatype;    #IMPLIED
   width    %Length.datatype;    #IMPLIED
>
<!-- конец img.attlist -->]]>

<!-- конец файла xhtml-image-1.mod -->

Е.3.7. Клиентские изображения-карты

<!-- ...................................................................... -->
<!-- Модуль клиентского изображения-карты XHTML ................................ -->
<!-- файл: xhtml-csismap-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Client-side Image Maps 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-csismap-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Клиентские изображения-карты

    area, map

    элемента img).

   Эти определения могут располагаться в том же самом или в
   отдельном документе, однако последний случай не всегда поддерживается
-->

<!ENTITY % area.element "INCLUDE" >
<![%area.element;[
<!ENTITY % area.content "EMPTY" >
<!ENTITY % area.qname "area" >
<!ELEMENT %area.qname; %area.content; >
<!-- конец area.element -->]]>

<!ENTITY % Shape.datatype "(rect | circle | poly | default)">
<!ENTITY % Coords.datatype "CDATA" >

<!ENTITY % area.attlist "INCLUDE" >
<![%area.attlist;[
<!ATTLIST %area.qname;
   %Common.attrib;
   href     %URI.datatype;      #IMPLIED
   shape    %Shape.datatype;     'rect'
   coords    %Coords.datatype;    #IMPLIED
   nohref    (nohref)        #IMPLIED
   alt     %Text.datatype;     #REQUIRED
   tabindex   %Number.datatype;    #IMPLIED
   accesskey  %Character.datatype;   #IMPLIED
>
<!-- конец area.attlist -->]]>

<!-- изменим определение атрибута якоря так,
   чтобы он подходил для клиентских изображений-карт
-->
<!ATTLIST %a.qname;
   shape    %Shape.datatype;     'rect'
   coords    %Coords.datatype;    #IMPLIED
>

<!-- изменим определение атрибута img так,
   чтобы он подходил для клиентских изображений-карт
-->
<!ATTLIST %img.qname;
   usemap    IDREF          #IMPLIED
>

<!-- изменим определения атрибута формы input так,
   чтобы он подходил для клиентских изображений-карт
-->
<!ATTLIST %input.qname;
   usemap    IDREF          #IMPLIED
>

<!-- изменим определения атрибута object так,
   чтобы он подходил для клиентских изображений-карт
-->
<!ATTLIST %object.qname;
   usemap    IDREF          #IMPLIED
>

<!-- 'usemap' указывает на атрибут 'id' элемента <map>,
   находящийся в том же самом документе; поддержка карт
   во внешних документах не всегда поддерживается в HTML и
   не используется в XHTML.

   Считается ошибкой, если элемент, на который указывает
   usemap IDREF, находится вне элемента <map>.
-->

<!ENTITY % map.element "INCLUDE" >
<![%map.element;[
<!ENTITY % map.content
   "((%Block.mix;) | %area.qname;)+"
>
<!ENTITY % map.qname "map" >
<!ELEMENT %map.qname; %map.content; >
<!-- конец map.element -->]]>

<!ENTITY % map.attlist "INCLUDE" >
<![%map.attlist;[
<!ATTLIST %map.qname>
<!-- конец map.attlist -->]]>

<!-- конец файла xhtml-csismap-1.mod -->

Е.3.8. Серверные изображения-карты

<!-- ...................................................................... -->
<!-- Модуль серверного изображения-карты XHTML ................................ -->
<!-- файл: xhtml-ssismap-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Server-side Image Maps 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-ssismap-1.mod"

   Версии:
#2000-10-22: добавлено объявление 'ismap' для элемента <input>
   ....................................................................... -->

<!-- Серверные изображения-карты

   В этом модуле в элементы img и input добавляется атрибут 'ismap',
   обеспечивающий поддержку обработки выбора пользователя на сервере.
-->

<!ATTLIST %img.qname;
   ismap    (ismap)        #IMPLIED
>

<!ATTLIST %input.qname;
   ismap    (ismap)        #IMPLIED
>

<!-- конец файла xhtml-ssismap-1.mod -->

Е.3.9. Объекты

<!-- ...................................................................... -->
<!-- Модуль встраиваемых объектов XHTML ........................................ -->
<!-- файл: xhtml-object-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Embedded Object 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-object-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Встраиваемые объекты

    object

   В данном модуле объявляется тип элемента object и его атрибуты, 
   используемые для встраивания объектов в XHTML-страницы. В документе располагайте
   элементы param до прочего содержимого элемента object.

   Обратите внимание, что для использования этого модуля необходима инициализация
   модуля Param Element.
-->

<!-- object: общий встраиваемый объект ................... -->

<!ENTITY % object.element "INCLUDE" >
<![%object.element;[
<!ENTITY % object.content
   "(#PCDATA | %Flow.mix; | %param.qname;)*"
>
<!ENTITY % object.qname "object" >
<!ELEMENT %object.qname; %object.content; >
<!-- конец object.element -->]]>

<!ENTITY % object.attlist "INCLUDE" >
<![%object.attlist;[
<!ATTLIST %object.qname;
   %Common.attrib;
   declare   (declare)       #IMPLIED
   classid   %URI.datatype;      #IMPLIED
   codebase   %URI.datatype;      #IMPLIED
   data     %URI.datatype;      #IMPLIED
   type     %ContentType.datatype;  #IMPLIED
   codetype   %ContentType.datatype;  #IMPLIED
   archive   %URIs.datatype;     #IMPLIED
   standby   %Text.datatype;     #IMPLIED
   height    %Length.datatype;    #IMPLIED
   width    %Length.datatype;    #IMPLIED
   name     CDATA          #IMPLIED
   tabindex   %Number.datatype;    #IMPLIED
>
<!-- конец object.attlist -->]]>

<!-- конец файла xhtml-object-1.mod -->

Е.3.10. Фреймы

<!-- ...................................................................... -->
<!-- Модуль фреймов XHTML .................................................. -->
<!-- файл: xhtml-frames-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Frames 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-frames-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Фреймы 

    frameset, frame, noframes

   в этом модулей объявляются типы элементов и атрибуты, связанные с фреймами.
-->

<!ENTITY % frameset.qname "frameset" >
<!ENTITY % frame.qname "frame" >
<!ENTITY % noframes.qname "noframes" >

<!-- разделенный запятыми список типа MultiLength -->
<!ENTITY % MultiLengths.datatype "CDATA" >

<!-- Модель содержимого для документов XHTML зависит от того,
   какой элемент располагается за элементом <head> - <frameset> или <body>. 
--> 
 
<!ENTITY % frameset.element "INCLUDE" >
<![%frameset.element;[
<!ENTITY % frameset.content 
   "((%frameset.qname; | %frame.qname;)+, %noframes.qname;?)" >
<!ELEMENT %frameset.qname; %frameset.content; >
<!-- конец frameset.element -->]]>

<!ENTITY % frameset.attlist "INCLUDE" >
<![%frameset.attlist;[
<!ATTLIST %frameset.qname; 
   %Core.attrib;
   rows     %MultiLengths.datatype; #IMPLIED
   cols     %MultiLengths.datatype; #IMPLIED
> 
<!-- конец frameset.attlist -->]]>
<![%xhtml-events.module;[
<!ATTLIST %frameset.qname;
   onload    %Script.datatype;    #IMPLIED
   onunload   %Script.datatype;    #IMPLIED
>
]]>
 
<!-- зарезервированные имена фреймов начинаются с символа "_", остальные - с буквы --> 

<!ENTITY % frame.element "INCLUDE" >
<![%frame.element;[
<!ENTITY % frame.content "EMPTY" >
<!ELEMENT %frame.qname; %frame.content; >
<!-- конец frame.element -->]]>

<!ENTITY % frame.attlist "INCLUDE" >
<![%frame.attlist;[
<!ATTLIST %frame.qname; 
   %Core.attrib;
   longdesc   %URI.datatype;      #IMPLIED
   src     %URI.datatype;      #IMPLIED
   frameborder (1 | 0)        '1'
   marginwidth %Pixels.datatype;    #IMPLIED
   marginheight %Pixels.datatype;    #IMPLIED
   noresize   (noresize)       #IMPLIED
   scrolling  (yes | no | auto)   'auto'
> 
<!-- конец frame.attlist -->]]>
 
<!-- изменения в других объявлениях .................... -->

<!-- переопределим модель содержимого для элемента html,
   подставив вместо body frameset -->
<!ENTITY % html.content 
   "(%head.qname;, %frameset.qname;)"
>

<!-- изменим контейнер для представления без фреймов --> 
 
<!ENTITY % noframes.element "INCLUDE" >
<![%noframes.element;[
<!ENTITY % noframes.content "(%body.qname;)"> 
<!ELEMENT %noframes.qname; %noframes.content; >
<!-- конец noframes.element -->]]>

<!ENTITY % noframes.attlist "INCLUDE" >
<![%noframes.attlist;[
<!ATTLIST %noframes.qname; 
   %Common.attrib;
> 
<!-- конец noframes.attlist -->]]>

<!-- конец файла xhtml-frames-1.mod -->

Е.3.11. Целевое окно

<!-- ...................................................................... -->
<!-- Модуль целевого окна XHTML .................................................. -->
<!-- файл: xhtml-target-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-target-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Target 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-target-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Целевое окно 

    target

   В этом модуле определяется атрибут target', используемый для открытия окон
-->

<!-- представление в текущем фрейме --> 
<!ENTITY % FrameTarget.datatype "CDATA" >

<!-- добавим атрибут 'target' в элемент 'a' -->
<!ATTLIST %a.qname;
   target    %FrameTarget.datatype;  #IMPLIED
>

<!-- добавим атрибут 'target' в элемент 'area' -->
<!ATTLIST %area.qname;
   target    %FrameTarget.datatype;  #IMPLIED
>

<!-- добавим атрибут 'target' в элемент 'link' -->
<!ATTLIST %link.qname;
   target    %FrameTarget.datatype;  #IMPLIED
>

<!-- добавим атрибут 'target' в элемент 'form' -->
<!ATTLIST %form.qname;
   target    %FrameTarget.datatype;  #IMPLIED
>

<!-- добавим атрибут 'target' в элемент 'base' -->
<!ATTLIST %base.qname;
   target    %FrameTarget.datatype;  #IMPLIED
>

<!-- конец файла xhtml-target-1.mod -->

Е.3.12. Встроенные фреймы

<!-- ...................................................................... -->
<!-- Модуль IFrame XHTML .................................................. -->
<!-- файл: xhtml-iframe-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-iframe-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Inline Frame Element 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-iframe-1.mod"

   Версии:
#2000-10-22: в модель содержимого элемента <iframe> в соответствии с HTML 4
       добавлено значение #PCDATA
   ....................................................................... -->

<!-- Встроенные фреймы 

    iframe

   В данном модуле объявляется тип элемента iframe и его атрибуты, 
   используемые для создания в документе встроенных фреймов.
-->

<!-- Встроенные фреймы .................................................. -->

<!ENTITY % iframe.content "(#PCDATA | %Flow.mix;)*" >
<!ENTITY % iframe.qname "iframe" >
<!ELEMENT %iframe.qname; %iframe.content; >
<!ATTLIST %iframe.qname;
   %Core.attrib;
   longdesc   %URI.datatype;      #IMPLIED
   src     %URI.datatype;      #IMPLIED
   frameborder (1 | 0)        '1'
   marginwidth %Pixels.datatype;    #IMPLIED
   marginheight %Pixels.datatype;    #IMPLIED
   scrolling  (yes | no | auto)   'auto'
   height    %Length.datatype;    #IMPLIED
   width    %Length.datatype;    #IMPLIED
>

<!-- конец файла xhtml-iframe-1.mod -->

Е.3.13. Внутренние события

<!-- ...................................................................... -->
<!-- Модуль внутренних событий XHTML ....................................... -->
<!-- файл: xhtml-events-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Intrinsic Events 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-events-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Атрибуты внутренних событий

   Эти атрибуты событий определены в HTML 4,
   раздел 18.2.3 "Внутренние события". Данный модуль должен инициализироваться 
   до модуля Attributes, но после модуля
   Datatype в модуле Modular Framework.

  "Примечание: Авторам HTML-документов следует знать, что во внутренних
   событиях (например, в привязке скриптов к событиям) 
   вполне возможны изменения. В этой области
   работают члены рабочей группы W3C по объектной
   модели документа (подробнее см. на веб-сайте W3C
   по адресу http://www.w3.org/)".
-->
<!-- ПРИМЕЧАНИЕ: Поскольку объявления ATTLIST в этом модуле расположены до
   соответствующих объявлений ELEMENT в других
   модулях, возникает зависимость от этого модуля, которая
   должна учитываться, если переобъявляются сущности параметров,
   используемые в именах типов элементов (например, %a.qname;).
-->

<!ENTITY % Events.attrib
   "onclick   %Script.datatype;    #IMPLIED
   ondblclick  %Script.datatype;    #IMPLIED
   onmousedown %Script.datatype;    #IMPLIED
   onmouseup  %Script.datatype;    #IMPLIED
   onmouseover %Script.datatype;    #IMPLIED
   onmousemove %Script.datatype;    #IMPLIED
   onmouseout  %Script.datatype;    #IMPLIED
   onkeypress  %Script.datatype;    #IMPLIED
   onkeydown  %Script.datatype;    #IMPLIED
   onkeyup   %Script.datatype;    #IMPLIED"
>

<!-- дополнительные элементы для атрибута якоря
-->
<!ATTLIST %a.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
>

<!-- дополнительные элементы для атрибута form
-->
<!ATTLIST %form.qname;
   onsubmit   %Script.datatype;    #IMPLIED
   onreset   %Script.datatype;    #IMPLIED
>

<!-- дополнительные элементы для атрибута label
-->
<!ATTLIST %label.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
>

<!-- дополнительные элементы для атрибута input
-->
<!ATTLIST %input.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
   onselect   %Script.datatype;    #IMPLIED
   onchange   %Script.datatype;    #IMPLIED
>

<!-- дополнительные элементы для атрибута select
-->
<!ATTLIST %select.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
   onchange   %Script.datatype;    #IMPLIED
>

<!-- дополнительные элементы для атрибута textarea
-->
<!ATTLIST %textarea.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
   onselect   %Script.datatype;    #IMPLIED
   onchange   %Script.datatype;    #IMPLIED
>

<!-- дополнительные элементы для атрибута button
-->
<!ATTLIST %button.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
>

<!-- дополнительные элементы для атрибута body
-->
<!ATTLIST %body.qname;
   onload    %Script.datatype;    #IMPLIED
   onunload   %Script.datatype;    #IMPLIED
>

<!-- дополнительные элементы для атрибута area
-->
<!ATTLIST %area.qname;
   ondblclick  %Script.datatype;    #IMPLIED
   onblur    %Script.datatype;     #IMPLIED
>

<!-- конец файла xhtml-events-1.mod -->

Е.3.14. Метаинформация

<!-- ...................................................................... -->
<!-- Модуль метаинформации документа XHTML ..................................... -->
<!-- файл: xhtml-meta-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Metainformation 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-meta-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Метаинформация

    meta

   В данном модуле объявляется тип элемента meta и его атрибуты, 
   позволяющие использовать описательную информацию о документе.
-->

<!-- meta: <!-- Общая метаинформация ..................................... -->

<!ENTITY % meta.element "INCLUDE" >
<![%meta.element;[
<!ENTITY % meta.content "EMPTY" >
<!ENTITY % meta.qname "meta" >
<!ELEMENT %meta.qname; %meta.content; >
<!-- конец meta.element -->]]>

<!ENTITY % meta.attlist "INCLUDE" >
<![%meta.attlist;[
<!ATTLIST %meta.qname
>
<!-- конец meta.attlist -->]]>

<!-- конец файла xhtml-meta-1.mod -->

Е.3.15. Скрипты

<!-- ...................................................................... -->
<!-- Модуль скриптов документа XHTML ..................................... -->
<!-- файл: xhtml-script-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Scripting 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-script-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Скрипты

    script, noscript

   В данном модуле определяются типы элементов и атрибуты, используемые
   для поддержки исполняемых скриптов, а также контейнера альтернативного
   содержимого, если скрипты не поддерживаются.
-->

<!-- script: выражение скрипта ....................... -->

<!ENTITY % script.element "INCLUDE" >
<![%script.element;[
<!ENTITY % script.content "(#PCDATA)" >
<!ENTITY % script.qname "script" >
<!ELEMENT %script.qname; %script.content; >
<!-- конец script.element -->]]>

<!ENTITY % script.attlist "INCLUDE" >
<![%script.attlist;[
<!ATTLIST %script.qname;
   %XHTML.xmlns.attrib;
   charset   %Charset.datatype;    #IMPLIED
   type     %ContentType.datatype;  #REQUIRED
   src     %URI.datatype;      #IMPLIED
   defer    (defer)        #IMPLIED
   xml:space  (preserve)       #FIXED 'preserve'
>
<!-- конец script.attlist -->]]>

<!-- noscript: альтернативное содержимое без использования скриптов ............. -->

<!ENTITY % noscript.element "INCLUDE" >
<![%noscript.element;[
<!ENTITY % noscript.content
   "(%Block.mix;)+"
>
<!ENTITY % noscript.qname "noscript" >
<!ELEMENT %noscript.qname; %noscript.content; >
<!-- конец noscript.element -->]]>

<!ENTITY % noscript.attlist "INCLUDE" >
<![%noscript.attlist;[
<!ATTLIST %noscript.qname;
   %Common.attrib;
>
<!-- конец noscript.attlist -->]]>

<!-- конец файла xhtml-script-1.mod -->

Е.3.16. Таблицы стилей

<!-- ...................................................................... -->
<!-- Модуль таблиц стилей документа XHTML ..................................... -->
<!-- файл: xhtml-style-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//DTD XHTML Style Sheets 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-style-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Таблицы стилей

    style

   В данном модуле объявляется тип элемента style и его атрибуты, 
   используемые для встраивания информации о стиле в элемент head документа.
-->

<!-- style: информация о таблице стилей .................... -->

<!ENTITY % style.element "INCLUDE" >
<![%style.element;[
<!ENTITY % style.content "(#PCDATA)" >
<!ENTITY % style.qname "style" >
<!ELEMENT %style.qname; %style.content; >
<!-- конец style.element -->]]>

<!ENTITY % style.attlist "INCLUDE" >
<![%style.attlist;[
<!ATTLIST %style.qname;
   %XHTML.xmlns.attrib;
   %title.attrib;
   %I18n.attrib;
   type     %ContentType.datatype;  #REQUIRED
   media    %MediaDesc.datatype;   #IMPLIED
   xml:space  (preserve)       #FIXED 'preserve'
>
<!-- конец style.attlist -->]]>

<!-- конец файла xhtml-style-1.mod -->

Е.3.17. Атрибут стиля

<!-- ...................................................................... -->
<!-- Модуль встроенного стиля XHTML ................................................... -->
<!-- файл: xhtml-inlstyle-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-inlstyle-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ENTITIES XHTML Inline Style 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-inlstyle-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Встроенный стиль

   В этом модуле объявляется атрибут 'style', используемый для поддержки
   встроенной разметки стиля. Этот модуль должен инициализироваться до модуля
   Common Attributes XHTML, чтобы он включался в %Core.attrib;.
-->

<!ENTITY % style.attrib
   "style    CDATA          #IMPLIED"
>


<!ENTITY % Core.extra.attrib
   "%style.attrib;"
>

<!-- конец файла xhtml-inlstyle-1.mod -->

Е.3.18. Ссылки

<!-- ...................................................................... -->
<!-- Модуль элементов ссылок XHTML ............................................. -->
<!-- файл: xhtml-link-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Link Element 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-link-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элемент ссылки

    link

   В данном модуле объявляется тип элемента link и его атрибуты, 
   которые (в принципе) могут использоваться для определения ссылок из документа
   на внешние ресурсы, например:

   a) ссылок на связанные с документом панели управления/меню, например, начало, оглавление,
    назад, далее, указатель, конец, справка
   б) ссылок на отдельные таблицы стилей (rel="stylesheet")
   в) ссылок на скрипты (rel="script")
   г) ссылок из таблицы стилей, управляющих представлением
    наборов узлов html в печатных документах.
   д) ссылок на версию текущего документа, предназначенную для печати,
    например, в формате postscript или pdf (rel="alternate" media="print")
-->

<!-- link: независимая от устройства ссылка...................... -->

<!ENTITY % link.element "INCLUDE" >
<![%link.element;[
<!ENTITY % link.content "EMPTY" >
<!ENTITY % link.qname "link" >
<!ELEMENT %link.qname; %link.content; >
<!-- конец link.element -->]]>

<!ENTITY % link.attlist "INCLUDE" >
<![%link.attlist;[
<!ATTLIST %link.qname;
   %Common.attrib;
   charset   %Charset.datatype;    #IMPLIED
   href     %URI.datatype;      #IMPLIED
   hreflang   %LanguageCode.datatype; #IMPLIED
   type     %ContentType.datatype;  #IMPLIED
   rel     %LinkTypes.datatype;   #IMPLIED
   rev     %LinkTypes.datatype;   #IMPLIED
   media    %MediaDesc.datatype;   #IMPLIED
>
<!-- конец link.attlist -->]]>

<!-- конец файла xhtml-link-1.mod -->

Е.3.19. Базовый URI

<!-- ...................................................................... -->
<!-- Модуль базового элемента XHTML ............................................. -->
<!-- файл: xhtml-base-1.mod

   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-base-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Base Element 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-base-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элемент Base

    base

   В данном модуле объявляется тип элемента base и его атрибуты, 
   позволяющие определить базовый URI, с помощью которого
   разрешаются относительные URI в документе.

   Обратите внимание, что в этом модуле переобъявлется модель содержимого
   элемента head: в нее включается элемент base.
-->

<!-- base: Базовый URI для документа ........................... -->

<!ENTITY % base.element "INCLUDE" >
<![%base.element;[
<!ENTITY % base.content "EMPTY" >
<!ENTITY % base.qname "base" >
<!ELEMENT %base.qname; %base.content; >
<!-- конец base.element -->]]>

<!ENTITY % base.attlist "INCLUDE" >
<![%base.attlist;[
<!ATTLIST %base.qname;
   %XHTML.xmlns.attrib;
   href     %URI.datatype;      #REQUIRED
>
<!-- конец base.attlist -->]]>

<!ENTITY % head.content
  "(%HeadOpts.mix;,
   ((%title.qname;, %HeadOpts.mix;, (%base.qname;, %HeadOpts.mix;)?)
   | (%base.qname;, %HeadOpts.mix;, (%title.qname;, %HeadOpts.mix;))))"
>

<!-- конец файла xhtml-base-1.mod -->

Е.3.20. Идентификация имен

<!-- ...................................................................... -->

<!-- Модуль идентификатора имен XHTML ........................................
 -->
<!-- file: xhtml-nameident-1.mod
   Это XHTML, переформулировка HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-nameident-1.mod,v 4.0 2001/04/02 22:42:49 altheim Exp $

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Name Identifier 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-nameident-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Идентификатор имени

    атрибут 'name' для элементов form, img, a, map, applet, frame, iframe

    случаи, когда атрибут 'name' используется
   в качестве контейнера для управляющего элемента формы, собственного имени или имени
   в метаинформации.

   Этот модуль должен инициализироваться после всех модулей, в которые он вносит изменения.
-->

<!ENTITY % form.attlist "IGNORE" >
<![%form.attlist;[
<!ATTLIST %form.qname;
   name     CDATA          #IMPLIED
>
<!-- конец form.attlist -->]]>

<!ENTITY % img.attlist "IGNORE" >
<![%img.attlist;[
<!ATTLIST %img.qname;
   name     CDATA          #IMPLIED
>
<!-- конец img.attlist -->]]>

<!ENTITY % a.attlist "IGNORE" >
<![%a.attlist;[
<!ATTLIST %a.qname;
   name     CDATA          #IMPLIED
>
<!-- конец a.attlist -->]]>

<!ENTITY % map.attlist "IGNORE" >
<![%map.attlist;[
<!ATTLIST %map.qname;
   name     CDATA          #IMPLIED
>
<!-- конец map.attlist -->]]>

<!ENTITY % applet.attlist "IGNORE" >
<![%applet.attlist;[
<!ATTLIST %applet.qname;
   name     CDATA          #IMPLIED
>
<!-- конец applet.attlist -->]]>

<!ENTITY % frame.attlist "IGNORE" >
<![%frame.attlist;[
<!ATTLIST %frame.qname;
   name     CDATA          #IMPLIED
>
<!-- конец frame.attlist -->]]>

<!ENTITY % iframe.attlist "IGNORE" >
<![%iframe.attlist;[
<!ATTLIST %iframe.qname;
   name     CDATA          #IMPLIED
>
<!-- конец iframe.attlist -->]]>

<!-- конец файла xhtml-nameident.mod -->

Е.3.21. Традиционная разметка

<!-- ...................................................................... -->
<!-- Модуль традиционной разметки XHTML ........................................... -->
<!-- file: xhtml-legacy-1.mod

    09:42:30 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Legacy Markup 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-legacy-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Традиционная разметка HTML ...........................................

    font, basefont, center, s, strike, u, dir, menu, isindex

     (и дополнительные типы данных и атрибуты)

     модуль Legacy Redeclarations. Кроме того, в этом модуле
   объявляются модули фреймов, встроенных фреймов и объектов.

   Этот модуль позволяет преобразовывать документы XHTML 1.1 для
   представления в браузерах HTML без поддержки
   CSS.
-->
<!-- Построение DTD традиционной разметки

    структуры, (%xhtml-prefw-redecl.mod;) и ВКЛЮЧИМ
   условный раздел:

    <!ENTITY % xhtml-prefw-redecl.module "INCLUDE" >
    <![%xhtml-prefw-redecl.module;[
    <!ENTITY % xhtml-prefw-redecl.mod
      PUBLIC "-//W3C//ELEMENTS XHTML Legacy Redeclarations 1.0//EN"
          "xhtml-legacy-redecl-1.mod" >
    %xhtml-prefw-redecl.mod;]]>

   Для названия такого DTD должен использоваться FPI варианта. В нем должно переобъявляться
   значение %XHTML.version; параметрической сущности этого FPI:

     "-//Your Name Here//DTD XHTML Legacy 1.1//EN"

   ВАЖНО: см. также замечания к модулю Legacy Redeclarations
   с информацией о построении DTD с использованием этого модуля.
-->


<!-- Дополнительные типы элементов .................................... -->

<!-- font: Локальный модификатор шрифта ........................ -->

<!ENTITY % font.element "INCLUDE" >
<![%font.element;[
<!ENTITY % font.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % font.qname "font" >
<!ELEMENT %font.qname; %font.content; >
<!-- конец font.element -->]]>

<!ENTITY % font.attlist "INCLUDE" >
<![%font.attlist;[
<!ATTLIST %font.qname;
   %Core.attrib;
   %I18n.attrib;
   size     CDATA          #IMPLIED
   color    %Color.datatype;     #IMPLIED
   face     CDATA          #IMPLIED
>
<!-- конец font.attlist -->]]>

<!-- basefont: базовый размер шрифта ......................... -->

<!ENTITY % basefont.element "INCLUDE" >
<![%basefont.element;[
<!ENTITY % basefont.content "EMPTY" >
<!ENTITY % basefont.qname "basefont" >
<!ELEMENT %basefont.qname; %basefont.content; >
<!-- конец basefont.element -->]]>

<!ENTITY % basefont.attlist "INCLUDE" >
<![%basefont.attlist;[
<!ATTLIST %basefont.qname;
   %id.attrib;
   size     CDATA          #REQUIRED
   color    %Color.datatype;     #IMPLIED
   face     CDATA          #IMPLIED
>
<!-- конец basefont.attlist -->]]>

<!-- center: центрирование ......................... -->

<!ENTITY % center.element "INCLUDE" >
<![%center.element;[
<!ENTITY % center.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ENTITY % center.qname "center" >
<!ELEMENT %center.qname; %center.content; >
<!-- конец center.element -->]]>

<!ENTITY % center.attlist "INCLUDE" >
<![%center.attlist;[
<!ATTLIST %center.qname;
   %Common.attrib;
>
<!-- конец center.attlist -->]]>

<!-- s: перечеркнутый текст ........................ -->

<!ENTITY % s.element "INCLUDE" >
<![%s.element;[
<!ENTITY % s.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % s.qname "s" >
<!ELEMENT %s.qname; %s.content; >
<!-- конец s.element -->]]>

<!ENTITY % s.attlist "INCLUDE" >
<![%s.attlist;[
<!ATTLIST %s.qname;
   %Common.attrib;
>
<!-- конец s.attlist -->]]>

<!-- strike: перечеркнутый текст .....................-->

<!ENTITY % strike.element "INCLUDE" >
<![%strike.element;[
<!ENTITY % strike.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % strike.qname "strike" >
<!ELEMENT %strike.qname; %strike.content; >
<!-- конец strike.element -->]]>

<!ENTITY % strike.attlist "INCLUDE" >
<![%strike.attlist;[
<!ATTLIST %strike.qname;
   %Common.attrib;
>
<!-- конец strike.attlist -->]]>

<!-- u: подчеркнутый текст ...........................-->

<!ENTITY % u.element "INCLUDE" >
<![%u.element;[
<!ENTITY % u.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % u.qname "u" >
<!ELEMENT %u.qname; %u.content; >
<!-- конец u.element -->]]>

<!ENTITY % u.attlist "INCLUDE" >
<![%u.attlist;[
<!ATTLIST %u.qname;
   %Common.attrib;
>
<!-- конец u.attlist -->]]>

<!-- dir: каталог .............................. -->

<!-- ПРИМЕЧАНИЕ: модель содержимого для элемента <dir> в HTML 4 не допускает %Block.mix;
-->
<!ENTITY % dir.element "INCLUDE" >
<![%dir.element;[
<!ENTITY % dir.content
   "(%li.qname;)+"
>
<!ENTITY % dir.qname "dir" >
<!ELEMENT %dir.qname; %dir.content; >
<!-- конец dir.element -->]]>

<!ENTITY % dir.attlist "INCLUDE" >
<![%dir.attlist;[
<!ATTLIST %dir.qname;
   %Common.attrib;
   compact   (compact)       #IMPLIED
>
<!-- конец dir.attlist -->]]>

<!-- menu: меню .................................. -->

<!-- ПРИМЕЧАНИЕ: модель содержимого для элемента <menu> в HTML 4 не допускает %Block.mix;
-->
<!ENTITY % menu.element "INCLUDE" >
<![%menu.element;[
<!ENTITY % menu.content
   "(%li.qname;)+"
>
<!ENTITY % menu.qname "menu" >
<!ELEMENT %menu.qname; %menu.content; >
<!-- конец menu.element -->]]>

<!ENTITY % menu.attlist "INCLUDE" >
<![%menu.attlist;[
<!ATTLIST %menu.qname;
   %Common.attrib;
   compact   (compact)       #IMPLIED
>
<!-- конец menu.attlist -->]]>

<!-- isindex: однострочная подсказка ...................... -->

<!ENTITY % isindex.element "INCLUDE" >
<![%isindex.element;[
<!ENTITY % isindex.content "EMPTY" >
<!ENTITY % isindex.qname "isindex" >
<!ELEMENT %isindex.qname; %isindex.content; >
<!-- конец isindex.element -->]]>

<!ENTITY % isindex.attlist "INCLUDE" >
<![%isindex.attlist;[
<!ATTLIST %isindex.qname;
   %Core.attrib;
   %I18n.attrib;
   prompt    %Text.datatype;     #IMPLIED
>
<!-- конец isindex.attlist -->]]>


<!-- Дополнительные атрибуты ....................................... -->

<!-- Атрибут выравнивания для переходного определения в браузерах HTML
   (обычно эта функциональность достаточно поддерживается CSS,
   за исключением некоторых контекстов)
-->
<!ENTITY % align.attrib
   "align    (left | center | right | justify) #IMPLIED"
>

<!ATTLIST %applet.qname;
   align    (top | middle | bottom | left | right) #IMPLIED
   hspace   %Pixels.datatype;     #IMPLIED
   vspace   %Pixels.datatype;     #IMPLIED
>

<!ATTLIST %body.qname;
   background  %URI.datatype;      #IMPLIED
   bgcolor   %Color.datatype;     #IMPLIED
   text     %Color.datatype;     #IMPLIED
   link     %Color.datatype;     #IMPLIED
   vlink    %Color.datatype;     #IMPLIED
   alink    %Color.datatype;     #IMPLIED
>

<!ATTLIST %br.qname;
   clear    (left | all | right | none) 'none'
>

<!ATTLIST %caption.qname;
   align    (top | bottom | left | right) #IMPLIED
>

<!ATTLIST %div.qname;
   %align.attrib;
>

<!ATTLIST %h1.qname;
   %align.attrib;
>

<!ATTLIST %h2.qname;
   %align.attrib;
>

<!ATTLIST %h3.qname;
   %align.attrib;
>

<!ATTLIST %h4.qname;
   %align.attrib;
>

<!ATTLIST %h5.qname;
   %align.attrib;
>

<!ATTLIST %h6.qname;
   %align.attrib;
>

<!ATTLIST %hr.qname;
   align    (left | center | right) #IMPLIED
   noshade   (noshade)       #IMPLIED
   size     %Pixels.datatype;    #IMPLIED
   width    %Length.datatype;    #IMPLIED
>

<!ATTLIST %img.qname;
   align    (top | middle | bottom | left | right) #IMPLIED
   border    %Pixels.datatype;    #IMPLIED
   hspace   %Pixels.datatype;     #IMPLIED
   vspace   %Pixels.datatype;     #IMPLIED
>

<!ATTLIST %input.qname;
   align    (top | middle | bottom | left | right) #IMPLIED
>

<!ATTLIST %legend.qname;
   align    (top | bottom | left | right) #IMPLIED
>

<!ATTLIST %li.qname;
   type     CDATA           #IMPLIED
   value    %Number.datatype;     #IMPLIED
>

<!ATTLIST %object.qname;
   align    (top | middle | bottom | left | right) #IMPLIED
   border    %Pixels.datatype;    #IMPLIED
   hspace   %Pixels.datatype;     #IMPLIED
   vspace   %Pixels.datatype;     #IMPLIED
>

<!ATTLIST %dl.qname;
   compact   (compact)       #IMPLIED
>

<!ATTLIST %ol.qname;
   type     CDATA           #IMPLIED
   compact   (compact)       #IMPLIED
   start    %Number.datatype;    #IMPLIED
>

<!ATTLIST %p.qname;
   %align.attrib;
>

<!ATTLIST %pre.qname;
   width    %Length.datatype;    #IMPLIED
>

<!ATTLIST %script.qname;
   language   %ContentType.datatype;  #IMPLIED
>

<!ATTLIST %table.qname;
   align    (left | center | right) #IMPLIED
   bgcolor   %Color.datatype;     #IMPLIED
>

<!ATTLIST %tr.qname;
   bgcolor   %Color.datatype;     #IMPLIED
>

<!ATTLIST %th.qname;
   nowrap   (nowrap)        #IMPLIED
   bgcolor   %Color.datatype;     #IMPLIED
   width    %Length.datatype;    #IMPLIED
   height    %Length.datatype;    #IMPLIED
>

<!ATTLIST %td.qname;
   nowrap   (nowrap)        #IMPLIED
   bgcolor   %Color.datatype;     #IMPLIED
   width    %Length.datatype;    #IMPLIED
   height    %Length.datatype;    #IMPLIED
>

<!ATTLIST %ul.qname;
   type     CDATA           #IMPLIED
   compact   (compact)       #IMPLIED
>

<!-- Модуль фреймов .................................................. -->
<!ENTITY % xhtml-frames.module "IGNORE" >
<![%xhtml-frames.module;[
<!ENTITY % xhtml-frames.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Frames 1.0//EN"
      "xhtml-frames-1.mod" >
%xhtml-frames.mod;]]>

<!-- Модуль встроенных фреймов .................................................. -->
<!ENTITY % xhtml-iframe.module "INCLUDE" >
<![%xhtml-iframe.module;[
<!ATTLIST %iframe.qname>
<!ENTITY % xhtml-iframe.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Inline Frame Element 1.0//EN"
      "xhtml-iframe-1.mod" >
%xhtml-iframe.mod;]]>

<!-- конец файла xhtml-legacy-1.mod -->

Е.4. Модули поддержки XHTML DTD

архитектуры модуляризации.

Е.4.1. Фразовые элементы уровня блока

<!-- ...................................................................... -->
<!-- Модуль фразовых элементов XHTML уровня блока .......................................... -->
<!-- файл: xhtml-blkphras-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Block Phrasal 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-blkphras-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Фразовые элементы уровня блока

    address, blockquote, pre, h1, h2, h3, h4, h5, h6

   В этом модуле объявляются элементы, используемые для фразовой
   разметки уровня блока, и их атрибуты.
-->

<!ENTITY % address.element "INCLUDE" >
<![%address.element;[
<!ENTITY % address.content
   "(#PCDATA | %Inline.mix;)*" >
<!ENTITY % address.qname "address" >
<!ELEMENT %address.qname; %address.content; >
<!-- конец address.element -->]]>

<!ENTITY % address.attlist "INCLUDE" >
<![%address.attlist;[
<!ATTLIST %address.qname;
   %Common.attrib;
>
<!-- конец address.attlist -->]]>

<!ENTITY % blockquote.element "INCLUDE" >
<![%blockquote.element;[
<!ENTITY % blockquote.content
   "(%Block.mix;)+"
>
<!ENTITY % blockquote.qname "blockquote" >
<!ELEMENT %blockquote.qname; %blockquote.content; >
<!-- конец blockquote.element -->]]>

<!ENTITY % blockquote.attlist "INCLUDE" >
<![%blockquote.attlist;[
<!ATTLIST %blockquote.qname;
   %Common.attrib;
   cite     %URI.datatype;      #IMPLIED
>
<!-- конец blockquote.attlist -->]]>

<!ENTITY % pre.element "INCLUDE" >
<![%pre.element;[
<!ENTITY % pre.content
   "(#PCDATA
   | %InlStruct.class;
   %InlPhras.class;
   | %tt.qname; | %i.qname; | %b.qname;
   %I18n.class;
   %Anchor.class;
   | %script.qname; | %map.qname;
   %Inline.extra;)*"
>
<!ENTITY % pre.qname "pre" >
<!ELEMENT %pre.qname; %pre.content; >
<!-- конец pre.element -->]]>

<!ENTITY % pre.attlist "INCLUDE" >
<![%pre.attlist;[
<!ATTLIST %pre.qname;
   %Common.attrib;
   xml:space  (preserve)       #FIXED 'preserve'
>
<!-- конец pre.attlist -->]]>

<!-- ................... Элементы заголовков ................... -->

<!ENTITY % Heading.content "(#PCDATA | %Inline.mix;)*" >

<!ENTITY % h1.element "INCLUDE" >
<![%h1.element;[
<!ENTITY % h1.qname "h1" >
<!ELEMENT %h1.qname; %Heading.content; >
<!-- конец h1.element -->]]>

<!ENTITY % h1.attlist "INCLUDE" >
<![%h1.attlist;[
<!ATTLIST %h1.qname;
   %Common.attrib;
>
<!-- конец h1.attlist -->]]>

<!ENTITY % h2.element "INCLUDE" >
<![%h2.element;[
<!ENTITY % h2.qname "h2" >
<!ELEMENT %h2.qname; %Heading.content; >
<!-- конец h2.element -->]]>

<!ENTITY % h2.attlist "INCLUDE" >
<![%h2.attlist;[
<!ATTLIST %h2.qname;
   %Common.attrib;
>
<!-- конец h2.attlist -->]]>

<!ENTITY % h3.element "INCLUDE" >
<![%h3.element;[
<!ENTITY % h3.qname "h3" >
<!ELEMENT %h3.qname; %Heading.content; >
<!-- конец h3.element -->]]>

<!ENTITY % h3.attlist "INCLUDE" >
<![%h3.attlist;[
<!ATTLIST %h3.qname;
   %Common.attrib;
>
<!-- конец h3.attlist -->]]>

<!ENTITY % h4.element "INCLUDE" >
<![%h4.element;[
<!ENTITY % h4.qname "h4" >
<!ELEMENT %h4.qname; %Heading.content; >
<!-- конец h4.element -->]]>

<!ENTITY % h4.attlist "INCLUDE" >
<![%h4.attlist;[
<!ATTLIST %h4.qname;
   %Common.attrib;
>
<!-- конец h4.attlist -->]]>

<!ENTITY % h5.element "INCLUDE" >
<![%h5.element;[
<!ENTITY % h5.qname "h5" >
<!ELEMENT %h5.qname; %Heading.content; >
<!-- конец h5.element -->]]>

<!ENTITY % h5.attlist "INCLUDE" >
<![%h5.attlist;[
<!ATTLIST %h5.qname;
   %Common.attrib;
>
<!-- конец h5.attlist -->]]>

<!ENTITY % h6.element "INCLUDE" >
<![%h6.element;[
<!ENTITY % h6.qname "h6" >
<!ELEMENT %h6.qname; %Heading.content; >
<!-- конец h6.element -->]]>

<!ENTITY % h6.attlist "INCLUDE" >
<![%h6.attlist;[
<!ATTLIST %h6.qname;
   %Common.attrib;
>
<!-- конец h6.attlist -->]]>

<!-- конец файла xhtml-blkphras-1.mod -->

Е.4.2. Элементы оформления уровня блока

<!-- ...................................................................... -->
<!-- Модуль элементов оформления XHTML уровня блока .......................................... -->
<!-- файл: xhtml-blkpres-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Block Presentation 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-blkpres-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Элементы оформления уровня блока

    hr

   В этом модуле объявляются элементы, используемые для поддержки
   разметки оформления уровня блока, и их атрибуты.
-->

<!ENTITY % hr.element "INCLUDE" >
<![%hr.element;[
<!ENTITY % hr.content "EMPTY" >
<!ENTITY % hr.qname "hr" >
<!ELEMENT %hr.qname; %hr.content; >
<!-- конец hr.element -->]]>

<!ENTITY % hr.attlist "INCLUDE" >
<![%hr.attlist;[
<!ATTLIST %hr.qname;
   %Common.attrib;
>
<!-- конец hr.attlist -->]]>

<!-- конец файла xhtml-blkpres-1.mod -->

Е.4.3. Структурные элементы уровня блока

<!-- ...................................................................... -->
<!-- Модуль структурных элементов XHTML уровня блока .......................................... -->
<!-- файл: xhtml-blkstruct-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Block Structural 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-blkstruct-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Структурные элементы уровня блока

    div, p

   В этом модуле объявляются элементы, используемые для поддержки
   структурной разметки уровня блока, и их атрибуты.
-->

<!ENTITY % div.element "INCLUDE" >
<![%div.element;[
<!ENTITY % div.content
   "(#PCDATA | %Flow.mix;)*"
>
<!ENTITY % div.qname "div" >
<!ELEMENT %div.qname; %div.content; >
<!-- конец div.element -->]]>

<!ENTITY % div.attlist "INCLUDE" >
<![%div.attlist;[
<!ATTLIST %div.qname;
   %Common.attrib;
>
<!-- конец div.attlist -->]]>

<!ENTITY % p.element "INCLUDE" >
<![%p.element;[
<!ENTITY % p.content
   "(#PCDATA | %Inline.mix;)*" >
<!ENTITY % p.qname "p" >
<!ELEMENT %p.qname; %p.content; >
<!-- конец p.element -->]]>

<!ENTITY % p.attlist "INCLUDE" >
<![%p.attlist;[
<!ATTLIST %p.qname;
   %Common.attrib;
>
<!-- конец p.attlist -->]]>

<!-- конец файла xhtml-blkstruct-1.mod -->

Е.4.4. Встроенные фразовые элементы

<!-- ...................................................................... -->
<!-- Модуль встроенных фразовых элементов XHTML ................................................... -->
<!-- файл: xhtml-inlphras-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Inline Phrasal 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-inlphras-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Встроенные фразовые элементы

    abbr, acronym, cite, code, dfn, em, kbd, q, samp, strong, var

   В этом модуле объявляются элементы, используемые для поддержки
   встроенной фразовой разметки, и их атрибуты.
-->

<!ENTITY % abbr.element "INCLUDE" >
<![%abbr.element;[
<!ENTITY % abbr.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % abbr.qname "abbr" >
<!ELEMENT %abbr.qname; %abbr.content; >
<!-- конец abbr.element -->]]>

<!ENTITY % abbr.attlist "INCLUDE" >
<![%abbr.attlist;[
<!ATTLIST %abbr.qname;
   %Common.attrib;
>
<!-- конец abbr.attlist -->]]>

<!ENTITY % acronym.element "INCLUDE" >
<![%acronym.element;[
<!ENTITY % acronym.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % acronym.qname "acronym" >
<!ELEMENT %acronym.qname; %acronym.content; >
<!-- конец acronym.element -->]]>

<!ENTITY % acronym.attlist "INCLUDE" >
<![%acronym.attlist;[
<!ATTLIST %acronym.qname;
   %Common.attrib;
>
<!-- конец acronym.attlist -->]]>

<!ENTITY % cite.element "INCLUDE" >
<![%cite.element;[
<!ENTITY % cite.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % cite.qname "cite" >
<!ELEMENT %cite.qname; %cite.content; >
<!-- конец cite.element -->]]>

<!ENTITY % cite.attlist "INCLUDE" >
<![%cite.attlist;[
<!ATTLIST %cite.qname;
   %Common.attrib;
>
<!-- конец cite.attlist -->]]>

<!ENTITY % code.element "INCLUDE" >
<![%code.element;[
<!ENTITY % code.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % code.qname "code" >
<!ELEMENT %code.qname; %code.content; >
<!-- конец code.element -->]]>

<!ENTITY % code.attlist "INCLUDE" >
<![%code.attlist;[
<!ATTLIST %code.qname;
   %Common.attrib;
>
<!-- конец code.attlist -->]]>

<!ENTITY % dfn.element "INCLUDE" >
<![%dfn.element;[
<!ENTITY % dfn.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % dfn.qname "dfn" >
<!ELEMENT %dfn.qname; %dfn.content; >
<!-- конец dfn.element -->]]>

<!ENTITY % dfn.attlist "INCLUDE" >
<![%dfn.attlist;[
<!ATTLIST %dfn.qname;
   %Common.attrib;
>
<!-- конец dfn.attlist -->]]>

<!ENTITY % em.element "INCLUDE" >
<![%em.element;[
<!ENTITY % em.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % em.qname "em" >
<!ELEMENT %em.qname; %em.content; >
<!-- конец em.element -->]]>

<!ENTITY % em.attlist "INCLUDE" >
<![%em.attlist;[
<!ATTLIST %em.qname;
   %Common.attrib;
>
<!-- конец em.attlist -->]]>

<!ENTITY % kbd.element "INCLUDE" >
<![%kbd.element;[
<!ENTITY % kbd.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % kbd.qname "kbd" >
<!ELEMENT %kbd.qname; %kbd.content; >
<!-- конец kbd.element -->]]>

<!ENTITY % kbd.attlist "INCLUDE" >
<![%kbd.attlist;[
<!ATTLIST %kbd.qname;
   %Common.attrib;
>
<!-- конец kbd.attlist -->]]>

<!ENTITY % q.element "INCLUDE" >
<![%q.element;[
<!ENTITY % q.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % q.qname "q" >
<!ELEMENT %q.qname; %q.content; >
<!-- конец q.element -->]]>

<!ENTITY % q.attlist "INCLUDE" >
<![%q.attlist;[
<!ATTLIST %q.qname;
   %Common.attrib;
   cite     %URI.datatype;      #IMPLIED
>
<!-- конец q.attlist -->]]>

<!ENTITY % samp.element "INCLUDE" >
<![%samp.element;[
<!ENTITY % samp.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % samp.qname "samp" >
<!ELEMENT %samp.qname; %samp.content; >
<!-- конец samp.element -->]]>

<!ENTITY % samp.attlist "INCLUDE" >
<![%samp.attlist;[
<!ATTLIST %samp.qname;
   %Common.attrib;
>
<!-- конец samp.attlist -->]]>

<!ENTITY % strong.element "INCLUDE" >
<![%strong.element;[
<!ENTITY % strong.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % strong.qname "strong" >
<!ELEMENT %strong.qname; %strong.content; >
<!-- конец strong.element -->]]>

<!ENTITY % strong.attlist "INCLUDE" >
<![%strong.attlist;[
<!ATTLIST %strong.qname;
   %Common.attrib;
>
<!-- конец strong.attlist -->]]>

<!ENTITY % var.element "INCLUDE" >
<![%var.element;[
<!ENTITY % var.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % var.qname "var" >
<!ELEMENT %var.qname; %var.content; >
<!-- конец var.element -->]]>

<!ENTITY % var.attlist "INCLUDE" >
<![%var.attlist;[
<!ATTLIST %var.qname;
   %Common.attrib;
>
<!-- конец var.attlist -->]]>

<!-- конец файла xhtml-inlphras-1.mod -->

Е.4.5. Встроенные элементы оформления

<!-- ...................................................................... -->
<!-- Модуль встроенных элементов оформления XHTML .......................................... -->
<!-- файл: xhtml-inlpres-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Inline Presentation 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-inlpres-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Встроенные элементы оформления

    b, big, i, small, sub, sup, tt

   В этом модуле объявляются элементы, используемые для поддержки
   встроенной разметки оформления, и их атрибуты.
-->

<!ENTITY % b.element "INCLUDE" >
<![%b.element;[
<!ENTITY % b.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % b.qname "b" >
<!ELEMENT %b.qname; %b.content; >
<!-- конец b.element -->]]>

<!ENTITY % b.attlist "INCLUDE" >
<![%b.attlist;[
<!ATTLIST %b.qname;
   %Common.attrib;
>
<!-- конец b.attlist -->]]>

<!ENTITY % big.element "INCLUDE" >
<![%big.element;[
<!ENTITY % big.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % big.qname "big" >
<!ELEMENT %big.qname; %big.content; >
<!-- конец big.element -->]]>

<!ENTITY % big.attlist "INCLUDE" >
<![%big.attlist;[
<!ATTLIST %big.qname;
   %Common.attrib;
>
<!-- конец big.attlist -->]]>

<!ENTITY % i.element "INCLUDE" >
<![%i.element;[
<!ENTITY % i.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % i.qname "i" >
<!ELEMENT %i.qname; %i.content; >
<!-- конец i.element -->]]>

<!ENTITY % i.attlist "INCLUDE" >
<![%i.attlist;[
<!ATTLIST %i.qname;
   %Common.attrib;
>
<!-- конец i.attlist -->]]>

<!ENTITY % small.element "INCLUDE" >
<![%small.element;[
<!ENTITY % small.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % small.qname "small" >
<!ELEMENT %small.qname; %small.content; >
<!-- конец small.element -->]]>

<!ENTITY % small.attlist "INCLUDE" >
<![%small.attlist;[
<!ATTLIST %small.qname;
   %Common.attrib;
>
<!-- конец small.attlist -->]]>

<!ENTITY % sub.element "INCLUDE" >
<![%sub.element;[
<!ENTITY % sub.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % sub.qname "sub" >
<!ELEMENT %sub.qname; %sub.content; >
<!-- конец sub.element -->]]>

<!ENTITY % sub.attlist "INCLUDE" >
<![%sub.attlist;[
<!ATTLIST %sub.qname;
   %Common.attrib;
>
<!-- конец sub.attlist -->]]>

<!ENTITY % sup.element "INCLUDE" >
<![%sup.element;[
<!ENTITY % sup.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % sup.qname "sup" >
<!ELEMENT %sup.qname; %sup.content; >
<!-- конец sup.element -->]]>

<!ENTITY % sup.attlist "INCLUDE" >
<![%sup.attlist;[
<!ATTLIST %sup.qname;
   %Common.attrib;
>
<!-- конец sup.attlist -->]]>

<!ENTITY % tt.element "INCLUDE" >
<![%tt.element;[
<!ENTITY % tt.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % tt.qname "tt" >
<!ELEMENT %tt.qname; %tt.content; >
<!-- конец tt.element -->]]>

<!ENTITY % tt.attlist "INCLUDE" >
<![%tt.attlist;[
<!ATTLIST %tt.qname;
   %Common.attrib;
>
<!-- конец tt.attlist -->]]>

<!-- конец файла xhtml-inlpres-1.mod -->

Е.4.6. Встроенные структурные элементы

<!-- ...................................................................... -->
<!-- Модуль встроенных структурных элементов XHTML .......................................... -->
<!-- файл: xhtml-inlstruct-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Inline Structural 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-inlstruct-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Встроенные структурные элементы

    br, span

   В этом модуле объявляются элементы, используемые для поддержки
   встроенной структурной разметки.
-->

<!-- br: разрыв строки ............................. -->

<!ENTITY % br.element "INCLUDE" >
<![%br.element;[

<!ENTITY % br.content "EMPTY" >
<!ENTITY % br.qname "br" >
<!ELEMENT %br.qname; %br.content; >

<!-- конец br.element -->]]>

<!ENTITY % br.attlist "INCLUDE" >
<![%br.attlist;[
<!ATTLIST %br.qname;
   %Core.attrib;
>
<!-- конец br.attlist -->]]>

<!-- span: общий встроенный контейнер .................... -->

<!ENTITY % span.element "INCLUDE" >
<![%span.element;[
<!ENTITY % span.content
   "(#PCDATA | %Inline.mix;)*"
>
<!ENTITY % span.qname "span" >
<!ELEMENT %span.qname; %span.content; >
<!-- конец span.element -->]]>

<!ENTITY % span.attlist "INCLUDE" >
<![%span.attlist;[
<!ATTLIST %span.qname;
   %Common.attrib;
>
<!-- конец span.attlist -->]]>

<!-- конец файла xhtml-inlstruct-1.mod -->

Е.4.7. Элементы параметров

<!-- ...................................................................... -->
<!-- Модуль элементов параметров XHTML ....................................... -->
<!-- файл: xhtml-param-1.mod

    altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Param Element 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-param-1.mod"

   Версии:
   (нет)
   ....................................................................... -->

<!-- Параметры для Java-апплетов и встраиваемых объектов

    param

   В этом модуле содержатся объявления элемента param,
   используемые для поддержки значений именованных свойств для элементов
   апплетов и объектов.
-->

<!-- param: Значение именованного свойства ....................... -->

<!ENTITY % param.element "INCLUDE" >
<![%param.element;[
<!ENTITY % param.content "EMPTY" >
<!ENTITY % param.qname "param" >
<!ELEMENT %param.qname; %param.content; >
<!-- конец param.element -->]]>

<!ENTITY % param.attlist "INCLUDE" >
<![%param.attlist;[
<!ATTLIST %param.qname;
   %XHTML.xmlns.attrib;
   %id.attrib;
   name     CDATA          #REQUIRED
   value    CDATA          #IMPLIED
   valuetype  (data | ref | object) 'data'
   type     %ContentType.datatype;  #IMPLIED
>
<!-- конец param.attlist -->]]>

<!-- конец файла xhtml-param-1.mod -->

Е.4.8. Традиционные переобъявления

<!-- ...................................................................... -->
<!-- Модуль традиционных переобъявлений XHTML ........................................... -->
<!-- файл: xhtml-legacy-redecl-1.mod

   Это дополнение XHTML, переформулировки HTML в качестве модульного приложения XML.
   Copyright 1998-2001 W3C (MIT, INRIA, Keio), с сохранением всех прав.
   Версия: $Id: xhtml-legacy-redecl-1.mod,v 4.4 2001/04/10 09:42:30 altheim Exp $ SMI

   Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM:

    PUBLIC "-//W3C//ELEMENTS XHTML Legacy Redeclarations 1.0//EN"
    SYSTEM "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-legacy-redecl-1.mod"

   Версии:
   (нет)
   ....................................................................... -->


<!-- Переобъявления традиционных элементов

   Этот необязательный модуль заменяет модуль Modular Framework и вводит
   переобъявления различных параметрических сущностей, обеспечивающих
   включение переходной разметки в модель документов XHTML 1.1. Инициализирует
   модули, необходимые для поддержки модели модуляризации XHTML, включая:

    + нотации
    + типы данных
    + квалифицируемые в пространствах имен имена
    + общие атрибуты
    + модель документа
    + символьные сущности

   По умолчанию включается модуль Object, а модули Frames и IFrames игнорируются.

   Модуль внутренних событий по умолчанию игнорируется, но
   встречается в этом модуле, потому что значения ему должны быть присвоены
   до модуля атрибутов, но после модуля типов данных.
-->
<!ENTITY % xhtml-legacy.module "INCLUDE" >

<!ENTITY % xhtml-arch.module "IGNORE" >
<![%xhtml-arch.module;[
<!ENTITY % xhtml-arch.mod
   PUBLIC "-//W3C//ELEMENTS XHTML Base Architecture 1.0//EN"
      "xhtml-arch-1.mod" >
%xhtml-arch.mod;]]>

<!ENTITY % xhtml-notations.module "INCLUDE" >
<![%xhtml-notations.module;[
<!ENTITY % xhtml-notations.mod
   PUBLIC "-//W3C//NOTATIONS XHTML Notations 1.0//EN"
      "xhtml-notations-1.mod" >
%xhtml-notations.mod;]]>

<!-- Модуль типов данных .............................................. -->
<!ENTITY % xhtml-datatypes.module "INCLUDE" >
<![%xhtml-datatypes.module;[
<!ENTITY % xhtml-datatypes.mod
   PUBLIC "-//W3C//ENTITIES XHTML Datatypes 1.0//EN"
      "xhtml-datatypes-1.mod" >
%xhtml-datatypes.mod;]]>

<!-- Модуль квалифицированных имен ...................................... -->
<!ENTITY % xhtml-qname.module "INCLUDE" >
<![%xhtml-qname.module;[
<!ENTITY % xhtml-qname.mod
   PUBLIC "-//W3C//ENTITIES XHTML Qualified Names 1.0//EN"
      "xhtml-qname-1.mod" >
%xhtml-qname.mod;]]>

<!-- Дополнительные квалифицированные имена ...................................... -->

<!-- xhtml-legacy-1.mod -->
<!ENTITY % font.qname   "%XHTML.pfx;font" >
<!ENTITY % basefont.qname "%XHTML.pfx;basefont" >
<!ENTITY % center.qname  "%XHTML.pfx;center" >
<!ENTITY % s.qname    "%XHTML.pfx;s" >
<!ENTITY % strike.qname  "%XHTML.pfx;strike" >
<!ENTITY % u.qname    "%XHTML.pfx;u" >
<!ENTITY % dir.qname   "%XHTML.pfx;dir" >
<!ENTITY % menu.qname   "%XHTML.pfx;menu" >
<!ENTITY % isindex.qname "%XHTML.pfx;isindex" >

<!-- xhtml-frames-1.mod -->
<!ENTITY % frameset.qname "%XHTML.pfx;frameset" >
<!ENTITY % frame.qname  "%XHTML.pfx;frame" >
<!ENTITY % noframes.qname "%XHTML.pfx;noframes" >

<!-- xhtml-iframe-1.mod -->
<!ENTITY % iframe.qname  "%XHTML.pfx;iframe" >

<!ENTITY % xhtml-events.module "IGNORE" >
<![%xhtml-events.module;[
<!ENTITY % xhtml-events.mod
   PUBLIC "-//W3C//ENTITIES XHTML Intrinsic Events 1.0//EN"
      "xhtml-events-1.mod" >
%xhtml-events.mod;]]>

<!-- Дополнительные общие атрибуты ....................................... -->

<!-- включим исторический атрибут 'lang' (значение
   которого всегда должно совпадать со значением 'xml:lang')
-->
<!ENTITY % lang.attrib
   "xml:lang   %LanguageCode.datatype; #IMPLIED
   lang     %LanguageCode.datatype; #IMPLIED"
>

<!-- Модуль общих атрибутов .................................... -->
<!ENTITY % xhtml-attribs.module "INCLUDE" >
<![%xhtml-attribs.module;[
<!ENTITY % xhtml-attribs.mod
   PUBLIC "-//W3C//ENTITIES XHTML Common Attributes 1.0//EN"
      "xhtml-attribs-1.mod" >
%xhtml-attribs.mod;]]>

<!-- место для переобъявлений моделей содержимого -->
<!ENTITY % xhtml-model.redecl "" >
%xhtml-model.redecl;

<!-- Переобъявления модели документа ............................... -->

<!ENTITY % InlPres.class
   "| %tt.qname; | %i.qname; | %b.qname; | %big.qname;
   | %small.qname; | %sub.qname; | %sup.qname;
   | %font.qname; | %basefont.qname; | %iframe.qname;
   | %s.qname; | %strike.qname; | %u.qname;"
>

<!ENTITY % InlSpecial.class
   "| %img.qname; | %map.qname; 
   | %applet.qname; | %object.qname;" >

<!ENTITY % BlkPres.class
   "| %hr.qname; | %center.qname;"
>

<!ENTITY % BlkSpecial.class
   "| %table.qname; | %form.qname; | %fieldset.qname;
   | %noframes.qname; | %isindex.qname;"
>

<!ENTITY % List.class
   "%ul.qname; | %ol.qname; | %dl.qname;
   | %dir.qname; | %menu.qname;"
>

<!-- Модуль модели документа ...................................... -->
<!ENTITY % xhtml-model.module "INCLUDE" >
<![%xhtml-model.module;[
<!-- инициализация модуля модели документа, объявленного в драйвере DTD
-->
%xhtml-model.mod;]]>

<!ENTITY % applet.content
   "(#PCDATA | %param.qname; | %Flow.mix;)*"
>

<!ENTITY % blockquote.content
   "(#PCDATA | %Flow.mix;)*"
>

<!ENTITY % noscript.content
   "(#PCDATA | %Flow.mix;)*"
>

<!ENTITY % body.content
   "(#PCDATA | %Flow.mix;)*"
>

<!-- переобъявим модель содержимого элемента <html>, чтобы в нем мог использоваться
   элемент body или frameset. Функции минимизации разметки SGML,
   используемые в HTML 4, не применяются, поэтому двусмысленность,
   вынудившая создание отдельных DTD Frameset
   и Transitional, исчезает.
-->
<!ENTITY % html.content 
   "(%head.qname;, (%body.qname; | %frameset.qname;))"
>


<!ENTITY % xhtml-charent.module "INCLUDE" >
<![%xhtml-charent.module;[
<!ENTITY % xhtml-charent.mod
   PUBLIC "-//W3C//ENTITIES XHTML Character Entities 1.0//EN"
      "xhtml-charent-1.mod" >
%xhtml-charent.mod;]]>

<!-- конец файла xhtml-legacy-redecl-1.mod -->


Главная