2012-06-13 2 views

ответ

4

PDF двоичный формат. Большинство двоичных форматов не являются контекстно-зависимыми, а PDF не является исключением. В PDF, например, вам необходимо прочитать и интерпретировать размер бинарного потока перед анализом потока. BNF can only be used for context-free grammars, поэтому для PDF нет такой вещи, как грамматика BNF.

Посмотрите на спецификации здесь: PDF Reference Document

+0

Двоичный не означает, что у него не может быть грамматики. Если вы посмотрите на спецификацию PDF, вы увидите, что почти все конструкции являются «печатными», за исключением бинарных литералов (потоков). Некоторые люди должны были написать парсер PDF, поэтому я предполагаю, что должна быть грамматика вокруг ... – 3dGrabber

+0

@ 3D-Grabber: yms не сказал * «Двоичные файлы не могут иметь грамматику». * Он сказал, что больше * 'Контекстно-свободные форматы не могут иметь грамматику BNF.' * –

+0

@pipitas: _'Важные файлы не могут иметь грамматику. '' Это в основном то, что он сказал, прежде чем отредактировать ответ и уточнить. Теперь я понял. – 3dGrabber

3

Я не знаю ни формальной спецификации формата PDF файла в виде грамматики, BNF или нет.

Но я точно знаю, что технический комитет 171/SC2 по ISO, который в настоящее время работает над спецификацией PDF-2.0, имеет тему повестки дня «Обновления от специальных комитетов: [...] iv. формат синтаксиса для проверки файлов PDF (L. Rosenthol) » для его следующей встречи лицом к лицу в Берлине, 11-12 сентября 2012 года. - Какой пункт повестки дня я принимаю как « еще несколько человек, похоже, заинтересованы в более формальное описание синтаксиса PDF « ... :-)

Leonard Rosenthol - это Adobe PDF выше, и он часто отвечает на вопросы на форумах пользователей Adobe. Может быть, это хорошая идея задать вопрос? Скорее всего, там вы получите лучший ответ, чем здесь.