DBA Data[Home] [Help]

PACKAGE: SYS.DBMS_XMLGEN

Source


1 PACKAGE dbms_xmlgen AUTHID CURRENT_USER AS
2 
3   -- context handle
4   SUBTYPE ctxHandle IS NUMBER;
5   SUBTYPE ctxType IS NUMBER;
6   SUBTYPE conversionType IS NUMBER;
7 
8   TYPE PARAM_HASH IS TABLE OF VARCHAR2(100) INDEX BY VARCHAR2(32);
9 
10   -- DTD or schema specifications
11   NONE CONSTANT NUMBER := 0;
12   DTD CONSTANT NUMBER := 1;
13   SCHEMA CONSTANT NUMBER := 2;
14 
15   -- conversion type
16   ENTITY_ENCODE CONSTANT conversionType := 0;
17   ENTITY_DECODE CONSTANT conversionType := 1;
18 
19   -- constants for null handling
20   DROP_NULLS CONSTANT NUMBER := 0;
21   NULL_ATTR  CONSTANT NUMBER := 1;
22   EMPTY_TAG  CONSTANT NUMBER := 2;
23 
24   -- procedure to create the XML document
25   FUNCTION newContext(queryString IN varchar2) RETURN ctxHandle;
26 
27   FUNCTION newContext(queryString IN SYS_REFCURSOR) RETURN ctxHandle;
28 
29   FUNCTION newContextFromHierarchy(queryString IN varchar2) RETURN ctxHandle;
30 
31   -- set the row tag name
32   PROCEDURE setRowTag(ctx IN ctxHandle, rowTagName IN varchar2);
33 
34   -- set the rowset tag name
35   PROCEDURE setRowSetTag(ctx IN ctxHandle, rowSetTagName IN varchar2);
36 
37   -- XSLT support
38   PROCEDURE setXSLT(ctx IN ctxType, stylesheet IN CLOB);
39   PROCEDURE setXSLT(ctx IN ctxType, stylesheet IN XMLType);
40   PROCEDURE setXSLT(ctx IN ctxType, uri IN VARCHAR2);
41   PROCEDURE setXSLTParam(ctx IN ctxType,name IN VARCHAR2,value IN VARCHAR2);
42   PROCEDURE removeXSLTParam(ctx IN ctxType, name IN VARCHAR2);
43 
44   PROCEDURE getXML(ctx IN ctxHandle, tmpclob IN OUT NOCOPY clob,
45                    dtdOrSchema IN number := NONE);
46 
47   FUNCTION getXML(ctx IN ctxHandle, dtdOrSchema IN number := NONE)
48     RETURN clob;
49 
50   FUNCTION getXML(sqlQuery IN VARCHAR2, dtdOrSchema IN NUMBER := NONE)
51     RETURN CLOB;
52 
53   PROCEDURE getXMLType(ctx IN ctxHandle, tmpxmltype IN OUT NOCOPY xmltype,
54                    dtdOrSchema IN number := NONE);
55 
56   FUNCTION getXMLType(ctx IN ctxHandle, dtdOrSchema IN number:= NONE)
57         RETURN sys.XMLType;
58 
59   FUNCTION getXMLType(sqlQuery IN VARCHAR2, dtdOrSchema IN NUMBER := NONE)
60         RETURN sys.XMLType;
61 
62   -- returns the number of rows processed by the last call to getXML()
63   FUNCTION getNumRowsProcessed(ctx IN ctxHandle) RETURN number;
64 
65   PROCEDURE setMaxRows(ctx IN ctxHandle, maxRows IN number);
66   PROCEDURE setSkipRows(ctx IN ctxHandle, skipRows IN number);
67 
68   -- This procedure sets whether you want to replace characters such as
69   -- <. > etc.. by their codes. (lt;, gt; etc..)
70   PROCEDURE setConvertSpecialChars(ctx IN ctxHandle, replace IN boolean);
71 
72   -- This procedure sets whether you want to check for invalid characters
73   -- such as the null character.
74   PROCEDURE setCheckInvalidChars(ctx IN ctxHandle, chk IN boolean);
75 
76   -- This forces the use of the _ITEM for collectionitems. The default is to
77   -- set the underlying object type name  for collection base elements.
78   PROCEDURE useItemTagsForColl(ctx IN ctxHandle);
79 
80   -- reset the query to start fetching from the begining
81   PROCEDURE restartQuery(ctx IN ctxHandle);
82 
83   PROCEDURE closeContext(ctx IN ctxHandle);
84 
85   -- conversion functions
86   FUNCTION convert(xmlData IN varchar2, flag IN NUMBER := ENTITY_ENCODE)
87            return varchar2;
88 
89   FUNCTION convert(xmlData IN CLOB, flag IN NUMBER := ENTITY_ENCODE)
90            return CLOB;
91 
92   -- This procedure sets how you want nulls handled during generation
93   PROCEDURE setNullHandling(ctx IN ctxHandle, flag IN NUMBER);
94 
95   PROCEDURE useNullAttributeIndicator(ctx IN ctxHandle,
96                                       attrind IN boolean := TRUE);
97 
98   PROCEDURE setBindValue(ctx IN ctxHandle, bindName IN VARCHAR2,
99     bindValue IN VARCHAR2);
100 
101   PROCEDURE clearBindValues(ctx IN ctxHandle);
102 
103   -- Procedures for setting pretty print settings
104   PROCEDURE setPrettyPrinting(ctx IN ctxHandle, pp IN boolean);
105   PROCEDURE setIndentationWidth(ctx IN ctxHandle, width IN NUMBER);
106 
107 END dbms_xmlgen;