Schau mal in
TXmlNode.CheckTextNode
. Dort wird die Bedingung getestet und bei Bedarf die
Exception ausgelöst.
Also sowas in der Art (nicht getestet):
Delphi-Quellcode:
if not aNode.DOMNode.HasChildNodes or ((aNode.DOMNode.childNodes.length = 0) and (DOMNode.childNodes[0].nodeType in [TEXT_NODE, CDATA_SECTION_NODE])) then begin
result := aNode.NodeValue;
end;