PRB: Сообщение об ошибке, когда XML-документ содержит младшие ASCII-символов

Переводы статьи Переводы статьи
Код статьи: 315580
Развернуть все | Свернуть все

Проблема

При попытке использовать версии 3.0 или более поздней версии MSXML средство синтаксического анализа для синтаксического анализа XML-документов, содержащих некоторые младшие управляющие ASCII (то есть ниже ASCII 32) знаки, может появиться следующее сообщение об ошибке:
Недопустимый знак в текстовом содержимом.

Причина

Версии 3.0 или более поздней версии для средства синтаксического анализа MSXML строго применять Допустимые диапазоны символов XML, определенные в Интернете Спецификация языка XML консорциума W3C. XML-документы, которые анализируются с помощью версии 3.0 или более поздней версии MSXML не могут содержать символы, которые можно разделить за пределами определенного допустимого XML-кода диапазона символов. Младшие управляющие Символы ASCII в диапазоне, перечисленных в «дополнительная информация» раздел, не допустимых символов XML. XML-документ, содержащий экземпляры Эти знаки не совместимы с рекомендациями спецификации W3C и не может быть синтаксический анализ с версии 3.0 или более поздней версии MSXML.

Решение

Чтобы устранить эту проблему, либо удалите экземпляры Младшие управляющие символы ASCII, или заменить символы с альтернативные допустимые знаки, такие как знак пробела (ASCII 32, hex # x 20). Это решение позволит совместимости со спецификациями W3C XML-документа. Тем не менее удаления и замены экземпляров этих символов может повлиять на другие приложения, использующие данные и на котором учитываются знаков. Такие дополнительные воздействия можно определить путем проверки и должно быть по реализации исправление или временное решение, подходящее для конкретные ситуации.

Статус

Это поведение является особенностью.

Дополнительная информация

Версии 2.6 и более ранних версий модуля синтаксического анализа MSXML разрешить XML документы, содержащие младшие управляющие ASCII символов, выходящих за пределы W3C допустимый XML диапазоны знаков. Тем не менее разработки версии 3.0 и позже модуля MSXML анализатор был заменен на строго применять корректный XML-документ диапазоны символов, которые определены в спецификации W3C XML. Это Изменение макета должен определить XML-документов к несовместимой.

Ниже приведены допустимые символы XML и диапазоны символов (шестн. значения), определенных в спецификации языка W3C по XML 1.0.
#x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
				
Ниже приведены диапазоны знаков для младшие управляющие Символы ASCII, отклонен версии MSXML 3.0 и более поздних версий:
#x0 - #x8 (ASCII 0 - 8)
#xB - #xC (ASCII 11 - 12)
#xE - #x1F (ASCII 14 - 31)
				
Это изменение может повлиять на следующих пользователей и приложений:
  • Пользователи обозревателя Internet Explorer: Пользователи, которые используют обозреватель Internet Explorer версии 5.5 и ранее (и не установили MSXML 3.0 в режиме замены) для поиска и просмотра XML-документы, содержащие один или несколько экземпляров указанного низкого порядка управляющие символы ASCII возникает сообщение об ошибке после обновления до Internet Explorer 6.0, так как Internet Explorer 6.0 Установка MSXML 3.0 SP2 в Режим замены и использует их для разбора документов XML.
  • Пользователи MDAC и ADO: Разработчикам и пользователям загружать XML сохраняются ADO документы содержит один или несколько экземпляров указанного ASCII младшие управляющие символы в объекты ADO Recordset сталкиваются появляется сообщение об ошибке обновление для MDAC 2.7 поскольку устанавливает MDAC 2.7 с пакетом обновления 2 для MSXML 3.0, который является версия средства синтаксического анализа MSXML, использующий объект ADO 2.7 Recordset.
  • Приложения, использующие модель объектов документов (DOM) для MSXML): Приложения, использующие независимые версии идентификаторы ProgID для создания экземпляра Создание указанного MSXML DOM объекты, используемые для разбора документов XML Ошибка при установке в режиме замены MSXML 3.0 или один из его пакетов обновления или при изменении кода для использования MSXML 3.0 или 4.0 версии Идентификаторы ProgID.

Ссылки

Для получения дополнительных сведений о других причинах известных и Методы обхода уязвимости, сообщение об ошибке, указанное в разделе «Проблема» щелкните следующий номер статьи базы знаний Майкрософт Основание:
238833 PRB: Синтаксический анализатор XML: обнаружен недопустимый символ в тексте
275883 ИНФОРМАЦИЯ: XML-кодирования и методы интерфейса DOM

Свойства

Код статьи: 315580 - Последний отзыв: 7 июня 2011 г. - Revision: 4.0
Ключевые слова: 
kbprb kbmt KB315580 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:315580

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com