aboutsummaryrefslogtreecommitdiff
path: root/src/include/utils/xml.h
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2007-01-25 11:53:52 +0000
committerPeter Eisentraut <peter_e@gmx.net>2007-01-25 11:53:52 +0000
commit22bd156ff0b6727c1f5fb6069690f7e2a4cabcac (patch)
treec27b205297af200b7ba078441186e3c89d24f6a8 /src/include/utils/xml.h
parent9597446d117acab8663b785c10998d92cbd1db40 (diff)
downloadpostgresql-22bd156ff0b6727c1f5fb6069690f7e2a4cabcac.tar.gz
postgresql-22bd156ff0b6727c1f5fb6069690f7e2a4cabcac.zip
Various fixes in the logic of XML functions:
- Add new SQL command SET XML OPTION (also available via regular GUC) to control the DOCUMENT vs. CONTENT option in implicit parsing and serialization operations. - Subtle corrections in the handling of the standalone property in xmlroot(). - Allow xmlroot() to work on content fragments. - Subtle corrections in the handling of the version property in xmlconcat(). - Code refactoring for producing XML declarations.
Diffstat (limited to 'src/include/utils/xml.h')
-rw-r--r--src/include/utils/xml.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/include/utils/xml.h b/src/include/utils/xml.h
index b580fffd82c..f5b33512cfd 100644
--- a/src/include/utils/xml.h
+++ b/src/include/utils/xml.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/utils/xml.h,v 1.12 2007/01/20 09:27:20 petere Exp $
+ * $PostgreSQL: pgsql/src/include/utils/xml.h,v 1.13 2007/01/25 11:53:51 petere Exp $
*
*-------------------------------------------------------------------------
*/
@@ -34,6 +34,14 @@ extern Datum xmlconcat2(PG_FUNCTION_ARGS);
extern Datum texttoxml(PG_FUNCTION_ARGS);
extern Datum xmlvalidate(PG_FUNCTION_ARGS);
+typedef enum
+{
+ XML_STANDALONE_YES,
+ XML_STANDALONE_NO,
+ XML_STANDALONE_NO_VALUE,
+ XML_STANDALONE_OMITTED
+} XmlStandaloneType;
+
extern xmltype *xmlconcat(List *args);
extern xmltype *xmlelement(XmlExprState *xmlExpr, ExprContext *econtext);
extern xmltype *xmlparse(text *data, bool is_doc, bool preserve_whitespace);
@@ -53,4 +61,12 @@ typedef enum
extern XmlBinaryType xmlbinary;
+typedef enum
+{
+ XMLOPTION_DOCUMENT,
+ XMLOPTION_CONTENT
+} XmlOptionType;
+
+extern XmlOptionType xmloption;
+
#endif /* XML_H */