Re: PostgreSQL vs SQL/XML Standards
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Chapman Flack <chap@anastigmatix.net>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-01-20T05:26:12Z
Lists: pgsql-hackers
ne 20. 1. 2019 v 6:06 odesílatel Chapman Flack <chap@anastigmatix.net> napsal: > On 01/19/19 23:49, Pavel Stehule wrote: > > > If I remember, described functionality was implemented in early patches, > > but was removed to simplify code. To now, there was not a request to do > it. > > > > Unfortunately, the documentation was not fixed. > > I'll do that, as I'm working in there anyway. :) > > > column expressions are evaluated once per row, but XPath expression is > > compiled per row too, if I remember well. > > I looked for evidence of that in the code, but did not find it; the > compilation appears to happen in XmlTableSetColumnFilter, which is > called from tfuncInitialize. > it is called per input row. > I can't guarantee I didn't miss something, though. > > > We designed it more tolerant as > > we expected possibility to store XPath expression in one column and data > in > > second column. > > Perhaps if I could see an example showing the functionality... The nearest > I could find in the regression tests was the test with > COLUMNS a int PATH '' || lower(_path) || 'c' > but, again, I think that test only demonstrates how LATERAL works, not > any behavior specific to xmltable. > the main reason for this was not to support support some specific patterns - just used design doesn't requires stronger changes in executor or internal multi call caching of some internal data. Probably you can find discussion related to this topic in mailing list archive. sure - using any expression in PATH clause should to demonstrate this functionality. > Regards, > -Chap > >
Commits
-
Improve documentation about our XML functionality
- 728c49779ba8 11.6 landed
- 603a28b44973 10.11 landed
-
Improve documentation about our XML functionality.
- 12d46ac392d0 12.0 landed
-
Add volatile qualifier missed in commit 2e616dee9.
- b2b819019f44 12.0 landed
-
Fix crash with old libxml2
- 2e616dee9e60 12.0 landed
-
Fix minor deficiencies in XMLTABLE, xpath(), xmlexists()
- 251cf2e27bec 12.0 cited
-
Fix the BY {REF,VALUE} clause of XMLEXISTS/XMLTABLE
- eaaa5986ad03 12.0 landed
-
doc: Update README.links
- b060e6c1f5b4 12.0 landed
-
XPath fixes:
- 3963574d1338 8.3.0 cited