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

       

Декларация одиночного документа


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


[32] SDDecl    ::=    'standalone' (("'" ('yes' | 'no') "'") | ('"' ('yes' | 'no') '"'))

Значение "yes" в декларации одиночного документа говорит об отсутствии , которые оказывали бы влияние на информацию, которую XML процессор передает приложению. Значение "no" указывает на то, что такие внешние декларации разметки имеются, либо могут быть появиться. Заметим, что декларация одиночного документа всего лишь свидетельствует о присутствии внешних деклараций. Наличие же в документе ссылок на внешние сущности, если последние уже были декларированы в самом документе, статуса одиночного документа не отменяет.

Если внешние декларации разметки отсутствуют, то декларация одиночного документа теряет смысл. Если присутствуют внешние декларации разметки, но отсутствует декларация одиночного документа, подразумевается что она имеет значение "no".

Любой XML документ, для которого было указано standalone="no", может быть алгоритмическим путем приведен к одиночному документу, что может потребоваться для некоторых приложений, получающих данные по сети.

Ограничение действительности: Декларация одиночного документа



Декларация одиночного документа должна иметь значение "no", если какие-либо внешние декларации разметки включают декларацию для:

атрибутов со значением , если элементы, к которым эти атрибуты относятся, были представлены в документе без уточнения значений для указанных атрибутов,

сущностей (кроме amp, lt, gt, apos и quot), если в документе встретились на эти сущности,

атрибутов со значением, подлежащим , если этот атрибут появился в документе со значением, которое в результате этой нормализации будет изменено,

типов элементов с , если в каком-либо экземпляре такого типа был обнаружен пробельный символ.

Пример декларации XML с декларированием одиночного документа:

<?xml version="1.0" standalone='yes'?>




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




[32] SDDecl    ::=    'standalone' (("'" ('yes' | 'no') "'") | ('"' ('yes' | 'no') '"'))

Значение "yes" в декларации одиночного документа говорит об отсутствии , которые оказывали бы влияние на информацию, которую XML процессор передает приложению. Значение "no" указывает на то, что такие внешние декларации разметки имеются, либо могут быть появиться. Заметим, что декларация одиночного документа всего лишь свидетельствует о присутствии внешних деклараций. Наличие же в документе ссылок на внешние сущности, если последние уже были декларированы в самом документе, статуса одиночного документа не отменяет.

Если внешние декларации разметки отсутствуют, то декларация одиночного документа теряет смысл. Если присутствуют внешние декларации разметки, но отсутствует декларация одиночного документа, подразумевается что она имеет значение "no".

Любой XML документ, для которого было указано standalone="no", может быть алгоритмическим путем приведен к одиночному документу, что может потребоваться для некоторых приложений, получающих данные по сети.

Ограничение действительности: Декларация одиночного документа

Декларация одиночного документа должна иметь значение "no", если какие-либо внешние декларации разметки включают декларацию для:

атрибутов со значением , если элементы, к которым эти атрибуты относятся, были представлены в документе без уточнения значений для указанных атрибутов,

  • сущностей (кроме amp, lt, gt, apos и quot), если в документе встретились на эти сущности,

  • атрибутов со значением, подлежащим , если этот атрибут появился в документе со значением, которое в результате этой нормализации будет изменено,

  • типов элементов с , если в каком-либо экземпляре такого типа был обнаружен пробельный символ.

    Пример декларации XML с декларированием одиночного документа:

    <?xml version="1.0" standalone='yes'?>



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