Навигация
Главная
Поиск
Форум
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
Подключение Mic... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Организация зап... 64646
Создание потоко... 62075
Модуль Forms 61245
Создание отчето... 61201
ТЕХНОЛОГИИ ДОСТ... 57660
Пример работы с... 55172
Имитационное мо... 53052
Реклама
Сейчас на сайте
Гостей: 11
На сайте нет зарегистрированных пользователей

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

Выбор наилучших альтернатив с использованием методов оптимизации на Delp...
База данных студентов на Turbo Pascal (Списки) + Пояснительная записка
Программа тестирования (тест) - вступительные экзамены (математика, физи...

Реклама



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

ПОДПИСЫВАЙСЯ на канал о программировании
Определение элементов
Прежде чем использовать элемент в языке разметки, его нужно объявить в секции описаний DTD. Основной синтаксис для объявления элемента выглядит так:
<!
ELEMENT name ContentModel>
В этом выражении name определяет имя элемента. Модель содержания есть выражение того, что элемент может содержать. В языках HTML и XHTML некоторые элементы способны включать в себя другие элементы, иные содержать только текст; часть из них ничего не содержит. Такие ограничения, наложенные на содержимое элементов, получили название моделей содержания (content models). Таким образом, языки XML и XHTML имеют четыре типа моделей содержания (табл. 13.1).
Таблица 13.1. Модели содержания, определенные в языке XHTML
Модель содержания Варианты содержательной части для компонентов
EMPTY (пустая) Содержание отсутствует (запрещено). Например, компоненты
img, hr, br
ANY (произвольная) Разрешен любой тип содержания (в языке XHTML 1.0 не опреде-
ляется, в приложениях используется редко)
ELEMENT (элемент) В содержание могут включаться только другие элементы
(например, содержанием для элемента ul могут быть только
элементы li)
MIXED (смешанная) Содержание формируется из данных и элементов (например, эле-
мент р может содержать элементы em и strong, а также текст)
Указание для элемента типа модели содержания EMPTY означает, что в данном элементе содержание может отсутствовать. Самый распространенный пример img. Следует отметить, что описание данного типа модели является наиболее простым. Например, описание элемента img в правилах DTD XHTML 1.0 выглядит так:
<!ELEMENT img EMPTY>
Существуют и более сложные описания. Рассмотрим элемент, представляющий маркированный список (ul), с типом модели содержания ELEMENT:
<[ELEMENT ul (li)+>
Такая модель уже упоминалась при обсуждении формализованной структуры описаний. В объявлении указывается, что элемент ul должен содержать один или несколько экземпляров элемента li.
Символ +, использованный в описании элемента ul, часто называют индикатором возможных появлений (occurrence indicator). В табл. 13.2 показаны три наиболее часто применяемых вида индикаторов.
Таблица 13.2. Типы индикаторов появления в DTD
Индикаторы Описание
возможных вариантов
• Элемент может быть необязательным (его нет, либо он сущест-
вует в единственном числе)
* Элемент может быть необязательным. Допустимо повторить его
ноль и более раз
+ Элемент существует обязательно. Может быть повторен один
и более раз
Модель содержания типа ELEMENT позволяет включать один и более элементов различного вида. Например, элемент tr (строка таблицы) может состоять из одного или нескольких элементов th (заголовок столбца) и td (содержание ячейки). Описание tr принимает следующий вид:
<!ELEMENT tr (th|td)+>
Символ вертикальной черты, разделяющий два элемента, указывает на выбор автором документа одного из них. Индикатор появления + сообщает об обязательном существовании минимум одного экземпляра элемента, хотя возможно его неоднократное повторение.
Примечание Индикатор появления применяется ко всему выражению, заключенному в скобки. Анализ выражения корректнее начинать с самого внешнего элемента, а затем переходить к элементам, указанным в скобках. Например, выражение вида (thltd)+ нужно трактовать следующим образом: «элемент tr должен содержать один или несколько элементов, ими могут быть th и td».
Пример. Когда комбинация элементов усложняется, модель содержания может включать несколько индикаторов, представленных в табл. 13.2. Рассмотрим пример объявления версии XHTML 1.0 Transitional для элемента table:
<!ELEMENT table
(caption?, (col* I colgroup*), thead?, tfoot?, (tbody+ I tr+))>
Проанализируем представленное выражение по частям. Перечень элементов, отделяемых друг от друга запятыми, называется последовательностью (sequence). Любой из элементов, принадлежащих ей, должен появиться внутри элемента, который эту последовательность обобщает. Исключением является случай, когда элемент модифицируется индикатором появления с возможным нулевым значением повторения. В модель содержания элемента table входят: необязательный элемент caption; один или несколько (при необходимости) экземпляров элемента, выбираемого автором из двух возможных (либо col, либо colgroup); необязательные элементы thead и tfoot; и, наконец, один или несколько экземпляров элемента tbody или tr. Если проанализировать данную последовательность, окажется, что единственными обязательными (к тому же на выбор) являются элементы tbody либо tr.
Внимание! В приведенной записи отсутствует элемент t d. Что же было описано: элементы, размещаемые внутри table или обязательно находящиеся там? Непосредственно внутри компонента table элемент td отсутствует, он включен в состав элемента tr (входящего в table). Поскольку он вложен в другой элемент, здесь он не упоминается. В определении описываются только элементы, принадлежащие первому уровню вложенности.
Опубликовал vovan666 April 08 2013 18:58:28 · 0 Комментариев · 2056 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Разработка распре...
Sztransppanel
Animated Menus
netBIOS
JanButtonsV
Аватары в комме...
Microsoft SQL Ser...
CoolControls v3.0...
Современное проек...
Мод "проверочный ...
HtmlLerz PRO
Самоучитель PHP 4
RxLIB
Illusion
Delphi. Разработк...
PHP/MySQL для нач...
Программирование ...
DS_Group
3d Tank [Исходник...
Berg

Топ загрузок
Приложение Клие... 100384
Delphi 7 Enterp... 83555
Converter AMR<-... 20051
GPSS World Stud... 11313
Borland C++Buil... 11240
Borland Delphi ... 8182
Turbo Pascal fo... 6987
Visual Studio 2... 4970
Калькулятор [Ис... 4418
FreeSMS v1.3.1 3516
Случайные статьи
Сохранение рабочей...
Глава 11. Как э...
Заголовок приема
Технологии построе...
Изменение значений...
Компактное оформле...
Оглавление. Java. ...
Отображение програ...
Итоги
Реализации Drag&Dr...
групповой политики
Процесс кипения
Циклические связан...
Резюме: куда включ...
Инвестиции игорног...
Как освободить пам...
Концентрированное ...
Проводите простой ...
Библиотека Matrix
Invalid subrange b...
Перестановка парам...
МНОГОСТОЛБЧАТЫЕ АТ...
Как правильно подо...
12.1. Задача
Invalid combinatio...
Статистика



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


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?