Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You're <strong>incorrectly assuming</strong> that there's something wrong with your XML.</p> <p>The <code>DocumentElement</code> property gives you a reference to the <code>PsXML</code> or <code>PosXML</code> node. Reading the <code>ChildNodes</code> property of that gives you a list of that node's children. That list will consist of just one element, though, either a <code>ShowInfo</code> node or <code>ShowInfoResponse</code>. Calling <code>FindNode</code> on that list can only give you one of those values. <strong>It does not search through the children of the nodes in the list.</strong> Since the document element has no child <code>Code</code> element, <code>FindNode</code> correctly returns <code>nil</code>.</p> <p>I suspect you're getting confused by the debugger. Your program has fetched something from the network, and you're storing that in a string. You're using the debugger to see what's in that string, and the debugger is showing you something with a bunch of number signs and dollar signs, which you're sure aren't supposed to be there. Your code isn't selecting the right node, so you conclude that the confusing XML string must be the cause.</p> <p>But the XML is correct. And it's even pretty-printed already! It has line breaks and tab characters to indent things. But the debugger wants to show you a string that's unambiguous. If it showed an actual multiline string and indented things, then you as a programmer wouldn't know what was really in the string. Instead, the debugger shows you the numeric character codes of the characters that it can't display. Carriage returns and line feeds have numeric values 13 and 10, respectively, which in hexadecimal are D and A. The debugger uses Delphi's own string-literal format to show you the value; numeric character literals are introduced with a <code>#</code> symbol, followed by the character's numeric code. The <code>$</code> indicates the number is hexadecimal.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload