summaryrefslogtreecommitdiff
path: root/contrib/xml2/pgxml.sql.in
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/xml2/pgxml.sql.in')
-rw-r--r--contrib/xml2/pgxml.sql.in57
1 files changed, 57 insertions, 0 deletions
diff --git a/contrib/xml2/pgxml.sql.in b/contrib/xml2/pgxml.sql.in
new file mode 100644
index 00000000000..ff46e845b17
--- /dev/null
+++ b/contrib/xml2/pgxml.sql.in
@@ -0,0 +1,57 @@
+--SQL for XML parser
+
+CREATE OR REPLACE FUNCTION pgxml_parse(text) RETURNS bool
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+CREATE OR REPLACE FUNCTION xpath_string(text,text) RETURNS text
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+CREATE OR REPLACE FUNCTION xpath_nodeset(text,text,text,text) RETURNS text
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+CREATE OR REPLACE FUNCTION xpath_number(text,text) RETURNS float4
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+CREATE OR REPLACE FUNCTION xpath_bool(text,text) RETURNS boolean
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+-- List function
+
+CREATE OR REPLACE FUNCTION xpath_list(text,text,text) RETURNS text
+ AS 'MODULE_PATHNAME'
+ LANGUAGE 'c' WITH (isStrict);
+
+
+CREATE OR REPLACE FUNCTION xpath_list(text,text) RETURNS text
+AS 'SELECT xpath_list($1,$2,'','')' language 'SQL' WITH (isStrict);
+
+
+
+-- Wrapper functions for nodeset where no tags needed.
+
+
+CREATE OR REPLACE FUNCTION xpath_nodeset(text,text) RETURNS text AS
+'SELECT xpath_nodeset($1,$2,'''','''')' language 'SQL' WITH (isStrict);
+
+
+CREATE OR REPLACE FUNCTION xpath_nodeset(text,text,text) RETURNS text AS
+'SELECT xpath_nodeset($1,$2,'''',$3)' language 'SQL' WITH (isStrict);
+
+-- Table function
+
+CREATE OR REPLACE FUNCTION xpath_table(text,text,text,text,text) RETURNS setof record
+ AS 'MODULE_PATHNAME'
+ LANGUAGE 'c' WITH (isStrict);
+
+-- XSLT functions
+-- Delete from here to the end of the file if you are not compiling with
+-- XSLT support.
+
+
+CREATE OR REPLACE FUNCTION xslt_process(text,text,text) RETURNS text
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);
+
+-- the function checks for the correct argument count
+
+CREATE OR REPLACE FUNCTION xslt_process(text,text) RETURNS text
+ AS 'MODULE_PATHNAME' LANGUAGE 'c' WITH (isStrict);