| ||
Copyright ©2000 W3C® (MIT, INRIA, Keio), С сохранением всех прав. Применяются все нормативы W3C, связанные с ответственностью, торговыми марками, использованием документов и лицензированием программного обеспечения.
В настоящем рабочем проекте определяется новый тип документов XHTML, основанный исключительно на модульном принципе, определенном в документе под названием "Построение модулей XHTML" [BUILDING] и модулях, определенных в документе под названием "Модуляризация в XHTML" [XHTMLMOD]. Данный тип документов служит основой будущего расширенного 'семейства' типов документов XHTML и представляет связный тип документов с учетом будущих требований, отделенный от устаревшего HTML 4 [HTML4], развившегося в XHTML 1.0 [XHTML1]. Обратите внимание, что материалы в этом документе ранее были частью документа под названием "Модуляризация XHTML", но теперь выделены в отдельную тему.
В данном разделе описан статус настоящего документа на момент его публикации. Над этим документом могут превалировать другие. Статус серии этих документов поддерживается W3C.
Это "рабочий проект Last Call" "XHTML 1.1". Период просмотра Last Call заканчивается в 2359Z 1 февраля 2000 года. Свои комментарии до окончания этого периода отправляйте по адресу www-html-editor@w3.org.
Рабочая группа готовиться запросить директора W3C о переводе данного документа в разряд предложенной рекомендации после обработки рабочей группой комментариев Last Call и внесения изменений в принципы.
Настоящий документ является результатом деятельности W3C в области HTML. Цели рабочей группы по HTML (доступ только для членов консорциума) обсуждаются в хартии рабочей группы по HTML (доступ только для членов консорциума).
Настоящий Рабочий проект W3C предназначен для просмотра членами W3C и другими заинтересованными сторонами. Это рабочий документ; он может обновляться, заменяться другими документами или устареть в любое время. Не следует использовать Рабочие проекты W3C в качестве справочного материала или приводить их ни в каком виде, кроме как в качестве "текущей работы". Эта работа продолжается и не подразумевает одобрения или согласия челнов W3C или участников рабочей группы HTML.
Список текущих Рекомендаций W3C и других технических документов расположен по адресу http://www.w3.org/TR.
Данный раздел является нормативным.
Введение семейства модулей и типов документов XHTML способствовало переходу сообщества разработчиков контента Интернет от неудобной нестандартизованной разметки к правильно построенным документам XML. В XHTML 1.0 этот переход сдерживался с целью упрощения миграции существующего контента на базе HTML 4.0 (и более ранних версий) в XHTML и XML. С пришествием модулей XHTML, определенных в документе под названием "Модуляризация XHTML", W3C устранил поддержку устаревших элементов и атрибутов из семейства XHTML. Эти элементы и атрибуты осуществляли в основном функции представления документов, которые лучше выполнять с помощью таблиц стилей или поведения по умолчанию в зависимости от клиента.
Впредь семейство типов документов XHTML будет базироваться на этом новом, более структурированном функциональном наборе. В настоящей спецификации рабочая группа HTML W3C определила исходный тип документов на базе исключительно модулей. Этот тип документов разработан как переносимый на широкий спектр клиентских устройств и применимый к большей части Интернет-контента. Разработчики контента, использующие функциональность, описанную в настоящей спецификации, могут быть уверены, что этот контент будет переносим в семействе пользовательских агентов, конформных XHTML.
Данный раздел является нормативным.
В данной версии XHTML дается определение строго конформных документов XHTML, в которых разрешено использование только элементов и атрибутов из пространства имен XHTML 1.1.
Строго конформный документ XHTML 1.1 - это документ, которому необходимы только возможности, описанные в настоящей спецификации как обязательные. Такой документ должен удовлетворять следующим критериям:
Он должен проходить проверку на корректность в соответствии с DTD из приложения В.
Корневым элементом документа должен быть элемент <html>
.
Корневой элемент документа должен назначать пространство имен XHTML с помощью атрибута xmlns
[XMLNAMES]. Указатель для пространства имен XHTML: "http://www.w3.org/1999/xhtml
".
В документе до корневого элемента должно иметься объявление DOCTYPE. Открытый идентификатор, включаемый в объявление DOCTYPE, должен ссылаться на одно из трех DTD, приведенных в приложении В, с помощью соответствующего формального открытого идентификатора. Системный идентификатор может изменяться, отражая соглашения, принятые в локальной системе.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
Вот пример минимального документа XHTML 1.1.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > <head> <title>Виртуальная библиотека</title> </head> <body> <p>Переехала по адресу <a href="http://vlib.org/">vlib.org</a>.</p> </body> </html>
Обратите внимание, что в данном примере включено объявление XML. Такое объявление XML не является обязательным для всех документов XML. Авторам документов XHTML настоятельно рекомендуется использовать объявления XML во всех своих документах. Такое объявление обязательно, если кодировка символов документа отличается от используемых по умолчанию UTF-8 или UTF-16.
Конформный пользовательский агент должен соответствовать всем требованиям, определенным в [XHTMLMOD].
Данный раздел является нормативным.
Тип документов XHTML 1.1 - полнофункциональный тип документов с богатой семантикой. Однако его функциональность не так разнообразна, как у переходного типа документов XHTML 1.0 или типа документов с фреймами. В этих типах документов определены презентационные компоненты, функциональность которых лучше передается таблицами стилей или аналогичными механизмами. Более того, поскольку тип документов XHTML 1.1 базируется исключительно на возможностях, определенных в документе под названием "Модули XHTML", он не включает устаревшие функции XHTML 1.0 или HTML 4.0. Несмотря на эти исключения или, возможно, благодаря им, тип документов XHTML 1.1 является прочной основой для будущих типов документов, предназначенных для разнообразных пользовательских агентов.
Тип документов XHTML 1.1 включает следующие абстрактные модули: Structure (структура), Basic Text (основной текст), Hypertext (гипертекст), List (список), Applet (апплет), Presentation (представление), Edit (редактирование), BDO, Forms (формы), Tables (таблицы), Image (изображение), Image Map (изображение-карта), Intrinsic Events (внутренние события), Metainformation (метаинформация), Scripting (скрипты), Stylesheet (таблица стилей) и Link (ссылка) в соответствии с определением, данным в [XHTMLMOD], и модуль Ruby Annotation в соответствии с определением, данным в [RUBY]. Этот тип документов не требует дополнительных определений. Реализация этого типа документов в виде XML DTD определена в приложении В.
Данное приложение является информативным.
В данном приложении описаны различия между XHTML 1.1 и XHTML 1.0. XHTML 1.1 представляет уход как от HTML 4.0, так и от XHTML 1.0. Самым важным показателем является устранение устаревших возможностей. Кроме того, устранены некоторые ранее имевшиеся возможности. Вообще стратегия здесь - определить язык разметки, богатый в структурном плане, но для представления использующий таблицы стилей.
В приведенной ниже таблице перечислены все элементы, имеющиеся в XHTML 1.0. Для каждого элемента указано, поддерживается ли он, и, если поддерживается, не изменилась ли для него модель содержимого и атрибуты.
Элемент | Изменения |
---|---|
ВСЕ | -lang |
a | -accesskey, -name, -tabindex, -target |
abbr | Без изменений |
acronym | Без изменений |
address | Без изменений |
applet | Без изменений |
area | -target |
b | Без изменений |
base | Не поддерживается |
basefont | Не поддерживается |
bdo | Без изменений |
big | Без изменений |
blockquote | Без изменений |
body | -background, -bgcolor, -text, -link, -vlink, -alink |
br | -clear |
button | Без изменений |
caption | -align |
center | Не поддерживается |
cite | Без изменений |
code | Без изменений |
col | Без изменений |
colgroup | Без изменений |
dd | Без изменений |
del | Без изменений |
dfn | Без изменений |
dir | Без изменений |
div | -align |
dl | Без изменений |
dt | Без изменений |
em | Без изменений |
fieldset | Без изменений |
font | Не поддерживается |
form | Без изменений |
frame | Не поддерживается |
frameset | Не поддерживается |
h1 | -align |
h2 | -align |
h3 | -align |
h4 | -align |
h5 | -align |
h6 | -align |
head | Без изменений |
hr | -align, -noshade, -size, -width |
html | Без изменений |
i | Без изменений |
iframe | Не поддерживается |
img | -align, -border, -hspace, -vspace |
input | -align |
ins | Без изменений |
isindex | Не поддерживается |
kbd | Без изменений |
label | Без изменений |
legend | -align |
li | -type, -value |
link | -target |
map | -name |
menu | Не поддерживается |
meta | Без изменений |
noframes | Не поддерживается |
noscript | Без изменений |
object | Не поддерживается |
ol | -compact, -start, -type |
optgroup | Без изменений |
option | Без изменений |
p | -align |
param | Без изменений |
pre | -width |
q | Без изменений |
s | Не поддерживается |
samp | Без изменений |
script | -language |
select | Без изменений |
small | Без изменений |
span | Без изменений |
strike | Не поддерживается |
strong | Без изменений |
style | Без изменений |
sub | Без изменений |
sup | Без изменений |
table | -align, -bgcolor |
tbody | Без изменений |
td | -bgcolor, -height, -nowrap, -width |
textarea | Без изменений |
tfoot | Без изменений |
th | -bgcolor, -height, -nowrap, -width |
thead | Без изменений |
title | Без изменений |
tr | -bgcolor |
tt | Без изменений |
u | Не поддерживается |
ul | -compact, -type |
var | Без изменений |
Данное приложение является нормативным.
Данное приложение является нормативным.
В данном разделе содержится определение XHTML 1.1 FPI в формате Открытого каталога SGML.
-- .......................................................................... -- -- Каталог файлов .......................................................... -- -- Файл данных каталога XHTML 1.1 Версия: @(#)xhtml11.cat 1.8 99/08/26 SMI Подробную информацию об указании и использовании данных каталога см. в "Entity Management", SGML Open Technical Resolution 9401. Этот документ можно получить по адресу: <http://www.oasis-open.org/cover/tr9401.html> -- -- .......................................................................... -- -- Объявление SGML, связанное с XHTML ...................................... -- OVERRIDE YES -- SGMLDECL "xml1.dcl" -- -- для синтаксических анализаторов, несовместимых с Unicode: -- SGMLDECL "xml1n.dcl" -- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -- -- Файл модульного драйвера XHTML 1.1 DTD.................................... -- PUBLIC "-//W3C//DTD XHTML 1.1//EN" . "xhtml11.dtd" -- Основные модули XHTML 1.1 ................................................ -- PUBLIC "-//W3C//ENTITIES XHTML 1.1 Document Model 1.0//EN" "xhtml11-model-1.mod" -- Конец данных каталога ................................................... -- -- .......................................................................... --
В данном разделе содержится драйвер для реализации типа документов XHTML 1.1 как XML DTD. Он базируется на реализациях модулей XHTML, определенных в [XHTMLMOD] и в [RUBY].
<!-- ....................................................................... --> <!-- XHTML 1.1 DTD ........................................................ --> <!-- файл: xhtml11.dtd --> <!-- XHTML 1.1 DTD Это XHTML 1.1, модульный вариант XHTML 1.0. Copyright 1998-2000 World Wide Web Consortium (Массачусеттский Технологический Институт, Institut National de Recherche en Informatique et en Automatique, Университет Кейо). С сохранением всех прав. Право бесплатного использования, копирования, изменения и распространения XHTML 1.1 DTD и сопровождающей документации с любой целью дается навечно при условии включения во все копии приведенной выше информации об авторском праве и данного абзаца. Обладатели авторских прав не утверждают, что DTD будет соответствовать какой-либо цели. Документы предоставляются "как есть", без явных и подразумеваемых гарантий. Автор: Мюррей М. Альтхайм <altheim@eng.sun.com> Версия: $Id: xhtml11.dtd,v 1.5 2000/01/04 19:50:19 ahby Exp $ SMI --> <!-- Это файл драйвера для версии 1.1 XHTML DTD. Пожалуйста, используйте следующий формальный идентификатор: "-//W3C//DTD XHTML 1.1//EN" --> <!ENTITY % XHTML.version "-//W3C//DTD XHTML 1.1//EN" > <!-- Для определения пространства имен по умолчанию используйте этот URI: "http://www.w3.org/1999/xhtml" --> <!ENTITY % XHTML.ns "http://www.w3.org/1999/xhtml" > <!-- Зарезервировано для использования в пространстве имен XLink: --> <!ENTITY % XLINK.ns "" > <!ENTITY % XLinkns.attrib "" > <!-- Например, если Вы используете XHTML 1.1 непосредственно, используйте FPI в объявлении DOCTYPE с атрибутом xmlns в элементе документа для указания используемого по умолчанию пространства имен <?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "xhtml11.dtd" > <html xmlns="http://www.w3.org/TR/xhtml" xmlns:xlink="http://www.w3.org/XML/XLink/0.9" xml:lang="en" > ... </html> Версии (нет --> <!-- зарезервировано для использования в будущем с профилями документов -------> <!ENTITY % XHTML.profile "" > <!-- Возможности интернационализации Этот объект используется для объявления элементов и атрибутов, используемых для поддержки интернационализации. --> <!ENTITY % XHTML.I18n "INCLUDE" > <!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: --> <!ENTITY % xhtml-events.module "INCLUDE" > <!-- Определение модели содержимого --> <!ENTITY % xhtml-model.mod PUBLIC "-//W3C//ENTITIES XHTML 1.1 Document Model 1.0//EN" SYSTEM "xhtml11-model-1.mod" > <!-- Объявления, следующие до основных объявлений .......................... --> <!-- местоположение для вставки объявлений разметки в DTD до основных объявлений. --> <!ENTITY % xhtml-prefw-redecl.module "IGNORE" > <![%xhtml-prefw-redecl.module;[ %xhtml-prefw-redecl.mod; <!-- конец xhtml-prefw-redecl.module -->]]> <!-- Основной модульный модуль ............................................. --> <!ENTITY % xhtml-framework.module "INCLUDE" > <![%xhtml-framework.module;[ <!ENTITY % xhtml-framework.mod PUBLIC "-//W3C//ENTITIES XHTML 1.1 Modular Framework 1.0//EN" "xhtml11-framework-1.mod" > %xhtml-framework.mod;]]> <!-- Объявления, следующие после основных объявлений ....................... --> <!-- местоположение для вставки объявлений разметки в DTD, следующих за основными объявлениями. --> <!ENTITY % xhtml-postfw-redecl.module "IGNORE" > <![%xhtml-postfw-redecl.module;[ %xhtml-postfw-redecl.mod; <!-- конец xhtml-postfw-redecl.module -->]]> <!-- Основной текстовый модуль (обязателен) ............................... --> <!ENTITY % xhtml-text.module "INCLUDE" > <![%xhtml-text.module;[ <!ENTITY % xhtml-text.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Basic Text 1.0//EN" "xhtml11-text-1.mod" > %xhtml-text.mod;]]> <!-- Гипертекстовый модуль (обязателен) .................................... --> <!ENTITY % xhtml-hypertext.module "INCLUDE" > <![%xhtml-hypertext.module;[ <!ENTITY % xhtml-hypertext.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Hypertext 1.0//EN" "xhtml11-hypertext-1.mod" > %xhtml-hypertext.mod;]]> <!-- Модуль списков (обязателен) .......................................... --> <!ENTITY % xhtml-list.module "INCLUDE" > <![%xhtml-list.module;[ <!ENTITY % xhtml-list.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Lists 1.0//EN" "xhtml11-list-1.mod" > %xhtml-list.mod;]]> <!-- Модуль структуры документа (обязателен) .............................. --> <!ENTITY % xhtml-struct.module "INCLUDE" > <![%xhtml-struct.module;[ <!ENTITY % xhtml-struct.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Document Structure 1.0//EN" "xhtml11-struct-1.mod" > %xhtml-struct.mod;]]> <!-конец обязательного раздела :::::::::::::::::::::::::::::::::::::::::::: --> <!-Модуль Ruby ........................................................... --> <!ENTITY % Ruby.fallback "INCLUDE" > <!ENTITY % Ruby.common.attlists "INCLUDE" > <!ENTITY % Ruby.common.attrib "%Common.attrib;" > <!ENTITY % xhtml-ruby.module "INCLUDE" > <![%xhtml-ruby.module;[ <!ENTITY % xhtml-ruby.mod PUBLIC "-//W3C//ELEMENTS Ruby 1.0//EN" "ruby-1.mod" > %xhtml-ruby.mod;]]> <!-- Модуль редактирования ............................................... --> <!ENTITY % xhtml-edit.module "INCLUDE" > <![%xhtml-edit.module;[ <!ENTITY % xhtml-edit.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Editing Elements 1.0//EN" "xhtml11-edit-1.mod" > %xhtml-edit.mod;]]> <!-- Модуль представления ................................................ --> <!ENTITY % xhtml-pres.module "INCLUDE" > <![%xhtml-pres.module;[ <!ENTITY % xhtml-pres.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Presentation 1.0//EN" "xhtml11-pres-1.mod" > %xhtml-pres.mod;]]> <!-- Модуль элемента апплет Java ......................................... --> <!ENTITY % xhtml-applet.module "INCLUDE" > <![%xhtml-applet.module;[ <!ENTITY % xhtml-applet.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Java Applets 1.0//EN" "xhtml11-applet-1.mod" > %xhtml-applet.mod;]]> <!-- Модуль элемента Param ............................................... --> <!ENTITY % xhtml-param.module "INCLUDE" > <![%xhtml-param.module;[ <!ENTITY % xhtml-param.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Param Element 1.0//EN" "xhtml11-param-1.mod" > %xhtml-param.mod;]]> <!-- Модуль BIDI Override ................................................ --> <!ENTITY % xhtml-bdo.module "INCLUDE" > <![%xhtml-bdo.module;[ <!ENTITY % xhtml-bdo.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 BIDI Override Element 1.0//EN" "xhtml11-bdo-1.mod" > %xhtml-bdo.mod;]]> <!-- Модуль форм ......................................................... --> <!ENTITY % xhtml-form.module "INCLUDE" > <![%xhtml-form.module;[ <!ENTITY % xhtml-form.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Forms 1.0//EN" "xhtml11-form-1.mod" > %xhtml-form.mod;]]> <!-- Модуль таблиц ....................................................... --> <!ENTITY % xhtml-table.module "INCLUDE" > <![%xhtml-table.module;[ <!ENTITY % xhtml-table.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Tables 1.0//EN" "xhtml11-table-1.mod" > %xhtml-table.mod;]]> <!-- Модуль изображения .................................................. --> <!ENTITY % xhtml-image.module "INCLUDE" > <![%xhtml-image.module;[ <!ENTITY % xhtml-image.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Images 1.0//EN" "xhtml11-image-1.mod" > %xhtml-image.mod;]]> <!-- Модуль клиентского изображения-карты ................................ --> <!ENTITY % xhtml-csismap.module "INCLUDE" > <![%xhtml-csismap.module;[ <!ENTITY % xhtml-csismap.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Client-side Image Maps 1.0//EN" "xhtml11-csismap-1.mod" > %xhtml-csismap.mod;]]> <!-- Модуль серверного изображения-карты ................................. --> <!ENTITY % xhtml-ssismap.module "INCLUDE" > <![%xhtml-ssismap.module;[ <!ENTITY % xhtml-ssismap.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Server-side Image Maps 1.0//EN" "xhtml11-ssismap-1.mod" > %xhtml-ssismap.mod;]]> <!-- Модуль метаинформации документа ..................................... --> <!ENTITY % xhtml-meta.module "INCLUDE" > <![%xhtml-meta.module;[ <!ENTITY % xhtml-meta.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Metainformation 1.0//EN" "xhtml11-meta-1.mod" > %xhtml-meta.mod;]]> <!-- Модуль скриптов ..................................................... --> <!ENTITY % xhtml-script.module "INCLUDE" > <![%xhtml-script.module;[ <!ENTITY % xhtml-script.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Scripting 1.0//EN" "xhtml11-script-1.mod" > %xhtml-script.mod;]]> <!-- Модуль таблиц стилей ................................................ --> <!ENTITY % xhtml-style.module "INCLUDE" > <![%xhtml-style.module;[ <!ENTITY % xhtml-style.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Stylesheets 1.0//EN" "xhtml11-style-1.mod" > %xhtml-style.mod;]]> <!-- Модуль элемента Link ................................................ --> <!ENTITY % xhtml-link.module "INCLUDE" > <![%xhtml-link.module;[ <!ENTITY % xhtml-link.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Link Element 1.0//EN" "xhtml11-link-1.mod" > %xhtml-link.mod;]]> <!-- Модуль элемента Base ................................................ --> <!ENTITY % xhtml-base.module "INCLUDE" > <![%xhtml-base.module;[ <!ENTITY % xhtml-base.mod PUBLIC "-//W3C//ELEMENTS XHTML 1.1 Base Element 1.0//EN" "xhtml11-base-1.mod" > %xhtml-base.mod;]]> <!-- конец XHTML 1.1 DTD ................................................. --> <!-- ...................................................................... -->
Семейство типов документов XHTML 1.1 (таких как XHTML 1.1) должно определять модель содержимого, которая в нем используется. Это делается посредством отделения модуля модели содержимого, который иллюстрируется XHTML Modular Framework. Модуль модели содержимого и Драйвер XHTML 1.1 (см. выше) вместе позволяют настроить реализацию модулей в соответствии с требованиями конкретного типа документа. Модуль модели содержимого для XHTML 1.1 определен ниже:
<!-- ....................................................................... --> <!-- Модуль модели документа XHTML 1.1 ..................................... --> <!-- file: xhtml11-model-1.mod Это XHTML 1.1, модульный вариант XHTML 1.0. Copyright 1998-2000 W3C (MIT, INRIA, Keio), С сохранением всех прав. Версия: $Id: xhtml11-model-1.mod,v 1.5 2000/01/05 13:26:27 ahby Exp $ SMI Данный модуль DTD определяется идентификаторами PUBLIC и SYSTEM: PUBLIC "-//W3C//ENTITIES XHTML 1.1 Document Model 1.0//EN" SYSTEM "xhtml11-model-1.mod" Версии: (нет) ....................................................................... --> <!-Модель документа В данном модуле описана группировка элементов, составляющих распространенные модели содержимого для элементов XHTML. В XHTML имеется три основных модели содержимого: %Inline.mix; элементы уровня символа %Block.mix; элементы блоков, например, абзацы и списки %Flow.mix; все элементы уровня блока и встроенные элементы Все parameter entities, объявленные в данном модуле, могут использоваться для создания моделей содержимого элементов, но эти три считаются 'глобальными' (постольку поскольку этот термин применяется здесь). Зарезервированное слово '#PCDATA' (которое указывает текстовую строку) теперь в явном виде включается в каждое объявление элемента, объявленного со смешанным содержимым, поскольку в XML имеется требование, что эта метка должна быть указана первой в спецификации модели содержимого. --> <!-- Расширение модели содержимого Хотя в некоторых случаях этот модуль нужно будет переписать для учета изменений в модели документа, небольшие дополнения можно внести путем повторного объявления любого из трех parameter entities *.extra; так, чтобы оно включало дополнительные типы элементов: %Misc.extra; родительским может быть любой элемент уровня блока или встроенный элемент. %Inline.extra; родительским может быть любой встроенный элемент. %Block.extra; родительским может быть любой элемент уровня блока. Если эти parameter entities используются, они должны представлять собой список с разделителями OR, начинающийся с разделителя OR separator ("|"), например, "| a | b | c" Все parameter entities уровня блока и встроенные *.class, которые не являются частью классов *struct.class, во избежание путаницы начинаются с "| ". --> <!-- ............ Необязательные элементы в заголовке (head) ............ --> <!ENTITY % Head-opts.mix "( script | style | meta | link )*" > <!-- ......................... Прочие элементы .......................... --> <!-- ins и del используются для обозначения изменений при редактировании --> <!ENTITY % Edit.class "| ins | del" > <!-- script и noscript используются для включения скриптов и альтернативного содержимого --> <!ENTITY % Misc.extra "| script | noscript" > <!-Эти элементы не являются ни встроенными, ни элементами уровня блока и могут использоваться где угодно в теле документа. --> <!ENTITY % Misc.class "%Edit.class; %Misc.extra;" > <!-- ...................... Встроенные элементы ......................... --> <!ENTITY % Inlstruct.class "br | span" > <!ENTITY % Inlphras.class "| em | strong | dfn | code | samp | kbd | var | cite | abbr | acronym | q" > <!ENTITY % Inlpres.class "| tt | i | b | big | small | sub | sup" > <!ENTITY % I18n.class "| bdo" > <!ENTITY % Anchor.class "| a" > <!ENTITY % Inlspecial.class "| img | map | applet" > <!ENTITY % Inline.extra "| input | select | textarea | label | button" > <!ENTITY % Ruby.class "| ruby" > <!-- %Inline.class; включает все встроенные элементы, используемые в качестве компонентов в смешанных --> <!ENTITY % Inline.class "%Inlstruct.class; %Inlphras.class; %Inlpres.class; %I18n.class; %Anchor.class; %Inlspecial.class; %Ruby.class; %Inline.extra;" > <!-- %Inline-noruby.class; включает все встроенные элементы за исключением ruby, используемые в качестве компонентов в смешанных --> <!ENTITY % Inline-noruby.class "%Inlstruct.class; %Inlphras.class; %Inlpres.class; %I18n.class; %Anchor.class; %Inlspecial.class; %Inline.extra;" > <!-- %Noruby.content; включает все встроенные элементы, кроме ruby --> <!ENTITY % Noruby.content "( #PCDATA | %Inline-noruby.class; %Misc.class; )*" > <!-- %Inline-noa.class; включает все отличные от якорей элементы, используемые в качестве компонентов в смешанных --> <!ENTITY % Inline-noa.class "%Inlstruct.class; %Inlphras.class; %Inlpres.class; %I18n.class; %Inlspecial.class; %Ruby.class; %Inline.extra;" > <!-- %Inline-noa.mix; включает все отличные от якорей встроенные элементы --> <!ENTITY % Inline-noa.mix "%Inline-noa.class; %Misc.class;" > <!-- %Inline.mix; включает все встроенные элементы, включая %Misc.class; --> <!ENTITY % Inline.mix "%Inline.class; %Misc.class;" > <!-- ..................... Элементы уровня блока ...................... --> <!-- В HTML 4.0 DTD элементы заголовков и списков включались в parameter entity % block;. parameter entities % Heading.class; и % List.class; теперь должны явным образом включаться в объявления элементов. --> <!ENTITY % Heading.class "h1 | h2 | h3 | h4 | h5 | h6" > <!ENTITY % List.class "ul | ol | dl" > <!ENTITY % Blkstruct.class "p | div" > <!ENTITY % Blkphras.class "| pre | blockquote | address" > <!ENTITY % Blkpres.class "| hr" > <!ENTITY % Block.extra "| table | form | fieldset" > <!-- %Block.class; включает все элементы уровня блока, используемые в качестве компонентов в смешанных --> <!ENTITY % Block.class "%Blkstruct.class; %Blkphras.class; %Blkpres.class; %Block.extra;" > <!-- %Block.mix; включает все элементы уровня блока плюс %Misc.class; --> <!ENTITY % Block.mix "%Heading.class; | %List.class; | %Block.class; %Misc.class;" > <!-- ................ Все элементы содержимого .................. --> <!-- %Flow.mix; включает все текстовое содержимое, уровня блока и встроенное --> <!ENTITY % Flow.mix "%Heading.class; | %List.class; | %Block.class; | %Inline.class; %Misc.class;" > <!-- конец xhtml11-model-1.mod -->
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |