]> granicus.if.org Git - postgresql/commit
Make xpath() do something useful with XPath expressions that return scalars.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 21 Jul 2011 15:32:46 +0000 (11:32 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 21 Jul 2011 15:32:46 +0000 (11:32 -0400)
commit0ce7676aa03a2501fde949fea211ba5cd84c2ded
tree792173ad0b228f5a08db6aa3edb0dad38dad7aee
parentaaf15e5c1cf8d2c27d2f9841343f00027762cb4e
Make xpath() do something useful with XPath expressions that return scalars.

Previously, xpath() simply returned an empty array if the expression did
not yield a node set.  This is useless for expressions that return scalars,
such as one with name() at the top level.  Arrange to return the scalar
value as a single-element xml array, instead.  (String values will be
suitably escaped.)

This change will also cause xpath_exists() to return true, not false,
for such expressions.

Florian Pflug, reviewed by Radoslaw Smogura
doc/src/sgml/func.sgml
src/backend/utils/adt/xml.c
src/test/regress/expected/xml.out
src/test/regress/expected/xml_1.out
src/test/regress/sql/xml.sql