BigApple.ru » Интернет » HTML » Составные грамматические правила

Составные грамматические правила

Добавлено: 13.02.2012
Автор: rrrr

Теперь вам, может быть, кажется, что записать грамматику всего языка в одном правиле трудно, хотя и возможно. К несчастью, в результате получилась бы неудобочитаемая последовательность правил, смысл которых едва ли был бы ясен. Спасает в этой ситуации то, что составляющими правила, кроме собственно элементов языка, могут быть сами правила, содержащие, в свою очередь, другие правила и элементы. В таких случаях элементы грамматики, которые сами являются правилами, называются нетерминальными символами, а элементы грамматики, представляющие собой элементы языка, называются терминальными символами. В конечном счете, все нетерминальные символы должны сводиться к последовательности терминальных символов, иначе грамматике не соответствовал бы ни один документ.

Мы можем выразить грамматику из нашего примера посредством двух правил:

Document ::= A, B?, C*, Choices+, G* Choices ::= D | E | F

В этом примере Document и Choices – это нетерминальные символы, тогда как A, B, C, D, E, F и G – терминальные символы.

В грамматике XML, как и в большинстве других, нет правил, ограничивающих количество нетерминальных элементов в ней. Большинство грамматик пользуются нетерминальными элементами всякий раз, когда это способствует ясности и удобству.

0 комментариев
Оцените статью:
Участник обсуждения

Нажмите, чтобы ответить

     
Время формирования страницы на сервере: 0.363 сек.