Re: BUG #16046: xpath returns CDATA tag along with the value inpostgres 12

Поиск
Список
Период
Сортировка
От Chapman Flack
Тема Re: BUG #16046: xpath returns CDATA tag along with the value inpostgres 12
Дата
Msg-id 5DB234F1.1040706@anastigmatix.net
обсуждение исходный текст
Ответ на Re: BUG #16046: xpath returns CDATA tag along with the value inpostgres 12  (Chapman Flack <chap@anastigmatix.net>)
Ответы Re: BUG #16046: xpath returns CDATA tag along with the value inpostgres 12  (Markus Winand <markus.winand@winand.at>)
Список pgsql-bugs
On 10/24/19 19:14, Chapman Flack wrote:
>  <![CDATA[select 5 & 6 <yahoo!>]]>
>  select 5 & 6 <yahoo!>
> 
> Either form of result is correct, and having it respect the form that was
> used in the input might even be delightfully smart.
> 
> I haven't looked in the code just now to see if it is intentionally being
> delightfully smart, or more simplistic-and-lucky.

It appears to be probably unintentional-but-ok: libxml tags a CDATA
section differently (XML_CDATA_SECTION_NODE) than a text node
(XML_TEXT_NODE), so a CDATA node falls into the catch-all branch of

if (cur->type != XML_ATTRIBUTE_NODE && cur->type != XML_TEXT_NODE)

where it gets dumped faithfully by xmlNodeDump(), with the upshot
that the result always will be well-formed XML, and will respect whether
the input was supplied as CDATA or not. We could choose to say that's
what we meant it to do all along.

Regards,
-Chap



В списке pgsql-bugs по дате отправления:

Предыдущее
От: Chapman Flack
Дата:
Сообщение: Re: BUG #16046: xpath returns CDATA tag along with the value inpostgres 12
Следующее
От: Andres Freund
Дата:
Сообщение: Re: BUG #16076: JIT causes huge delays in a complex query. jit=offsolves it.