Fix XMLTABLE synopsis, add XMLNAMESPACES example
authorAlvaro Herrera
Thu, 13 Apr 2017 15:08:34 +0000 (12:08 -0300)
committerAlvaro Herrera
Thu, 13 Apr 2017 15:12:23 +0000 (12:12 -0300)
Add a missing comma in the synopsis after the XMLNAMESPACES clause.
Also, add an example illustrating the use of that clause.

Author: Arjen Nienhuis and Pavel Stěhule

doc/src/sgml/func.sgml

index adab3030c4170449897fa87d9fc43ae0dd2eb307..f06d0a92c038d0ea54cd79508881c66d1871d782 100644 (file)
@@ -10525,7 +10525,7 @@ SELECT xpath_exists('/my:a/text()', 'test
     
 
 
-xmltableXMLNAMESPACES(namespace uri AS namespace name, ...)
+xmltableXMLNAMESPACES(namespace uri AS namespace name, ...)
           row_expression PASSING BY REF document_expression BY REF
           COLUMNS name { type PATH column_expression DEFAULT default_expression NOT NULL | NULL
                         | FOR ORDINALITY }
@@ -10708,6 +10708,36 @@ SELECT xmltable.*
        element        
 ----------------------
    Hello2a2   bbbCC  
+]]>
+    
+
+    
+     The following example illustrates how
+     the XMLNAMESPACES clause can be used to specify
+     the default namespace, and a list of additional namespaces
+     used in the XML document as well as in the XPath expressions:
+
+  
+WITH xmldata(data) AS (VALUES ('
+
+'::xml)
+)
+SELECT xmltable.*
+  FROM XMLTABLE(XMLNAMESPACES('http://example.com/myns' AS x,
+                              'http://example.com/b' AS "B"),
+             '/x:example/x:item'
+                PASSING (SELECT data FROM xmldata)
+                COLUMNS foo int PATH '@foo',
+                  bar int PATH '@B:bar');
+ foo | bar
+-----+-----
+   1 |   2
+   3 |   4
+   4 |   5
+(3 rows)
 ]]>