diff options
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/regress/expected/xml.out | 186 | ||||
| -rw-r--r-- | src/test/regress/expected/xml_1.out | 134 | ||||
| -rw-r--r-- | src/test/regress/expected/xml_2.out | 186 | ||||
| -rw-r--r-- | src/test/regress/sql/xml.sql | 36 |
4 files changed, 542 insertions, 0 deletions
diff --git a/src/test/regress/expected/xml.out b/src/test/regress/expected/xml.out index ad852dc2f71..398345ca67f 100644 --- a/src/test/regress/expected/xml.out +++ b/src/test/regress/expected/xml.out @@ -486,6 +486,192 @@ SELECT xmlserialize(content 'good' as char(10)); SELECT xmlserialize(document 'bad' as text); ERROR: not an XML document +-- indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); + xmlserialize +------------------------- + <foo> + + <bar> + + <val x="y">42</val>+ + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); + xmlserialize +------------------------- + <foo> + + <bar> + + <val x="y">42</val>+ + </bar> + + </foo> +(1 row) + +-- no indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + xmlserialize +------------------------------------------- + <foo><bar><val x="y">42</val></bar></foo> +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + xmlserialize +------------------------------------------- + <foo><bar><val x="y">42</val></bar></foo> +(1 row) + +-- indent non singly-rooted xml +SELECT xmlserialize(DOCUMENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); + xmlserialize +----------------------- + <foo>73</foo> + + <bar> + + <val x="y">42</val>+ + </bar> +(1 row) + +-- indent non singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); + xmlserialize +------------------------ + text node + + <foo>73</foo>text node+ + <bar> + + <val x="y">42</val> + + </bar> +(1 row) + +-- indent singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); + xmlserialize +--------------------------------------------- + <foo> + + <bar> + + <val x="y">42</val> + + <val x="y">text node<val>73</val></val>+ + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); + xmlserialize +--------------------------------------------- + <foo> + + <bar> + + <val x="y">42</val> + + <val x="y">text node<val>73</val></val>+ + </bar> + + </foo> +(1 row) + +-- indent empty string +SELECT xmlserialize(DOCUMENT '' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT '' AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- whitespaces +SELECT xmlserialize(DOCUMENT ' ' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT ' ' AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- indent null +SELECT xmlserialize(DOCUMENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +SELECT xmlserialize(CONTENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- indent with XML declaration +SELECT xmlserialize(DOCUMENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); + xmlserialize +---------------------------------------- + <?xml version="1.0" encoding="UTF-8"?>+ + <foo> + + <bar> + + <val>73</val> + + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); + xmlserialize +------------------- + <foo> + + <bar> + + <val>73</val>+ + </bar> + + </foo> +(1 row) + +-- indent containing DOCTYPE declaration +SELECT xmlserialize(DOCUMENT '<!DOCTYPE a><a/>' AS text INDENT); + xmlserialize +-------------- + <!DOCTYPE a>+ + <a/> + + +(1 row) + +SELECT xmlserialize(CONTENT '<!DOCTYPE a><a/>' AS text INDENT); + xmlserialize +-------------- + <!DOCTYPE a>+ + <a/> + + +(1 row) + +-- indent xml with empty element +SELECT xmlserialize(DOCUMENT '<foo><bar></bar></foo>' AS text INDENT); + xmlserialize +-------------- + <foo> + + <bar/> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar></bar></foo>' AS text INDENT); + xmlserialize +-------------- + <foo> + + <bar/> + + </foo> +(1 row) + +-- 'no indent' = not using 'no indent' +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + ?column? +---------- + t +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + ?column? +---------- + t +(1 row) + SELECT xml '<foo>bar</foo>' IS DOCUMENT; ?column? ---------- diff --git a/src/test/regress/expected/xml_1.out b/src/test/regress/expected/xml_1.out index 70fe34a04f4..63b779470ff 100644 --- a/src/test/regress/expected/xml_1.out +++ b/src/test/regress/expected/xml_1.out @@ -309,6 +309,140 @@ ERROR: unsupported XML feature LINE 1: SELECT xmlserialize(document 'bad' as text); ^ DETAIL: This functionality requires the server to be built with libxml support. +-- indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- no indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent non singly-rooted xml +SELECT xmlserialize(DOCUMENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo>73</foo><bar><val x="y">4... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo>73</foo><bar><val x="y">4... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent non singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT 'text node<foo>73</foo>text nod... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT 'text node<foo>73</foo>text nod... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent empty string +SELECT xmlserialize(DOCUMENT '' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '' AS text INDENT); + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '' AS text INDENT); + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- whitespaces +SELECT xmlserialize(DOCUMENT ' ' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT ' ' AS text INDENT); + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT ' ' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT ' ' AS text INDENT); + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent null +SELECT xmlserialize(DOCUMENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +SELECT xmlserialize(CONTENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- indent with XML declaration +SELECT xmlserialize(DOCUMENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<?xml version="1.0" encoding="... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<?xml version="1.0" encoding="... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent containing DOCTYPE declaration +SELECT xmlserialize(DOCUMENT '<!DOCTYPE a><a/>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<!DOCTYPE a><a/>' AS text INDE... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<!DOCTYPE a><a/>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<!DOCTYPE a><a/>' AS text INDE... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- indent xml with empty element +SELECT xmlserialize(DOCUMENT '<foo><bar></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo><bar></bar></foo>' AS tex... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo><bar></bar></foo>' AS text INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo><bar></bar></foo>' AS tex... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +-- 'no indent' = not using 'no indent' +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +ERROR: unsupported XML feature +LINE 1: SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><... + ^ +DETAIL: This functionality requires the server to be built with libxml support. SELECT xml '<foo>bar</foo>' IS DOCUMENT; ERROR: unsupported XML feature LINE 1: SELECT xml '<foo>bar</foo>' IS DOCUMENT; diff --git a/src/test/regress/expected/xml_2.out b/src/test/regress/expected/xml_2.out index 4f029d00725..43c2558352a 100644 --- a/src/test/regress/expected/xml_2.out +++ b/src/test/regress/expected/xml_2.out @@ -466,6 +466,192 @@ SELECT xmlserialize(content 'good' as char(10)); SELECT xmlserialize(document 'bad' as text); ERROR: not an XML document +-- indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); + xmlserialize +------------------------- + <foo> + + <bar> + + <val x="y">42</val>+ + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); + xmlserialize +------------------------- + <foo> + + <bar> + + <val x="y">42</val>+ + </bar> + + </foo> +(1 row) + +-- no indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + xmlserialize +------------------------------------------- + <foo><bar><val x="y">42</val></bar></foo> +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + xmlserialize +------------------------------------------- + <foo><bar><val x="y">42</val></bar></foo> +(1 row) + +-- indent non singly-rooted xml +SELECT xmlserialize(DOCUMENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); + xmlserialize +----------------------- + <foo>73</foo> + + <bar> + + <val x="y">42</val>+ + </bar> +(1 row) + +-- indent non singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); + xmlserialize +------------------------ + text node + + <foo>73</foo>text node+ + <bar> + + <val x="y">42</val> + + </bar> +(1 row) + +-- indent singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); + xmlserialize +--------------------------------------------- + <foo> + + <bar> + + <val x="y">42</val> + + <val x="y">text node<val>73</val></val>+ + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); + xmlserialize +--------------------------------------------- + <foo> + + <bar> + + <val x="y">42</val> + + <val x="y">text node<val>73</val></val>+ + </bar> + + </foo> +(1 row) + +-- indent empty string +SELECT xmlserialize(DOCUMENT '' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT '' AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- whitespaces +SELECT xmlserialize(DOCUMENT ' ' AS text INDENT); +ERROR: not an XML document +SELECT xmlserialize(CONTENT ' ' AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- indent null +SELECT xmlserialize(DOCUMENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +SELECT xmlserialize(CONTENT NULL AS text INDENT); + xmlserialize +-------------- + +(1 row) + +-- indent with XML declaration +SELECT xmlserialize(DOCUMENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); + xmlserialize +---------------------------------------- + <?xml version="1.0" encoding="UTF-8"?>+ + <foo> + + <bar> + + <val>73</val> + + </bar> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); + xmlserialize +------------------- + <foo> + + <bar> + + <val>73</val>+ + </bar> + + </foo> +(1 row) + +-- indent containing DOCTYPE declaration +SELECT xmlserialize(DOCUMENT '<!DOCTYPE a><a/>' AS text INDENT); + xmlserialize +-------------- + <!DOCTYPE a>+ + <a/> + + +(1 row) + +SELECT xmlserialize(CONTENT '<!DOCTYPE a><a/>' AS text INDENT); + xmlserialize +-------------- + <!DOCTYPE a>+ + <a/> + + +(1 row) + +-- indent xml with empty element +SELECT xmlserialize(DOCUMENT '<foo><bar></bar></foo>' AS text INDENT); + xmlserialize +-------------- + <foo> + + <bar/> + + </foo> + + +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar></bar></foo>' AS text INDENT); + xmlserialize +-------------- + <foo> + + <bar/> + + </foo> +(1 row) + +-- 'no indent' = not using 'no indent' +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + ?column? +---------- + t +(1 row) + +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); + ?column? +---------- + t +(1 row) + SELECT xml '<foo>bar</foo>' IS DOCUMENT; ?column? ---------- diff --git a/src/test/regress/sql/xml.sql b/src/test/regress/sql/xml.sql index 24e40d26539..a591eea2e5d 100644 --- a/src/test/regress/sql/xml.sql +++ b/src/test/regress/sql/xml.sql @@ -132,6 +132,42 @@ SELECT xmlserialize(content data as character varying(20)) FROM xmltest; SELECT xmlserialize(content 'good' as char(10)); SELECT xmlserialize(document 'bad' as text); +-- indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text INDENT); +-- no indent +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +-- indent non singly-rooted xml +SELECT xmlserialize(DOCUMENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +SELECT xmlserialize(CONTENT '<foo>73</foo><bar><val x="y">42</val></bar>' AS text INDENT); +-- indent non singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +SELECT xmlserialize(CONTENT 'text node<foo>73</foo>text node<bar><val x="y">42</val></bar>' AS text INDENT); +-- indent singly-rooted xml with mixed contents +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val><val x="y">text node<val>73</val></val></bar></foo>' AS text INDENT); +-- indent empty string +SELECT xmlserialize(DOCUMENT '' AS text INDENT); +SELECT xmlserialize(CONTENT '' AS text INDENT); +-- whitespaces +SELECT xmlserialize(DOCUMENT ' ' AS text INDENT); +SELECT xmlserialize(CONTENT ' ' AS text INDENT); +-- indent null +SELECT xmlserialize(DOCUMENT NULL AS text INDENT); +SELECT xmlserialize(CONTENT NULL AS text INDENT); +-- indent with XML declaration +SELECT xmlserialize(DOCUMENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); +SELECT xmlserialize(CONTENT '<?xml version="1.0" encoding="UTF-8"?><foo><bar><val>73</val></bar></foo>' AS text INDENT); +-- indent containing DOCTYPE declaration +SELECT xmlserialize(DOCUMENT '<!DOCTYPE a><a/>' AS text INDENT); +SELECT xmlserialize(CONTENT '<!DOCTYPE a><a/>' AS text INDENT); +-- indent xml with empty element +SELECT xmlserialize(DOCUMENT '<foo><bar></bar></foo>' AS text INDENT); +SELECT xmlserialize(CONTENT '<foo><bar></bar></foo>' AS text INDENT); +-- 'no indent' = not using 'no indent' +SELECT xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); +SELECT xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); SELECT xml '<foo>bar</foo>' IS DOCUMENT; SELECT xml '<foo>bar</foo><bar>foo</bar>' IS DOCUMENT; |
