From 8c1de5fb0010ae712568f1706b737270c3609bd8 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Thu, 21 Dec 2006 16:05:16 +0000 Subject: Initial SQL/XML support: xml data type and initial set of functions. --- src/include/utils/xml.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 src/include/utils/xml.h (limited to 'src/include/utils/xml.h') diff --git a/src/include/utils/xml.h b/src/include/utils/xml.h new file mode 100644 index 0000000000..89323301d3 --- /dev/null +++ b/src/include/utils/xml.h @@ -0,0 +1,37 @@ +/*------------------------------------------------------------------------- + * + * xml.h + * Declarations for XML data type support. + * + * + * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group + * Portions Copyright (c) 1994, Regents of the University of California + * + * $PostgreSQL: pgsql/src/include/utils/xml.h,v 1.1 2006/12/21 16:05:16 petere Exp $ + * + *------------------------------------------------------------------------- + */ + +#ifndef XML_H +#define XML_H + +#include "fmgr.h" + +typedef struct varlena xmltype; + +#define DatumGetXmlP(X) ((xmltype *) PG_DETOAST_DATUM(X)) + +#define PG_GETARG_XML_P(n) DatumGetXmlP(PG_GETARG_DATUM(n)) +#define PG_RETURN_XML_P(x) PG_RETURN_POINTER(x) + +extern Datum xml_in(PG_FUNCTION_ARGS); +extern Datum xml_out(PG_FUNCTION_ARGS); +extern Datum xmlcomment(PG_FUNCTION_ARGS); +extern Datum xmlparse(PG_FUNCTION_ARGS); +extern Datum xmlpi(PG_FUNCTION_ARGS); +extern Datum xmlroot(PG_FUNCTION_ARGS); +extern Datum xmlvalidate(PG_FUNCTION_ARGS); + +extern char *map_sql_identifier_to_xml_name(unsigned char *ident, bool fully_escaped); + +#endif /* XML_H */ -- cgit v1.2.1