Re: [PATCH] Add pretty-printed XML output option

Поиск
Список
Период
Сортировка
От Nikolay Samokhvalov
Тема Re: [PATCH] Add pretty-printed XML output option
Дата
Msg-id CANNMO+L5X2ynyXL2RK7gTVA-pj=Z8o8FCCr6RwLfRK_LinjSbg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [PATCH] Add pretty-printed XML output option  (Jim Jones <jim.jones@uni-muenster.de>)
Ответы Re: [PATCH] Add pretty-printed XML output option  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Список pgsql-hackers


On Fri, Feb 17, 2023 at 1:14 AM Jim Jones <jim.jones@uni-muenster.de> wrote:
After your comment I'm studying the possibility to extend the existing xmlserialize function to add the indentation feature. If so, how do you think it should look like? An extra parameter? e.g.

SELECT xmlserialize(DOCUMENT '<foo><bar>42</bar></foo>'::XML AS text, true);

.. or more or like Oracle does it

SELECT XMLSERIALIZE(DOCUMENT xmltype('<foo><bar>42</bar></foo>') AS BLOB INDENT)
FROM dual;


My idea was to follow the SQL standard (part 14, SQL/XML); unfortunately, there is no free version, but there are drafts at http://www.wiscorp.com/SQLStandards.html.
<XML character string serialization> ::=  XMLSERIALIZE <left paren> [ <document or content> ]
      <XML value expression> AS <data type>      [ <XML serialize bom> ]      [ <XML serialize version> ]      [ <XML declaration option> ]
      [ <XML serialize indent> ]      <right paren>
<XML serialize indent> ::=  [ NO ] INDENT

Oracle's extension SIZE=n also seems interesting (including a special case SIZE=0, which means using new-line characters without spaces for each line).

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

Предыдущее
От: Nathan Bossart
Дата:
Сообщение: archive modules loose ends
Следующее
От: Nathan Bossart
Дата:
Сообщение: Re: recovery modules