Правила DTD могут быть очень простыми. Например, включать описание единственного элемента (при условии, что дизайнер создавал документ, состоящий из одного элемента). Прежде чем приступить к изучению или созданию правил DTD, необходимо освоить применяемую для этого нотацию.
Расширенная форма Бэкуса-Наура
Первоначально правила описаний типов данных (DTD) предполагалось использовать только для машин, и лишь позднее они стали применяться в качестве инструмента разработчика. В 1960 году двое ученых разработали формализованную структуру описаний для синтаксиса компьютерного языка ALGOL60. Этот формализованный язык в честь своих создателей был назван формой Бэкуса Наура (Backus Naur Form).
По мере развития языков программирования нотация усложнялась. Сейчас она более известна как расширенная форма Бэкуса Наура (Extended Backus Naur Form EBNF).
Пример. Описание любой синтаксической конструкции начинается с базовой формы представления:
Symbol ::= expression
Последовательность символов : : = следует читать: «определяется как». В следующем примере показано, как с помощью базовой формы представляется набор символов алфавита, соответствующих английским гласным:
vowels ::= [aeiou]
Правило можно трактовать следующим образом: «Символ vowels определен как строчные буквы а, е, i, о, и». Если разработчик не знает, какие буквы (заглавные или строчные) будут использованы, необходимо описать оба случая:
vowels ::= [aeiouAEIOU]
Конечно, выражения не ограничиваются только списками. В них могут использоваться диапазоны значений. Например, первые десять символов английского алфавита, представленные строчными буквами, допустимо описать выражением вида:
FirstTen ::= [a-j]
Опубликовал vovan666
April 08 2013 14:58:23 ·
0 Комментариев ·
4117 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.