Reason (XmlParseError property): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Template:XmlParseError:Reason subtitle}}
#REDIRECT [[XmlParseError class#Reason property|Reason property]]


==Syntax==
[[Category:XmlParseError methods|Reason property]]
{{Template:XmlParseError:Reason syntax}}
===Syntax terms===
<table class="syntaxTable">
<tr><th>%reason</th>
<td>This XmlParseErrorReason enumeration value describes the parsing error.
</td></tr>
<tr><th>%xmlParseErr</th>
<td>A reference to an instance of an XmlParseError object.
 
</td></tr></table>
==Usage notes==
<ul>
<li>An XmlParseErrorReason enumeration may have one of the following values,
each of which is demonstrated in the [[#Example|example below]].
<dl>
<dt>InvalidUnicodeCharacter
<dd>The Unicode input contains an invalid character.
<dt>InvalidUTF8Encoding
<dd>The input UTF8 stream is invalid.
<dt>InvalidUTF16Encoding
<dd>The input UTF16 stream is invalid.
<dt>SyntaxError
<dd>A violation of the syntax of an XML document.
<dt>UntranslatableEBCDIC
<dd>The EBCDIC input contains a character that is not translatable to Unicode.
<dt>UntranslatableISOn
<dd>The ISO-8859-n input contains a character that is not translatable to Unicode.
<dt>UntranslatableUnicode
<dd>The Unicode input contains a character that is not translatable to EBCDIC.
This exception can be avoided using the <code>AllowUntranslatable</code>
option of the deserialization method.
</dl>
</ul>
==Example==
 
The following template is used to apply the LoadXml deserialization method
to a series of test ''input-string'' values
to demonstrate the XmlParseError exception output:
<p class="code"> Try
    PrintText {~}: {%d:LoadXml(&amp;'italic(input-string))}
Catch XmlParseError to %err
    Print ' '
    Print 'Error Reason:' And %err:Reason:ToString
    Print 'Error Description:' And %err:Description
    Print 'Error Character Position:' And %err:CharacterPosition
    Print 'Error Input Hex Value:' And %err:InputHexValue
    Print ' - - -'
End Try
</p>
 
These are the results:
<p class="code"> '''%d:LoadXml('<a>'):'''
Error Reason: SyntaxError
Error Description: XML doc parse error: missing ETag for top
      level element near or before position 4 (end of input)
Error Character Position: 4
Error Input Hex Value:
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('<' With 'FF':X With '>')'''
Error Reason: UntranslatableEBCDIC
Error Description: XML doc parse error: EBCDIC character not
      translatable to Unicode near or before position 3
Error Character Position: 3
Error Input Hex Value: FF
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('<a>&amp;amp;#x2122;</a>':U)'''
Error Reason: UntranslatableUnicode
Error Description: XML doc parse error: invalid Unicode
      character - not translatable to EBCDIC near or
      before position 5
Error Character Position: 5
Error Input Hex Value: 2122
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('FEFF003C33':X)'''
Error Reason: InvalidUTF16Encoding
Error Description: XML doc parse error: expecting additional
      byte of UTF-16 encoding near or before position 2
      (end of input)
Error Character Position: 2
Error Input Hex Value: 33
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('FEFFD800':X)'''
Error Reason: InvalidUnicodeCharacter
Error Description: XML doc parse error: surrogate point in
      UTF-16 input near or before position 1
Error Character Position: 1
Error Input Hex Value: D800
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('C181':X)'''
Error Reason: InvalidUTF8Encoding
Error Description: XML doc parse error: byte 1 of 2 too
      low in UTF-8 encoding near or before position 2
Error Character Position: 2
Error Input Hex Value: C181
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('FF818256':X)'''
Error Reason: InvalidUTF8Encoding
Error Description: XML doc parse error: attempt to use
      4-byte UTF-8 encoding of surrogate point near or
      before position 2
Error Character Position: 2
Error Input Hex Value: FF
  - - -
</p>
 
<p class="code"> '''%d:LoadXml('EDA080':X)'''
Error Reason: InvalidUnicodeCharacter
Error Description: XML doc parse error: invalid Unicode
      character (surrogate range) near or before position 2
Error Character Position: 2
Error Input Hex Value: EDA080
  - - -
</p>
==See also==
{{Template:XmlParseError:Reason footer}}

Latest revision as of 20:01, 10 May 2011