Расширяемый язык разметки

       

Проверяющие и непроверяющие процессоры


, отвечающие требованиям спецификации, делятся на два класса: проверяющие и непроверяющие.

И проверяющие, и непроверяющие процессоры должны докладывать о нарушениях правил корректности данной спецификации, выявленных в содержимом и содержимом других читаемых .

[Определение: Проверяющие процессоры должны сообщить (по выбору пользователя) о нарушении ограничений, сформулированных в декларациях , а также невозможности соответствовать критериям действительности, представленным в данной спецификации.] Чтобы выполнить это тренбование, проверяющий XML процессор должен прочесть и обработать весь DTD и все внешние разобранные сущности, на которые в данном документе делается ссылка.

Для проверки корректности от непроверяющего процессора требется проанализировать лишь , включая полный внутренний набор DTD. [Определение: Хотя непроверяющий процессор и не обязан проверять действительность документа, он должен обработать все декларации, найденные во внутреннем наборе DTD, а также во всех прочитанных им сущностях параметров, но только до первой ссылки на сущность параметра, которую он уже не должен читать. Иными словами, он должен использовать сведения из этих деклараций для значений атрибутов, текста замены для внутренних сущностей и предоставления .] За исключением случая standalone="yes", процессорам запрещается и , расположенные после ссылки на сущность параметра, последняя не читается, поскольку может содержать переопределяющие декларации.



Содержание раздела