Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 63596
Имитационное мо... 58625
Реклама
Сейчас на сайте
Гостей: 3
На сайте нет зарегистрированных пользователей

Пользователей: 13,095
новичок: staros
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

База данных студентов на Delphi + Microsoft SQL Server
Меры близости на векторах в Delphi + Блок схемы
Обратное размещение элементов ЭВС на Delphi + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Примечание Консорциум W3C предполагает в дальнейшем определять модули на языке XML-Schema, но пока этот язык находится в стадии разработки, модули в XHTML создаются на базе правил описания типов (DTD)
Описание модульных фрагментов в DTD основано на использовании параметрических компонентов. Для представления абстрактных составляющих модулей задействуются шесть категорий компонентов, каждая из которых подчиняется специальному соглашению по применению наименований и определяется суффиксом:
• .
mod - параметрические компоненты, представляющие DTD-модуль. Могут храниться в отдельных файлах, которые идентифицируются таким же суффиксом;
• .module - в больших модулях можно включать или исключать модули DTD, используя условные секции. Управляют модулем, представленным параметрическим компонентом с указанным суффиксом, с помощью ключевых СЛОВ IGNORE И INCLUDE;
• . content - компоненты с данным суффиксом используются для параметризации модели содержания типа элементов;
• .class - элементы, принадлежащие к одному классу, описываются параметрическими компонентами с указанным суффиксом;
• . mix - элементы, относящиеся к различным классам, могут быть представлены единственным параметрическим компонентом с таким суффиксом;
• . attrib - группа имен ярлыков, которая соответствует одной или нескольким завершенным спецификациям атрибутов внутри объявления ATTLIST. Может быть описана параметрическими компонентами, принадлежащими данной категории.
Рассмотрим применение указанных компонентов в одном из предопределенных модулей - модуле List (см. также главу 16).
Модуль List
Рекомендациями W3C определено, что модули начинаются с комментариев, имени файла, условий авторского права и даты последней редакции документа:
<! — —>
<!-- XHTML Модуль списков —> <!-- Файл: xhtml-list-1.mod
XHTML является преобразованием HTML в модульное приложение XML. Создан в 1998-2000 годах специалистами консорциума W3C (MIT, INRIA, Keio). Все права зацицены.
Последняя редакция: $Id: xhtml-modularization-2 0 0 0 07 0 5.html, v 1.7 2000/07/03 13:46:01 shane Ехр$ SMI -->
Затем следуют публичные и системные идентификаторы, использованные для данного модуля и даты последней редакции:
<!-- Этот модуль зарегистрирован открытым и системным идентификаторами:
PUBLIC "-//W3С//ELEMENTS XHTML Lists 1.0//EN" SYSTEM "xhtml-1ist-1.mod"
Редакции: (отсутствуют)
-->
Следующий сегмент комментариев кратко описывает назначение данного модуля:
<!-- Списки
dl, dt, dd, ol, ul, li В данном модуле объявляются типы элементов списка и используемые ими атрибуты.
-->
Ниже приведены составные имена параметрических компонентов для каждого элемента, входящего в состав модуля. Составное имя включает в себя имя элемента и суффикс . qname. Например, составное имя параметрического компонента, представляющего элемент dl, принимает вид dl. qname.
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 сводится к объявлению одного параметрического компонента:
<! — dl: Определение списка (Definition List) -->
<!ENTITY % dl.element "INCLUDE" > <! [%dl.element; [
<!ENTITY % dl.content "( %dt.qname; I %dd.qname; )+" > <!ELEMENT %dl.qname; %dl.content; >
<!-- Завершение описания элемента dl.element -->]]>
Прочитать это описание достаточно легко, если раскрывать его по алгебраическому правилу освобождения от скобок. Сначала рассматривается параметрический компонент dl. content. При его описании задействуются два параметрических компонента . qname, используемые для элементов dt и dl. Расширенная форма синтаксиса, примененного к данным элементам, имеет вид:
<!ENTITY % dl.content "(dt|dd)+" >
Объявление элемента, следующее непосредственно за параметром dl. content, определяет сам элемент. Если его раскрыть, оно будет выглядеть так:
<!ELEMENT dl (dt|dd)+ >
Вернемся к началу секции. Параметрический компонент dl. element описывается таким образом, чтобы включать и объявление параметрического компонента dl. content, и объявление элемента, которое сведет полное описание к одному компоненту. Если используется запись типа:
<!ENTITY %dl.element "INCLUDE" >
тогда в модуль помещается не только элемент dl, но и остальная информация, которая в расширенном виде необходима анализатору.
Определение списка атрибутов элемента dl происходит по той же схеме. Перечень атрибутов описывается одним параметрическим компонентом и включается в модуль с помощью ключевого слова INCLUDE. Ссылка на коллекцию атрибутов Common, которая может находиться в любом месте завершенного описания DTD, осуществляется посредством параметрического компонента, в записи которого должен присутствовать суффикс . attrib:
<!ENTITY % dl.attlist "INCLUDE" > <! [%dl.attlist; [
<!ATTLIST %dl.qname; %Common.attrib;>
<!-- Завершение описания компонента dl.attlist -->]]>
Аналогичным образом происходит параметризация объявлений элементов и их атрибутов для остальных элементов, включенных в модуль. Полное описание модуля приведено в листинге 14.1.
Листинг 14.1. Представление модуля XHTML-списков - xhtml-list-1 .mod
<!-- -->
<!-- XHTML Модуль списков —> <!-- Файл: xhtml-list-1.mod
XHTML является преобразованием HTML в модульное приложение XML. Создан в 1998-2000 годах специалистами консорциума W3C (MIT, INRIA, Keio). Все права защищены.
Последняя редакция: $Id: xhtml-modularization-2 0 0 0 07 05.html, v 1.7 2000/07/03 13:46:01 shane Ехр$ SMI
Этот модуль зарегистрирован открытым и системным идентификаторами:
PUBLIC "-//W3С//ELEMENTS XHTML Lists 1.0//EN" SYSTEM "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: Определение списка (Definition List) ,
<!ENTITY % dl.element "INCLUDE" > <![%dl.element;[
<!ENTITY %dl.content "( %dt.qname; I %dd.qname; )+" > <!ELEMENT %dl.qname; %dl.content; >
<!-- Завершение описания элемента dl.element -->]]> <!ENTITY % dl.attlist "INCLUDE" > <![%dl.attlist;[ <!ATTLIST %dl.qname; %Common.attrib;>
<!-- Завершение описания компонента dl.attlist -->]]>
<!-- dt: Определение понятия (Definition Term) -->
<!ENTITY % dt.element "INCLUDE" > <! [%dt.element; [
<ENTITY %dtcontent
<"( #PCDATA I %Inline.mix; )*" > ELEMENT %dl.qname; %dl.content; >
<!-- Завершение описания элемента dt.element -->]]> <!ENTITY % dt.attlist "INCLUDE" > <! [%dt.attlist; [ <!ATTLIST %dt.qname; %Common.attrib;>
<!-- Завершение описания компонента dl.attlist ->]]>
<!-- dd: Определение описаний (Definiton Description) -->
<!ENTITY % dd.element "INCLUDE" >
[%dd.element;[ ENTITY %dt.content
"( #PCDATA I %Flow.mix; )*" >
ELEMENT %dd.qname; %dd.content; > <!-- Завершение описания элемента dd.element -->]]>
<!ENTITY % dd.attlist "INCLUDE" > <! [%dd.attlist; [ <!ATTLIST %dd.qname; %Common.attrib;>
<!-- Завершение описания компонента dd.attlist -->]]>
<!-- ol: Нумерованный список (Ordered List, numbered styles)-->
<!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: Маркированный список (Unordered List, bullet styles)-->
<!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;
[%li.attlist; [ ATTLIST %li.qname;< < < < <
%Common.attrib;>
<!-- Завершение описания компонента li.attlist -->]]> <!-- Завершение модуля xhtml-list-1.mod -->]]>
Опубликовал vovan666 April 10 2013 02:31:30 · 0 Комментариев · 2413 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
PRNDbgrid
Программирование ...
Converter AMR<->W...
AVIwriter
ShadelLabel
Xrumer 4 Platinum...
WinAmp
PrevInst
Шейдеры в Delphi
PDJ Scrollers
Шифрование по алг...
DFileDeleter
Интерактивный инт...
netBIOS
Comdrv
Разработка Web-пр...
Просмотр файлов и...
Srinilist
JanButtonsV
Proeffectimage

Топ загрузок
Приложение Клие... 100488
Delphi 7 Enterp... 88207
Converter AMR<-... 20084
GPSS World Stud... 13845
Borland C++Buil... 12151
Borland Delphi ... 8710
Turbo Pascal fo... 7058
Visual Studio 2... 5007
Калькулятор [Ис... 4933
FreeSMS v1.3.1 3547
Случайные статьи
PNG
Исходная БДдиспетч...
Архитектура vnode/vfs
Агрегированные кон...
Частично автоматиз...
Мой компьютер
Подключение общего...
Создание изображен...
Эконом мебель
Почему протокол OS...
Определить суммы э...
Блоки для построен...
Другие достоинства...
Моделирование банка
Библиотека ввода-в...
сообщений электрон...
Использование DLL ...
описаны по адресу www
Подсчет атомов и ч...
Выбирайте высокое ...
или общественной
Программируемая за...
Работа в среде Тур...
Листинг 11.2. Сорт...
Взаимодействие ада...
Статистика



Друзья сайта
Программы, игры


  • Гидра онион даркач
  • Отели для любого кошелька в Гидра. Просмотрите цены и предложения отелей
  • hydra-darknet.com
Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?