|
|
(7 intermediate revisions by 4 users not shown) |
Line 1: |
Line 1: |
| | #REDIRECT [[XmlParseError class#Reason property|Reason property]] |
|
| |
|
| <span class="pageSubtitle"><section begin=dpl_desc/>XmlParseErrorReason enumeration value indicating the type of the error causing the exception<section end=dpl_desc/></span>
| |
| [[Category:XmlParseError methods|Reason property]] | | [[Category:XmlParseError methods|Reason property]] |
| <p>
| |
| Reason is a member of the [[XmlParseError class]].
| |
| </p>
| |
|
| |
| ==Syntax==
| |
| <p class="syntax">%reason = %xmlParseErr:Reason
| |
| </p>
| |
| ===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(&'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>&#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>
| |