DBA Data[Home] [Help]

PACKAGE: XDB.DBMS_XMLSCHEMA_ANNOTATE

Source


1 PACKAGE     DBMS_XMLSCHEMA_ANNOTATE authid CURRENT_USER AS
2 
3   procedure printWarnings(value in BOOLEAN default TRUE);
4 
5 
6   procedure addXDBNamespace(xmlschema in out XMLType);
7   -- Adds the XDB namespace that is required for xdb annotation.
8   -- This procedure is called implicitly by any other procedure that adds a
9   -- schema annotation. Without further annotations the xdb namespace
10   -- annotations does not make sense, therefore this procedure might mostly
11   -- be called by other annotations procedures and not by the user directly.
12   -- The procedure gets an XML Schema as XMLType, performs the annotation and
13   -- returns it.
14 
15   procedure setDefaultTable(xmlschema in out XMLType,
16                             globalElementName VARCHAR2,
17                             tableName VARCHAR2,
18                             overwrite BOOLEAN default TRUE);
19   -- Sets the name of the default table for a given global element that is
20   -- specified by its name
21 
22   procedure removeDefaultTable(xmlschema in out XMLType,
23                               globalElementName VARCHAR2);
24   -- Removes the default table attribute for the given element.
25   -- After calling this
26   -- function system generated table names will be used. The procedure will
27   -- always overwrite.
28 
29   procedure setTableProps(xmlschema in out XMLType,
30                           globalElementName VARCHAR2,
31                           tableProps VARCHAR2,
32                           overwrite BOOLEAN default TRUE);
33   -- Specifies the TABLE storage clause that is appended to the default
34   -- CREATE TABLE statement.
35 
36   procedure removeTableProps(xmlschema in out XMLType,
37                             globalElementName VARCHAR2);
38   -- removes the table storage props.
39 
40   procedure setTableProps(xmlschema in out XMLType,
41                           globalObject VARCHAR2,
42                           globalObjectName VARCHAR2,
43                           localElementName VARCHAR2,
44                           tableProps VARCHAR2,
45                           overwrite BOOLEAN default TRUE);
46   -- Specifies the TABLE storage clause that is appended to the
47   -- default CREATE TABLE statement.
48 
49   procedure removeTableProps(xmlschema in out XMLType,
50                           globalObject VARCHAR2,
51                           globalObjectName VARCHAR2,
52                           localElementName VARCHAR2);
53   -- Removes the TABLE storage clause that is appended to the
54   -- default CREATE TABLE statement.
55 
56   procedure disableDefaultTableCreation(xmlschema in out XMLType,
57                                          globalElementName VARCHAR2);
58   -- Add a default table attribute with an empty value to the
59   -- top level element with the specified name.
60   -- No table will be created for that element.
61   -- The procedure will always overwrite.
62 
63 
64   procedure disableDefaultTableCreation(xmlschema in out XMLType);
65   -- Add a default table attribute with an empty value to ALL top level
66   -- elements that have no defined default table name.
67   -- The procedure will never overwrite existing annotations since this
68   -- would lead to no table creation at all.
69   -- This is the way to prevent XDB from creating many and unused tables
70   -- for elements that are no root elements of
71   -- instance documents.
72  /* TODO This function
73   * This functions should test that at least one default table with a given
74   * name exists. If no default table name is assigned calling this
75   * disableTopLevelTableCreation would lead to no table creation at all. */
76 
77   procedure enableDefaultTableCreation(xmlschema in out XMLType,
78                                         globalElementName VARCHAR2);
79   -- Enables the creation of top level tables by removing the empty default
80   -- table name annotation.
81 
82   procedure enableDefaultTableCreation(xmlschema in out XMLType);
83   -- Enables the creation of ALL top level tables by removing the empty
84   -- default table name annotation.
85 
86   procedure setSQLName (xmlschema in out XMLType,
87                         globalObject VARCHAR2,
88                         globalObjectName VARCHAR2,
89                         localObject VARCHAR2,
90                         localObjectName VARCHAR2,
91                         sqlName VARCHAR2,
92                         overwrite BOOLEAN default TRUE);
93   -- assigns a sqlname to an element
94 
95   procedure removeSQLName (xmlschema in out XMLType,
96                            globalObject VARCHAR2,
97                            globalObjectName VARCHAR2,
98                            localObject VARCHAR2,
99                            localObjectName VARCHAR2);
100   -- removes a sqlname from a global element
101 
102   procedure setSQLType (xmlschema in out XMLType,
103                         globalElementName VARCHAR2,
104                         sqlType VARCHAR2,
105                         overwrite BOOLEAN default TRUE);
106   -- assigns a sqltype to a global element
107 
108   procedure removeSQLType (xmlschema in out XMLType,
109                            globalElementName VARCHAR2);
110   -- removes a sqltype from a global element
111 
112   procedure setSQLType(xmlschema in out XMLType,
113                        globalObject VARCHAR2,
114                        globalObjectName VARCHAR2,
115                        localObject VARCHAR2,
116                        localObjectName VARCHAR2,
117                        sqlType VARCHAR2,
118                        overwrite BOOLEAN default TRUE);
119   -- assigns a sqltype inside a complex type (local)
120 
121   procedure removeSQLType    (xmlschema in out XMLType,
122                               globalObject VARCHAR2,
123                               globalObjectName VARCHAR2,
124                               localObject VARCHAR2,
125                               localObjectName VARCHAR2);
126   -- removes a sqltype inside a complex type (local)
127 
128   procedure setSQLTypeMapping(xmlschema in out XMLType,
129                               schemaTypeName VARCHAR2,
130                               sqlTypeName VARCHAR2,
131                               overwrite BOOLEAN default TRUE);
132   -- defines a mapping of schema type and sqltype.
133   -- The addSQLType procedure do not have to be called on all instances of
134   -- the schema type instead the schema is traversed and the
135   -- sqltype is assigned automatically.
136 
137   procedure removeSQLTypeMapping(xmlschema in out XMLType,
138                                  schemaTypeName VARCHAR2);
139   -- removes the sqltype mapping for the given schema type.
140 
141   procedure setTimeStampWithTimeZone(xmlschema in out xmlType,
142                                      overwrite BOOLEAN default TRUE);
143   -- sets the TimeStampWithTimeZone datatype to dateTime typed element.
144 
145   procedure removeTimeStampWithTimeZone(xmlschema in out xmlType);
146   -- removes the TimeStampWithTimeZone datatype to dateTime typed element.
147 
148   procedure setAnyStorage (xmlschema in out XMLType,
149                            complexTypeName VARCHAR2,
150                            sqlTypeName VARCHAR2,
151                            overwrite BOOLEAN default TRUE);
152   -- sets the sqltype of any
153 
154   procedure removeAnyStorage (xmlschema in out XMLType,
155                               complexTypeName VARCHAR2);
156   -- removes the sqltype of any
157 
158   procedure setSQLCollType(xmlschema in out XMLType,
159                            elementName VARCHAR2,
160                            sqlCollType VARCHAR2,
161                            overwrite BOOLEAN default TRUE);
162   -- sets the name of the SQL collection type that corresponds
163   -- to this XML element
164 
165   procedure removeSQLCollType(xmlschema in out XMLType,
166                               elementName VARCHAR2);
167   -- removes the sql collection type
168 
169   procedure setSQLCollType(xmlschema in out XMLType,
170                            globalObject VARCHAR2,
171                            globalObjectName VARCHAR2,
172                            localElementName VARCHAR2,
173                            sqlCollType VARCHAR2,
174                            overwrite BOOLEAN default TRUE );
175   -- Name of the SQL collection type that corresponds to this
176   -- XML element. inside a complex type.
177 
178   procedure removeSQLCollType(xmlschema in out XMLType,
179                               globalObject VARCHAR2,
180                               globalObjectName VARCHAR2,
181                               localElementName VARCHAR2);
182   -- removes the sql collection type
183 
184   procedure disableMaintainDom(xmlschema in out XMLType,
185                                overwrite BOOLEAN default TRUE);
186   -- sets dom fidelity to FALSE to ALL complex types irregardless
187   -- of their names
188 
189   procedure enableMaintainDom(xmlschema in out XMLType,
190                               overwrite BOOLEAN default TRUE);
191   -- sets dom fidelity to TRUE to ALL complex types irregardless
192   -- of their names
193 
194   procedure disableMaintainDom(xmlschema in out XMLType,
195                                complexTypeName VARCHAR2,
196                                overwrite BOOLEAN default TRUE);
197   -- sets the dom fidelity attribute for the given complex type name to FALSE.
198 
199   procedure enableMaintainDom(xmlschema in out XMLType,
200                               complexTypeName VARCHAR2,
201                               overwrite BOOLEAN default TRUE);
202   -- sets the dom fidelity attribute for the given complex type name to TRUE
203 
204   procedure removeMaintainDom(xmlschema in out XMLType);
205   -- removes all maintain dom annotations from given schema
206 
207   procedure setOutOfLine(xmlschema in out XMLType,
208                           elementName VARCHAR2,
209                           elementType VARCHAR2,
210                           defaultTableName VARCHAR2,
211                           overwrite BOOLEAN default TRUE);
212   -- set the sqlInline attribute to false and forces the out of line storage
213   -- for the element specified by its name.
214 
215   procedure removeOutOfLine(xmlschema in out XMLType,
216                             elementName VARCHAR2,
217                             elementType VARCHAR2);
218   -- removes the sqlInline attribute for the element specified by its name.
219 
220   procedure setOutOfLine (xmlschema in out XMLType,
221                            globalObject VARCHAR2,
222                            globalObjectName VARCHAR2,
223                            localElementName VARCHAR2,
224                            defaultTableName VARCHAR2,
225                            overwrite BOOLEAN default TRUE);
226   -- set the sqlInline attribute to false and forces the out of line storage
227   -- for the element specified by its   local and global name
228 
229   procedure removeOutOfLine (xmlschema in out XMLType,
230                              globalObject VARCHAR2,
231                              globalObjectName VARCHAR2,
232                              localElementName VARCHAR2);
233   -- removes the sqlInline attribute for the element specified by its
234   -- global and local name
235 
236   procedure setOutOfLine(xmlschema in out XMLType,
237                           reference VARCHAR2,
238                           defaultTableName VARCHAR2,
239                           overwrite BOOLEAN default TRUE);
240   -- sets the default table name and sqlinline attribute for all references
241   -- to a particular global Element
242 
243   procedure removeOutOfLine(xmlschema in out XMLType, reference VARCHAR2);
244   -- removes the the sqlInline attribute for the global element
245 
246 
247 
248   function getSchemaAnnotations(xmlschema xmlType) return XMLType;
249   --  creates a diff of the annotated xml schema and the
250   --  non-annotated  xml schema.
251   --  This diff can be used to apply all annotation again on a
252   --  non-annotated schema.
253   --  A user calls this function to save all annotations in one document.
254 
255   procedure setSchemaAnnotations(xmlschema in out xmlType, annotations XMLTYPE);
256   -- Will take the annotations
257   -- (diff result from call to 'getSchemaAnnotations'
258   -- and will patch in provided XML schema.
259 
260 
261 
262 
263 END DBMS_XMLSCHEMA_ANNOTATE;