Symptom
När du försöker läsa in en XML-fil som har sparats som UTF-7 (överföring kodning för Unicode) genererar XML-tolken i Internet Explorer följande felmeddelande:
Ogiltig på den högsta nivån i dokumentet.
Samma fel uppstår även när du använder MSXML-tolken från serversidan och klientsidan skript.
Orsak
Versioner av MSXML-tolken före MSXML 2.6 stöder inte UTF-7.
Lösning
Lös problemet, spara XML-dokument som UTF-8, stöder kodningsformat för önskad överföring för Unicode.MSXML 2.6 eller senare UTF-7 kodning.
Status
Detta är avsiktligt.
Mer information
Men Unicode är en enhetlig teckenuppsättning som representerar nästan alla världens språk, finns det många byte representationer eller transformation format, som kan använda en Unicode-fil. Mest populära format är UTF-8, som representerar Unicode-tecken som en följd av en till fyra 8-bitars byte. UTF-7 är en 7-bitars omvandling format som definierats för att tillåta Unicode-text ska skickas via e-post-gateways som förutsätter ASCII och ta bort hög bithastighet för textmeddelanden. Baserat på XML 1.0-standarden, avsnitt 4.3.3, en giltig XML-fil måste vara något av följande:
-
En Unicode-fil i formatet UTF-8.
-
En Unicode-fil i formatet UTF-16.
-
En fil i vissa andra teckenkodning (t ex ASCII) som har som sin allra första byte i
UTF-7 använder inte Byte-ordningsmarkering. Dessutom kodade UTF-7 konverterar XML särskilda tecken < till + ADw, som hamnar som det första tecknet i UTF-7 XML-dokument. Eftersom detta inte är kompatibelt med XML-standard, vägrar MSXML att läsa sådana filer. Många Textredigerings- och ordbehandlingsprogram kan du spara Unicode-textfiler som kodad text i Microsoft Word i många olika överföring kodningar, inklusive UTF-7. Så om du sparar ett dokument i Word som ”kodad text UTF-7” vägra MSXML ladda dessa skäl.
Åtgärder för att återskapa problemet
-
Skapa en enkel XML-fil i Word 2000:
<?xml version="1.0"?><MyTag><EmbeddedTag name1="value"/></MyTag>
-
Spara filen som kodad text. Klicka på Janär du tillfrågas om du vill att formateringen går förlorad. Sedan visas frågan för ett kodningsformat som ska användas. Välj UTF-7och spara dokumentet som cap-filnamnet TestUTF7.xml.
-
Läsa in cap-filnamnet TestUTF7.xml i Internet Explorer 5. Följande felmeddelande visas:
Ogiltig på den högsta nivån i dokumentet. Rad 1, Position 1 + ADw-? xml version + AD0AIg - 1.0 + ACI-? + AD4-.
Referenser
För den senaste Microsoft Global Software Development http://www.unicode.org/ för senaste Unicode-standarden.Mer information om hur du utvecklar webbaserade lösningar för Microsoft Internet Explorer finns på följande Microsoft-webbplatser:
http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep(c) Microsoft Corporation 2000, alla rättigheter förbehålles. Bidrag av Jay Andrew Allen, Microsoft Corporation.