Re: XPATH evaluation

From: Andrew Dunstan <andrew(at)dunslane(dot)net>
To: Florian Pflug <fgp(at)phlo(dot)org>
Cc: Radosław Smogura <rsmogura(at)softperience(dot)eu>, PG Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: XPATH evaluation
Date: 2011-06-17 13:47:04
Message-ID: 4DFB5AD8.3030705@dunslane.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 06/17/2011 05:41 AM, Florian Pflug wrote:
> On Jun17, 2011, at 11:09 , Radosław Smogura wrote:
>> 1.
>> SELECT (XPATH('/root/*', '<root xmlns:o="http://olacle.com/db" xmlns:p="http://postgresql.org/db"><o:db><a><b></b></a></o:db><p:db></p:db></root>'));
>> Produces:
>> "{"<o:db>
>> <a>
>> <b/>
>> </a>
>> </o:db>",<p:db/>}"
>> In above<b></b> was reduced to<b/> this is different infoset then input, and those notations are differently interpreted e.g. by XML Binding& WebServices. The 1st one will may be mapped to empty string, and 2nd one to to null.
> Oh, joy :-(

I thought these were basically supposed to be the same.

The XML Information Set for example specifically excludes:

The difference between the two forms of an empty element: |<foo/> |
and |<foo></foo>|.||||

|
See <http://www.w3.org/TR/2004/REC-xml-infoset-20040204/> Appendix D.
Note that this implies that <foo></foo> does not have content of an
empty string, but that it has no content.

|
cheers

andrew

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-06-17 13:59:40 Re: Patch: add GiST support for BOX @> POINT queries
Previous Message Alvaro Herrera 2011-06-17 13:36:49 Re: Boolean operators without commutators vs. ALL/ANY