Peter Eisentraut schrieb am 12.03.2018 um 23:31:
I am not sure if this qualifies as a bug:

query_to_xml() returns an empty XML document when the query returns no rows, 
e.g:

    select query_to_xml('select 42 where false', false, true, '');

The problem with this is, that if the resulting XML is then fed
into e.g. the xpath() function, that function fails because the
"empty" document is an invalid XML:

That's because you have the tableforest argument set to true.  If you
want a proper XML document, then you should write

     select query_to_xml('select 42 where false', false, false, '');


Hmm, that indeed works.
I didn't want the extra level introduced by the <table> tag, that's why I used 
tableforest = true.
But that's easier to deal with than the check for an invalid document

I still think it's incorrect to return an empty (=invalid) XML instead of a 
NULL value though.

Regards
Thomas


Reply via email to