MODÈLE : message d'erreur lorsqu'un document XML contient des caractères ASCII commande faible

Traductions disponibles Traductions disponibles
Numéro d'article: 315580 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Symptômes

Lorsque vous essayez d'utiliser versions 3.0 ou ultérieure de le MSXML Analyseur pour analyser le XML documents contenir certains bas non imprimables ASCII caractères (c'est-à-dire caractères sous ASCII 32), vous pouvez recevoir le message d'erreur suivantes :
Un caractère non valide a été trouvé dans le contenu de texte.

Cause

Version 3.0 ou version ultérieure de l'analyseur MSXML applique strictement les étendues de caractère XML valides sont définies par la spécification de langage XML World Wide Web Consortium (W3C). Documents XML sont analysées des versions 3.0 ou ultérieures de MSXML ne peut pas contenir les caractères qui se trouvent en dehors des plages de caractères XML valides définies. Les caractères ASCII bas non imprimables dans les plages sont répertoriés dans la « plus d'informations » section ne sont pas les caractères XML valides. Un document XML qui contient des instances de ces caractères n'est pas conformes avec les spécifications W3C et ne peut pas être analysée correctement avec les versions 3.0 et ultérieure de MSXML.

Résolution

Pour résoudre ce problème, soit supprimer les instances des caractères non imprimables ASCII bas, ou remplacer les caractères par un autre caractère valide tel que le caractère d'espace (ASCII 32, #x20 hexadécimal). Cette solution permet le document XML compatible avec les spécifications de W3C. Toutefois, supprimer ou remplacer instances de ces caractères peut-être affecter d'autres applications qui utilisent les données et à laquelle les caractères sont significatives. Ce impact supplémentaire peut uniquement être identifiée par test et doit être résolu en mettant en ?uvre un correctif ou une solution de contournement qui est adaptée à une situation spécifique.

Statut

Ce comportement est voulu par la conception même du produit.

Plus d'informations

Version 2.6 et les versions antérieures du permis d'analyseur MSXML XML documents pour contenir les caractères ASCII non imprimables bas, situées en dehors des plages de caractère valides XML W3C. Toutefois, la structure des versions 3.0 et ultérieure de le MSXML Analyseur est passée à strictement appliquer le code XML valide caractère plages qui sont définis dans la spécification de langage XML du W3C. Cette modification de conception est nécessaire pour pouvoir identifier les documents XML non conformes.

Voici les caractères XML valides et les plages de caractères (valeurs hex) comme défini par les spécifications de langue W3C XML 1.0 :
#x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]
				
Voici les plages de caractères de caractères ASCII non imprimables bas, qui sont rejetés par les versions MSXML 3.0 et versions ultérieures :
#x0 - #x8 (ASCII 0 - 8)
#xB - #xC (ASCII 11 - 12)
#xE - #x1F (ASCII 14 - 31)
				
cette modification de conception peut affecter le utilisateurs et applications suivants :
  • utilisateurs Internet Explorer : Utilisateurs ont été utilisant Internet Explorer versions 5.5 et antérieures (et qui n'a pas installer MSXML 3.0 en mode de remplacement) pour parcourir et afficher que XML documents qui contiennent une ou plusieurs instances du bas non imprimables ASCII caractères spécifiés rencontrer la message d'erreur après la mise à niveau vers Internet Explorer 6.0 car Internet Explorer 6.0 installe MSXML 3.0 Service Pack 2 en mode de remplacement qu'il utilise pour analyser des documents XML.
  • utilisateurs MDAC et ADO : Les développeurs et les utilisateurs qui chargement les documents XML persistant de ADO qui contiennent une ou plusieurs instances de L'ASCII non imprimable bas spécifié de caractères dans le jeu d'enregistrements ADO objets rencontrer la message d'erreur après la mise à niveau vers MDAC 2.7 étant donné que MDAC 2.7 installe MSXML 3.0 SP2, qui est la version de l'analyseur MSXML qui utilise l'objet Recordset 2.7 ADO.
  • les applications qui utilisent le MSXML DOM Document Object Model (): Les applications qui utilisent la version PROGIDs indépendantes pour instancier des objets MSXML DOM qui sont utilisés pour analyser les documents XML génèrent l'erreur spécifiée lorsque MSXML 3.0 ou l'un de ses service packs est installé en mode de remplacement ou lorsque le code est modifié à utiliser le MSXML 3.0 ou version 4.0 PROGIDs spécifiques.

Références

Pour plus d'informations sur d'autres causes connues et les solutions de contournement pour le message d'erreur qui est spécifié dans la section « Symptômes », cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
238833 MODÈLE : Analyseur : caractère non valide a été trouvé dans le texte contenu
275883 INFO : codage XML et méthodes d'interface DOM

Propriétés

Numéro d'article: 315580 - Dernière mise à jour: jeudi 17 juillet 2003 - Version: 1.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft XML Parser 3.0
  • Microsoft XML Parser 3.0 Service Pack 1
  • Microsoft XML Parser 3.0 Service Pack 2
  • Microsoft XML Core Services 4.0
  • Microsoft Data Access Components 2.8
Mots-clés : 
kbmt kbprb KB315580 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 315580
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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