DBA Data[Home] [Help]

PACKAGE: SYS.DBMS_XMLQUERY

Source


1 PACKAGE DBMS_XMLQUERY AUTHID CURRENT_USER AS
2 
3   -- types
4   SUBTYPE ctxType IS NUMBER;                                 /* context type */
5   SUBTYPE ctxHandle IS NUMBER;
6 
7   DEFAULT_ROWSETTAG   CONSTANT VARCHAR2(6) := 'ROWSET';         /* rowsettag */
8   DEFAULT_ERRORTAG    CONSTANT VARCHAR2(5) := 'ERROR';          /* error tag */
9   DEFAULT_ROWIDATTR   CONSTANT VARCHAR2(3) := 'NUM';          /* Row ID attr */
10   DEFAULT_ROWTAG      CONSTANT VARCHAR2(3) := 'ROW';               /* rowtag */
11   DEFAULT_DATE_FORMAT CONSTANT VARCHAR2(21):= 'MM/dd/yyyy HH:mm:ss';
12 
13   ALL_ROWS            CONSTANT NUMBER      := -1;      /* NO MAX, render all */
14 
15   NONE                CONSTANT NUMBER      := 0;                  /* NO META */
16   DTD                 CONSTANT NUMBER      := 1;               /* META = DTD */
17   SCHEMA              CONSTANT NUMBER      := 2;            /* META = SCHEMA */
18 
19   LOWER_CASE          CONSTANT NUMBER      := 1;               /* LOWER case */
20   UPPER_CASE          CONSTANT NUMBER      := 2;               /* UPPER case */
21 
22   -- used to signal that the DB encoding is to be used
23   DB_ENCODING          CONSTANT VARCHAR2(1) := '_';
24 
25   ----------------------------- misc functions ------------------------------
26   PROCEDURE getVersion;
27 
28   -------------------- constructor/destructor functions ---------------------
29   FUNCTION newContext(sqlQuery IN VARCHAR2) RETURN ctxType;
30   FUNCTION newContext(sqlQuery IN CLOB) RETURN ctxType;
31   PROCEDURE closeContext(ctxHdl IN ctxType);
32 
33   -------------------- parameters to the XML generation engine ----------------
34   PROCEDURE setRowsetTag(ctxHdl IN ctxType, tag IN VARCHAR2);
35   PROCEDURE setRowTag(ctxHdl IN ctxType, tag IN VARCHAR2);
36   PROCEDURE setErrorTag(ctxHdl IN ctxType, tag IN VARCHAR2);
37 
38   PROCEDURE setRowIdAttrName(ctxHdl IN ctxType, attrName IN VARCHAR2);
39   PROCEDURE setRowIdAttrValue(ctxHdl IN ctxType, colName IN VARCHAR2);
40   PROCEDURE setCollIdAttrName(ctxHdl IN ctxType, attrName IN VARCHAR2);
41   PROCEDURE useTypeForCollElemTag(ctxHdl IN ctxType, flag IN BOOLEAN := true);
42   PROCEDURE useNullAttributeIndicator(ctxHdl IN ctxType, flag IN BOOLEAN := true);
43 
44   PROCEDURE setSQLToXMLNameEscaping(ctxHdl IN ctxType, flag IN BOOLEAN := true);
45   PROCEDURE setTagCase(ctxHdl IN ctxType, tCase IN NUMBER);
46   PROCEDURE setDateFormat(ctxHdl IN ctxType, mask IN VARCHAR2);
47 
48   PROCEDURE setMaxRows (ctxHdl IN ctxType, rows IN NUMBER);
49   PROCEDURE setSkipRows(ctxHdl IN ctxType, rows IN NUMBER);
50 
51   PROCEDURE setStylesheetHeader(ctxHdl IN ctxType, uri IN VARCHAR2, type IN VARCHAR2 := 'text/xsl');
52   PROCEDURE setXSLT(ctxHdl IN ctxType,uri IN VARCHAR2,ref IN VARCHAR2 := null);
53   PROCEDURE setXSLT(ctxHdl IN ctxType, stylesheet IN CLOB, ref IN VARCHAR2 := null);
54   PROCEDURE setXSLTParam(ctxHdl IN ctxType,name IN VARCHAR2,value IN VARCHAR2);
55   PROCEDURE removeXSLTParam(ctxHdl IN ctxType, name IN VARCHAR2);
56 
57   PROCEDURE setStrictLegalXMLCharCheck(ctxHdl IN ctxType, flag IN BOOLEAN := true);
58 
59   PROCEDURE setEncodingTag(ctxHdl IN ctxType, enc IN VARCHAR2 := DB_ENCODING);
60 
61   PROCEDURE setBindValue(ctxHdl IN ctxType, bindName IN VARCHAR2, bindValue IN VARCHAR2);
62   PROCEDURE clearBindValues(ctxHdl IN ctxType);
63 
64   PROCEDURE setMetaHeader(ctxHdl IN ctxType, header IN CLOB := null);
65   PROCEDURE setDataHeader(ctxHdl IN ctxType, header IN CLOB := null, tag IN VARCHAR2 := null);
66 
67   PROCEDURE setRaiseException(ctxHdl IN ctxType, flag IN BOOLEAN := true);
68   PROCEDURE setRaiseNoRowsException(ctxHdl IN ctxType, flag IN BOOLEAN := true);
69   PROCEDURE propagateOriginalException(ctxHdl IN ctxType, flag IN BOOLEAN := true);
70   PROCEDURE getExceptionContent(ctxHdl IN ctxType, errNo OUT NUMBER, errMsg OUT VARCHAR2);
71 
72   ------------------- generation ----------------------------------------------
73   FUNCTION  getDTD(ctxHdl IN ctxType, withVer IN BOOLEAN := false) RETURN CLOB;
74   PROCEDURE getDTD(ctxHdl IN ctxType, xDoc IN CLOB, withVer IN BOOLEAN := false);
75 
76   FUNCTION  getXML(ctxHdl IN ctxType, metaType IN NUMBER := NONE) RETURN CLOB;
77   PROCEDURE getXML(ctxHdl IN ctxType, xDoc IN CLOB, metaType IN NUMBER := NONE);
78   FUNCTION  getXML(sqlQuery IN VARCHAR2, metaType IN NUMBER := NONE) RETURN CLOB;
79   FUNCTION  getXML(sqlQuery IN CLOB, metaType IN NUMBER := NONE) RETURN CLOB;
80 
81   PROCEDURE resetResultSet(ctxHdl IN ctxType);
82   FUNCTION  getNumRowsProcessed(ctxHdl IN ctxType) RETURN NUMBER;
83 
84   -------private method declarations------------------------------------------
85   -- we must do this as a bug workaround; otherwise we get ora-600 [kgmexchi11]
86   PROCEDURE p_useTypeForCollElemTag(ctxHdl IN ctxType, flag IN NUMBER);
87   PROCEDURE p_useNullAttrInd(ctxHdl IN ctxType, flag IN NUMBER);
88   PROCEDURE p_setSQLToXMLNameEsc(ctxHdl IN ctxType, flag IN NUMBER);
89   PROCEDURE p_setStylesheetHeader(ctxHdl IN ctxType, uri IN VARCHAR2, type IN VARCHAR2);
90   PROCEDURE p_setXSLT(ctxHdl IN ctxType, uri IN VARCHAR2, ref IN VARCHAR2);
91   PROCEDURE p_setXSLT(ctxHdl IN ctxType, stylesheet IN CLOB, ref IN VARCHAR2);
92   PROCEDURE p_setStrictLegalXMLCharCheck(ctxHdl IN ctxType, flag IN NUMBER);
93   PROCEDURE p_setEncodingTag(ctxHdl IN ctxType, enc IN VARCHAR2);
94   PROCEDURE p_setMetaHeader(ctxHdl IN ctxType, header IN CLOB);
95   PROCEDURE p_setDataHeader(ctxHdl IN ctxType, header IN CLOB,tag IN VARCHAR2);
96   PROCEDURE p_setRaiseException(ctxHdl IN ctxType, flag IN NUMBER);
97   PROCEDURE p_setRaiseNoRowsExc(ctxHdl IN ctxType, flag IN NUMBER);
98   PROCEDURE p_propOrigExc(ctxHdl IN ctxType, flag IN NUMBER);
99   PROCEDURE p_getDTD(ctxHdl IN ctxType, xDoc IN CLOB, withVer IN NUMBER);
100   PROCEDURE p_getXML(ctxHdl IN ctxType, xDoc IN CLOB, metaType IN NUMBER);
101 
102 END dbms_xmlquery;