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

Мастер леса выравнивание участка.

Использование модуля как отдельного (stand-alone) ОТД


Иногда необходимо, чтобы модуль XHTML использовался также в качестве отдельного ОТД (Определения Типа Документа). Хорошим примером может служить вышеприведённый модуль Inventory. Его объекты должны быть внедряемы в документ XHTML и доступны как отдельные самостоятельные документы, извлечённые из базы данных (к примеру). Проще всего сделать это путём определения файла ОТД, который устанавливает компоненты Вашего модуля.

Подобное ОТД могло бы иметь такую структуру:

  1. Включить модуль XHTML Datatypes (Ваш модуль qnames скорее всего использует некоторые из этих типов данных - он обычно использует тип данных URI для атрибута xmlns).
  2. Включить модуль Qnames для Вашего модуля.
  3. Определить объект параметра NS.decl.attrib как %MODULE.xmlns.extra.attrib;.
  4. Включить модуль(и) Declaration для Вашего модуля.

Пример этого для нашего модуля Inventory приведён здесь:

<!-- ...................................................................... --> <!-- Inventory Elements DTD ............................................... --> <!-- file: inventory-1.dtd

PUBLIC "-//MY COMPANY//DTD XHTML Inventory 1.0//EN" SYSTEM "http://www.example.com/DTDs/inventory-1.dtd"

xmlns:inventory="http://www.example.com/xmlns/inventory" ...................................................................... -->

<!-- Inventory Module

shelf item sku desc price

Этот модуль определяет простую структуру инвентаризации -->

<!-- Вставляет типы данных --> <!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;

<!-- Вставляет квалифицированные имена --> <!ENTITY % Inventory-qname.mod SYSTEM "inventory-qname-1.mod" > %Inventory-qname.mod;

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

<!ENTITY % Inventory.mod SYSTEM "inventory-1.mod" > %Inventory.mod;




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



Книжный магазин