Модуляризация XHTML

Билеты в Пушкинский музей на елку, maxafun по материалам http://www.wintershow.ru. |

Создание простого ОТД


Используя простой предыдущий пример, можно определить новое ОТД, которое использует и довольно легко расширяет модули XHTML.

Во-первых, определим в модуле новые элементы и их модель содержимого:

<!-- Файл simpleml-model-1.mod -->

<!-- Объявляем Parameter Entity (PE)/Объект Параметра, который определяет любое внешнее пространство имён, используемое этим модулем -->

<!-- Устанавливаем PE, который используется в каждом ATTLIST данного модуля. NS.prefixed.attrib инициализирован в модуле xhtml-qname, а SimpleML.ns.noprefix.attrib инициализирован в файле ОТД драйвера SimpleML.-->

<!ENTITY % SimpleML.xmlns.attrib "%NS.decl.attrib;" >

<!ENTITY % SimpleML.Common.attrib "%SimpleML.xmlns.attrib; id ID #IMPLIED" >

<!ENTITY % SimpleML.element.qname "%SimpleML.pfx;element" > <!ENTITY % SimpleML.otherelement.qname "%SimpleML.pfx;otherelement" >

<!ELEMENT %SimpleML.element.qname; ( #PCDATA | %SimpleML.otherelement.qname; )* > <!ATTLIST %SimpleML.element.qname; myattribute CDATA #IMPLIED %SimpleML.Common.attrib; > <!ELEMENT %SimpleML.otherelement.qname; EMPTY > <!ATTLIST %SimpleML.otherelement.qname; %SimpleML.Common.attrib; >

<!ENTITY % SimpleML.img.myattr.qname "%SimpleML.pfx;myattr" > <!ATTLIST %img.qname; %SimpleML.img.myattr.qname; CDATA #IMPLIED >

<!-- Добавляем наши элементы к модели содержимого XHTML --> <!ENTITY % Misc.class "| %SimpleML.element.qname;" >

<!-- Теперь вводим Basic content model XHTML --> <!ENTITY % xhtml-basic-model.mod PUBLIC "-//W3C//ENTITIES XHTML Basic 1.0 Document Model 1.0//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic10-model-1.mod" > %xhtml-basic-model.mod;

Затем определяем драйвер ОТД для нового языка:

<!-- Файл simpleml-1_0.dtd -->

<!-- Вводим типы данных XHTML --> <!ENTITY % xhtml-datatypes.mod PUBLIC "-//W3C//ENTITIES XHTML Datatypes 1.0//EN" "http://www.w3.org/TR/xhtml-modularization/DTD/xhtml-datatypes-1.mod" > %xhtml-datatypes.mod;




- Начало -  - Назад -  - Вперед -