Re: BUG #7844: xpath missing entity decoding - bug or feature - Mailing list pgsql-bugs

From Dan Scott
Subject Re: BUG #7844: xpath missing entity decoding - bug or feature
Date
Msg-id CAAY5AM1L83y79rtOZAUJioREO6n4=XAFKcGu6qO3hCZE1yJytg@mail.gmail.com
Whole thread Raw
In response to BUG #7844: xpath missing entity decoding - bug or feature  (info@fduerr.de)
Responses Re: BUG #7844: xpath missing entity decoding - bug or feature  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
On Sept 09, 2013 Bruce Momjian wrote:
>On Fri, Feb  1, 2013 at 12:02:41PM +0000, info(at)fduerr(dot)de wrote:
>> The following bug has been logged on the website:
>>
>> Bug reference:      7844
>> Logged by:          fduerr
>> Email address:      info(at)fduerr(dot)de
>> PostgreSQL version: 9.2.2
>> Operating system:   Debian
>> Description:
>>
>> Up until 9.1
>>
>> select (xpath('/z/text()', ('<z>' || 'AT&T' || '</z>')::xml))[1];
>>
>> returned 'AT&T'
>> 9.2 returns 'AT&T'
>>
>> Is it a bug or a feature?
>> Is there a function to decode xml-entities?
>
>Does anyone have a comment on this?

Yes, the Evergreen project just ran into this change of behaviour and consider
it a bug.

https://bugs.launchpad.net/evergreen/+bug/1243023 tells the tale, but in short
the XPath spec states in "5.2 Element Nodes":

"Entity references to both internal and external entities are expanded.
Character references are resolved." (http://www.w3.org/TR/xpath/)

So we believe that the extracted text node children of element nodes should be
resolved when we retrieve them, as they were in 9.1 and before.

pgsql-bugs by date:

Previous
From: Andres Freund
Date:
Subject: Re: Completely broken replica after PANIC: WAL contains references to invalid pages
Next
From: Tom Lane
Date:
Subject: Re: BUG #7844: xpath missing entity decoding - bug or feature