Oracle® Database PL/SQL Packages and Types Reference 11g Release 1 (11.1) Part Number B28419-01 |
|
|
View PDF |
The DBMS_XDB
package supports the following features:
Resource Management subprograms which complement Resource Views
The Access Control List (ACL)-based Security Mechanism
Configuration Session Management
Creation of the XDB username
This chapter contains the following topics:
Overview
Constants
This section contains topics which relate to using the DBMS_XDB
package.
The DBMS_XDB
package supports the following features:
The Resource Management functionality providesLINK Procedures, EXISTSRESOURCE Function, LOCKRESOURCE Function, GETLOCKTOKEN Procedure, UNLOCKRESOURCE Function, CREATERESOURCE Functions, RENAMERESOURCE Procedure, DELETERESOURCE Procedure, GETRESOID Function, CREATEOIDPATH Function, REBUILDHIERARCHICALINDEX Procedure and CREATEFOLDER Function subprograms which complement Resource Views.
The Access Control List (ACL)-based Security Mechanism can be used with in-hierarchy ACLs stored by the database or in-memory ACLs that may be stored outside the database. Some of these methods can be used for both Oracle resources and arbitrary database objects. Use CHECKPRIVILEGES Function, GETACLDOCUMENT Function, CHANGEPRIVILEGES Function and GETCHILDRESPATHS Function, LINK Procedures, LINK Procedures, LINK Procedures, LINK Procedures, LINK Procedures, LINK Procedures for Oracle Resources. ACLCHECKPRIVILEGES Function provides access to Oracle's ACL-based Security mechanism without storing objects in the Hierarchy.
Configuration Session Management is supported by CFG_REFRESH Procedure, CFG_GET Function and CFG_UPDATE Procedure. methods.
The XDB username is created during XDB installation. This user owns a set of default tables and packages. GETXDB_TABLESPACE Function and MOVEXDB_TABLESPACE Procedure enable movement of schemas to a specified tablespace, and support the default SYSAUX
tablespace introduction
Table 148-1 Defined Constants for DBMS_XDB
Constant | Type | Value | Description |
---|---|---|---|
DELETE_RESOURCE |
NUMBER |
1 | Deletes a resource; fails if the resource has children. |
DELETE_RECURSIVE |
NUMBER |
2 | Deletes a resource and its children, if any. |
DELETE_FORCE |
NUMBER |
3 | Deletes the resource, even if the object it contains is invalid. |
DELETE_RECURSIVE_FORCE |
NUMBER |
4 | Deletes a resource and its children, if any, even if the object it contains is invalid. |
Table 148-2 DBMS_XDB Package Subprograms
Subprogram | Description |
---|---|
ACLCHECKPRIVILEGES Function |
Checks access privileges granted to the current user by specified ACL document on a resource whose owner is specified by the 'owner' parameter. |
ADDMIMEMAPPING Procedure |
Adds a mime mapping to the XDB configuration |
ADDSCHEMALOCMAPPING Procedure |
Adds a schema location mapping to the XDB configuration |
ADDSERVLET Procedure |
Adds a servlet to XDB configuration |
ADDSERVLETMAPPING Procedure |
Adds a servlet mapping to XDB configuration |
ADDSERVLETSECROLE Procedure |
Adds a security role REF to a specified servlet in the XDB configuration |
ADDXMLEXTENSION Procedure |
Adds adds an XML extension to the XDB configuration |
APPENDPATH Procedure |
Appends a childpath to a parentpath |
APPENDPATH Procedure |
Takes in user-defined metadata either as a REF to XMLTYPE or an XMLTYPE and adds it to the desired resource |
CFG_GET Function |
Retrieves the session's configuration information |
CFG_REFRESH Procedure |
Refreshes the session's configuration information to the latest configuration |
CFG_UPDATE Procedure |
Updates the configuration information |
CHANGEOWNER Procedure |
Changes the owner of the resource/s to the specified owner. |
CHANGEPRIVILEGES Function |
Adds a specified ACE to a specified resource's ACL |
COPYRESOURCE Procedure |
Copies the resource at the source path to a new resource at the destination path |
CHECKPRIVILEGES Function |
Checks access privileges granted to the current user on the specified resource |
CREATEFOLDER Function |
Creates a new folder resource in the hierarchy |
CREATEOIDPATH Function |
Creates a virtual path to the resource based on object ID |
CREATERESOURCE Functions |
Creates a new resource |
DELETEMIMEMAPPING Procedure |
Deletes the mime mapping from the XDB configuration |
DELETERESOURCE Procedure |
Deletes a resource from the hierarchy |
DELETERESOURCEMETADATA Procedures |
Deletes metadata from a resource (can be used for schema-based or nonschema-based metadata) |
DELETESCHEMALOCMAPPING Procedure |
Deletes the schema location mapping for the specified schema URL from the XDB configuration. |
DELETESERVLET Procedure |
Deletes a servlet from XDB configuration |
DELETESERVLETMAPPING Procedure |
Deletes the servlet mapping for the specified servlet name from the XDB configuration |
DELETESERVLETSECROLE Procedure |
Deletes the specified role from a servlet in the XDB configuration |
DELETEXMLEXTENSION Procedure |
Deletes the specified XML extension from the XDB configuration |
EXISTSRESOURCE Function |
Determines if a resource is the hierarchy, based on its absolute path |
GETACLDOCUMENT Function |
Retrieves ACL document that protects resource given its path name |
GETCHILDRESPATHS Function |
Returns a cursor over the absolute paths of all the child resources |
GETCONTENTBLOB Function |
Retrieves the contents of a resource returned as a BLOB |
GETCONTENTCLOB Function |
Retrieves the contents of a resource returned as a CLOB |
GETCONTENTVARCHAR2 Function |
Retrieves the contents of a resource returned as a string |
GETCONTENTXMLREF Function |
Retrieves the contents of a resource returned as a a REF to an XMLTYPE |
GETCONTENTXMLTYPE Function |
Retrieves the contents of a resource returned as an XMLTYPE |
GETFTPPORT Function |
Gets the value of the current FTP port |
GETHTTPPORT Function |
Gets the value of the current HTTP port |
GETLOCKTOKEN Procedure |
Returns that resource's lock token for the current user given a path to a resource |
GETLISTENERENDPOINT Procedure |
Retrieves the parameters of a listener end point corresponding to the XML DB HTTP server |
GETRESOID Function |
Returns the object ID of the resource from its absolute path |
GETXDB_TABLESPACE Function |
Returns the current tablespace of the XDB (user) |
HASBLOBCONTENT Function |
Returns TRUE if the resource has BLOB content |
HASCHARCONTENT Function |
Returns TRUE if the resource has character content |
HASXMLCONTENT Function |
Returns TRUE if the resource has XML content |
HASXMLREFERENCE Function |
Returns TRUE if the resource has REF to XML content |
ISFOLDER Function |
Returns TRUE if the resource is a folder or container |
LINK Procedures |
Creates a link to an existing resource |
LOCKRESOURCE Function |
Gets a WebDAV-style lock on that resource given a path to that resource |
MOVEXDB_TABLESPACE Procedure |
Moves the XDB (user) to the specified tablespace |
PROCESSLINKS Procedure |
Processes document links in the specified resource |
PURGERESOURCEMETADATA Procedure |
Deletes all user metadata from a resource |
REBUILDHIERARCHICALINDEX Procedure |
Rebuilds the hierarchical index after import or export operations |
RENAMERESOURCE Procedure |
Renames the XDB resource |
SETACL Procedure |
Sets the ACL on a specified resource |
SETCONTENT Procedures |
Replaces the contents of a specified resource with specified datatype |
SETFTPPORT Procedure |
Sets the FTP port to a new value |
SETHTTPPORT Procedure |
Sets the HTP port to a new value |
SETLISTENERENDPOINT Procedure |
Sets the parameters of a listener end point corresponding to the XML DB HTTP server |
SETLISTENERLOCALACCESS Procedure |
Restricts all listener end points of the XML DB HTTP server to listen either only on the localhost interface or on both localhost and non-localhost interfaces |
SPLITPATH Procedure |
Splits the path into a parentpath and childpath |
TOUCHRESOURCE Procedure |
Changes the modification time of the resource to the current time |
UPDATERESOURCEMETADATA Procedures |
Updates metadata for a resource |
UNLOCKRESOURCE Function |
Unlocks the resource given a lock token and resource path |
This function checks access privileges granted to the current user by specified ACL document by the OWNER
of the resource. Returns positive integer if all privileges are granted.
Syntax
DBMS_XDB.ACLCHECKPRIVILEGES( acl_path IN VARCHAR2, owner IN VARCHAR2, privs IN xmltype) RETURN PLS_INTEGER;
Parameters
Table 148-3 ACLCHECKPRIVILEGES Function Parameters
Parameter | Description |
---|---|
acl_path |
Absolute path in the Hierarchy for ACL document |
owner |
Resource owner name; the pseudo user "DAV:owner" is replaced by this user during ACL privilege resolution |
privs |
An XMLType instance of the privilege element specifying the requested set of access privileges. See description for CHECKPRIVILEGES Function. |
This procedure adds the following mime mapping to XDB configuration:
<mime-mapping> <extension>extension</extension> <mime-type>mimetype</mime-type> </mime-mapping>
Syntax
DBMS_XDB.ADDMIMEMAPPING( extension IN VARCHAR2, mimetype IN VARCHAR2);
Parameters
Table 148-4 ADDMIMEMAPPING Procedure Parameters
Parameter | Description |
---|---|
extension |
Extension for which a mime type is being added |
mimetype |
Mime type |
This procedure adds the following schema location mapping to the XDB configuration:
<schemaLocation-mapping> <namespace>namespace</namespace> <element>element</element> <schemaURL>schemaURL</schemaURL> </schemaLocation-mapping>
Syntax
Parameters
Table 148-5 ADDSCHEMALOCMAPPING Procedure Parameters
Parameter | Description |
---|---|
namespace |
Namespace |
element |
Element |
schemaURL |
Schema URL |
This procedure adds the following servlet to XDB configuration:
<servlet> <servlet-name>name</servlet-name> <servlet-language>language</servlet-language> <display-name>dispname</display-name> <description>descript</description> <servlet-class>class</servlet-class> <servlet-schema>schema</servlet-schema> </servlet>
Syntax
DBMS_XDB.ADDSERVLET( name IN VARCHAR2, language IN VARCHAR2, dispname IN VARCHAR2, icon IN VARCHAR2 := NULL, descript IN VARCHAR2 := NULL, class IN VARCHAR2 := NULL, jspfile IN VARCHAR2 := NULL, plsql IN VARCHAR2 := NULL);
Parameters
Table 148-6 ADDSERVLET Procedure Parameters
Parameter | Description |
---|---|
name |
Servlet name |
language |
Must be one of "C", "Java", "PL/SQL" |
dispname |
Display name |
icon |
Icon |
descript |
Description |
class |
The class / jspfile / plsql function corresponding to this servlet. The first non-NULL argument amongst these three is chosen, and the others are treated as NULL . |
jspfile |
The class / jspfile / plsql function corresponding to this servlet. The first non-NULL argument amongst these three is chosen, and the others are treated as NULL . |
plsql |
The class / jspfile / plsql function corresponding to this servlet. The first non-NULL argument amongst these three is chosen, and the others are treated as NULL . |
schema |
Schema |
This procedure adds the following servlet mapping to XDB configuration:
<servlet-mapping> <servlet-pattern>pattern</servlet-pattern> <servlet-name>name</servlet-name></servlet-mapping>
Syntax
DBMS_XDB.ADDSERVLETMAPPING( pattern IN VARCHAR2, name IN VARCHAR2);
Parameters
Table 148-7 ADDSERVLETMAPPING Procedure Parameters
Parameter | Description |
---|---|
pattern |
Sservlet pattern |
name |
Servlet name |
This procedure adds the following security role REF
to a specified servlet in XDB configuration:
<security-role-ref> <role-name>rolename</role-name> <role-link>rolelink</role-link> <description>descript</description> </security-role-ref>
Syntax
DBMS_XDB.ADDSERVLETSECROLE( servname IN VARCHAR2, rolename IN VARCHAR2, rolelink IN VARCHAR2, descript IN VARCHAR2 := NULL);
Parameters
Table 148-8 ADDSERVLETSECROLE Procedure Parameters
Parameter | Description |
---|---|
servname |
Sservlet name |
rolename |
Role name |
rolelink |
Role link |
descript |
Description |
This procedure adds the following XML extension to the XDB configuration under <xml-extensions>
:
<extension>extension</extension>
Syntax
DBMS_XDB.ADDXMLEXTENSION( extension IN VARCHAR2);
Parameters
Table 148-9 ADDXMLEXTENSION Procedure Parameters
Parameter | Description |
---|---|
extension |
XML extension to be added |
This procedure appends a childpath to a parentpath.
Syntax
DBMS_XDB.APPENDPATH ( abspath OUT VARCHAR2, parentpath IN VARCHAR2, childpath IN VARCHAR2);
Parameters
Table 148-10 APPENDPATH Procedure
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
parentpath |
Parentpath |
childpath |
Childpath |
This procedure takes in user-defined metadata either as a REF
to XMLTYPE
or an XMLTYPE
and adds it to the desired resource.
Syntax
DBMS_XDB.APPENDRESOURCEMETADATA ( abspath IN VARCHAR2, metadata IN XMLTYPE); DBMS_XDB.APPENDRESOURCEMETADATA ( abspath IN VARCHAR2, metadata IN REF SYS.XMLTYPE);
Parameters
Table 148-11 APPENDRESOURCEMETADATA Procedure
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
metadata |
Metadata can be schema based or nonschema-based. Schema-based metadata will be stored in its own table. |
Usage Notes
In the case in which a REF
is passed in, the procedure stores the REF
in the resource, and the metadata is stored in a separate table. In this case you are responsible for populating the RESID
column for the metadata table. Note that theREF
passed in must be unique. In other words, there must not be aREF
with the same value in the resource metadata, as this would violate uniqueness of properties. An error will be thrown if users attempt to add a REF
that already exists.
In the case where the XMLTYPE is passed in, the data is parsed to determine if it is schema-based or not and stored accordingly.
This function retrieves the session's configuration information as an XMLType
instance.
Syntax
DBMS_XDB.CFG_GET RETURN SYS.XMLType;
This procedure refreshes the session's configuration information to the latest configuration.
Syntax
DBMS_XDB.CFG_REFRESH;
This procedure updates the configuration information and commits the change.
Syntax
DBMS_XDB.CFG_UPDATE( xdbconfig IN SYS.XMLTYPE);
Parameters
Table 148-12 CFG_UPDATE Procedure Parameters
Parameter | Description |
---|---|
xdbconfig |
The new configuration data |
This procedure changes the owner of the resource/s to the specified owner.
Syntax
Parameters
Table 148-13 CHANGEOWNER Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
owner |
New owner for the resource |
recurse |
If TRUE , recursively change owner of all resources in the folder tree |
This function adds a specified ACE to a specified resource's ACL.
Syntax
DBMS_XDB.CHANGEPRIVILEGES( res_path IN VARCHAR2, ace IN xmltype) RETURN PLS_INTEGER;
Parameters
Table 148-14 CHANGEPRIVILEGES Function Parameters
Parameter | Description |
---|---|
res_path |
Path name of the resource for which privileges need to be changed |
ace |
An XMLType instance of the <ace> element which specifies the <principal> , the operation <grant> and the list of privileges |
Return Values
A positive integer if the ACL was successfully modified.
Usage Notes
If no ACE with the same principal and the same operation (grant
/deny
) already exists in the ACL, the new ACE is added at the end of the ACL.
This function checks access privileges granted to the current user on the specified resource.
Syntax
DBMS_XDB.CHECKPRIVILEGES( res_path IN VARCHAR2, privs IN xmltype) RETURN PLS_INTEGER;
Parameters
Table 148-15 CHECKPRIVILEGES Function Parameters
Parameter | Description |
---|---|
res_path |
Absolute path in the Hierarchy for resource |
privs |
An XMLType instance of the privilege element specifying the requested set of access privileges |
Return Values
A positive integer if all requested privileges granted.
The procedure copies the resource at a source path to a new resource at a destination path. If the recurse
flag is TRUE
, this produces a recursive (deep) copy.
Syntax
DBMS_XDB.COPYRESOURCE ( srcpath IN VARCHAR2, dstpath IN VARCHAR2, recurse IN BOOLEAN := TRUE );
Parameters
Table 148-16 COPYRESOURCE Function Parameters
Parameter | Description |
---|---|
srcpath |
Source abspath. |
dstpath |
Destination abspath |
recurse |
If TRUE , recursively copy subfolders |
Return Values
TRUE
if operation successful; FALSE
, otherwise.
This function creates a new folder resource in the hierarchy.
Syntax
DBMS_XDB.CREATEFOLDER( path IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-17 CREATEFOLDER Function Parameters
Parameter | Description |
---|---|
path |
Path name for the new folder |
Return Values
TRUE
if operation successful; FALSE
, otherwise.
Usage Notes
The given path name's parent folder must already exist in the hierarchy: if '/folder1/folder2'
is passed as the path parameter, then '/folder1'
must already exist.
This function creates a virtual path to the resource based on object ID.
Syntax
DBMS_XDB.CREATEOIDPATH( oid IN RAW) RETURN VARCHAR2;
Parameters
The functions create a new resource. The description of the overload options precede each version of the syntax
Syntax
Creates a new resource with a specified string as its contents:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, data IN VARCHAR2, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Creates a new resource with a specified XMLType
data as its contents:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, data IN SYS.XMLTYPE, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Given a REF
to an existing XMLType
row, creates a resource whose contents point to that row. That row should not already exist inside another resource:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, datarow IN REF SYS.XMLTYPE, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Creates a resource with a specified BLOB
as its contents, and specifies character set of the source BLOB
:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, data IN BLOB, csid IN NUMBER :=0, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Creates a resource with a specified BFILE
as its contents, and specifies character set of the source BFILE
:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, data IN BFILE, csid IN NUMBER :=0, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Creates a resource with a specified CLOB
as its contents:
DBMS_XDB.CREATERESOURCE( abspath IN VARCHAR2, data IN CLOB, createfolders IN BOOLEAN := FALSE) RETURN BOOLEAN;
Parameters
Table 148-19 CREATERESOURCE Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource to create. The path name's parent folder must already exist in the hierarchy. In other words, if /foo/bar.txt is passed in, then folder /foo must already exist. |
data |
The new resource's contents. The data will be parsed to check if it contains a schema-based XML document, and the contents will be stored as schema-based in the schema's default table. Otherwise, it will be saved as binary data. |
datarow |
REF to an XMLType row to be used as the contents |
csid |
Character set id of the document. Must be a valid Oracle ID; otherwise returns an error.
If a zero CSID is specified then the data is defaulted to the database character set. Otherwise, the encoding of the data is determined as follows:
|
createfolders |
If TRUE , create the parent folders if they do not exist |
Return Values
TRUE
if operation successful; FALSE
, otherwise.
This procedure deletes the mime mapping for a specified extension from the XDB configuration.
Syntax
DBMS_XDB.DELETEMIMEMAPPING( extension IN VARCHAR2,);
Parameters
Table 148-20 DELETEMIMEMAPPING Procedure Parameters
Parameter | Description |
---|---|
extension |
Extension for which a mime type is to be deleted |
This procedure deletes a resource from the hierarchy.
Syntax
DBMS_XDB.DELETERESOURCE( path IN VARCHAR2, delete_option IN PLS_INTEGER);
Parameters
Table 148-21 DELETERESOURCE Procedure Parameters
Parameter | Description |
---|---|
path |
Path name of the resource to delete |
delete_option |
The option that controls how a a resource is deleted; defined in Table 148-1:
|
This procedure takes in a resource by absolute path and removes either the schema-based metadata identified by the REF, or the metadata identified by the namespace and name combination, which can be either schema-based or non-schema based. It will also take an additional (optional) parameter that specifies how to delete it. This parameter is only relevant for schema-based resource metadata that needs to be deleted. For non-schema based metadata, this parameter is ignored.
Syntax
Can be used only or schema-based metadata:
DBMS_XDB.DELETERESOURCEMETADATA ( abspath IN VARCHAR2, metadata IN REF SYS.XMLTYPE, delete_option IN pls_integer := dbms_xdb.DELETE_RESOURCE_METADATA_CASCADE);
Can be used for schema-based or nonschema-based metadata:
DBMS_XDB.DELETERESOURCEMETADATA ( abspath IN VARCHAR2, metadatans IN VARCHAR2, metadataname IN VARCHAR2, delete_option IN pls_integer := dbms_xdb.DELETE_RESOURCE_METADATA_CASCADE);
Parameters
Table 148-22 DELETERESOURCEMETADATA Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
metadata |
REF to the piece of metadata (schema based) to be deleted |
mettadatans |
Namespace of the metadata fragment to be removed |
mettadataname |
Local name of the metadata fragment to be removed |
delete_option |
Only applicable for schema-based metadata, this can be one of the following:
|
This procedure deletes the schema location mapping for a specified schema URL from the XDB configuration.
Syntax
Parameters
This procedure deletes a servlet from the XDB configuration.
Syntax
DBMS_XDB.DELETESERVLET( name IN VARCHAR2);
Parameters
This procedure deletes the servlet mapping for a specified servlet name from the XDB configuration.
Syntax
DBMS_XDB.DELETESERVLETMAPPING( name IN VARCHAR2);
Parameters
This procedure deletes the specified role from a servlet in the XDB configuration.
Syntax
DBMS_XDB.DELETESERVLETSECROLE( servname IN VARCHAR2, rolename IN VARCHAR2);
Parameters
Table 148-26 DELETESERVLETSECROLE Procedure Parameters
Parameter | Description |
---|---|
servname |
Servlet name |
rolename |
Name of the role to be deleted |
This procedure deletes the specified XML extension from the XDB configuration.
Syntax
DBMS_XDB.DELETEXMLEXTENSION( extension IN VARCHAR2);
Parameters
Table 148-27 DELETEXMLEXTENSION Procedure Parameters
Parameter | Description |
---|---|
extension |
XML extension to be deleted |
This function indicates if a resource is in the hierarchy. Matches resource by a string that represents its absolute path.
Syntax
DBMS_XDB.EXISTSRESOURCE( abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-28 EXISTSRESOURCE Function Parameters
Parameter | Description |
---|---|
abspath |
Path name of the resource whose ACL document is required |
Return Values
TRUE
if the resource is found.
This function retrieves ACL document that protects resource given its path name.
Syntax
DBMS_XDB.GETACLDOCUMENT( abspath IN VARCHAR2) RETURN sys.xmltype;
Parameters
Table 148-29 GETACLDOCUMENT Function Parameters
Parameter | Description |
---|---|
abspath |
Path name of the resource whose ACL document is required |
Return Values
The XMLType
for ACL document.
This function returns a cursor over the absolute paths of all the child resources.
Syntax
DBMS_XDB.GETCHILDRESPATHS( abspath IN VARCHAR2); RETURN SYS_REFCURSOR;
Parameters
Table 148-30 GETCHILDRESPATHS Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
Return Values
A cursor over the absolute paths of all the child resources.
This function retrieves the contents of a resource returned as a BLOB
.
Syntax
DBMS_XDB.GETCONTENTBLOB( abspath IN VARCHAR2, csid OUT PLS_INTEGER, locksrc IN BOOLEAN := FALSE) RETURN BLOB;
Parameters
Table 148-31 GETCONTENTBLOB Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
csid |
If TRUE , lock and return the source LOB. If FALSE , return a temp LOB copy. |
locksrc | Contents of the resource as a BLOB |
Return Values
The contents of the resource as a BLOB.
This function gets the contents of a resource returned as a CLOB
.
Syntax
DBMS_XDB.GETCONTENTCLOB( abspath IN VARCHAR2, RETURN CLOB;
Parameters
Table 148-32 GETCONTENTCLOB Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
Return Values
The contents of the resource as a CLOB.
This function gets the contents of a resource returned as a string.
Syntax
DBMS_XDB.GETCONTENTVARCHAR2( abspath IN VARCHAR2, RETURN BLOB;
Parameters
Table 148-33 GETCONTENTVARCHAR2 Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
Return Values
The contents of the resource as a string.
This function retrieves the contents of a resource returned as a a REF
to an XMLTYPE
.
Syntax
DBMS_XDB.GETCONTENTXMLREF( abspath IN VARCHAR2, RETURN SYS.XMLTYPE;
Parameters
Table 148-34 GETCONTENTXMLREF Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
Return Values
The contents of the resource as a REF
to an XMLTYPE
.
This function retrieves the contents of a resource returned as an XMLTYPE
.
Syntax
DBMS_XDB.GETCONTENTXMLTYPE( abspath IN VARCHAR2, RETURN SYS.XMLTYPE;
Parameters
Table 148-35 GETCONTENTXMLTYPE Function Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
Return Values
The contents of the resource as an XMLTYPE.
This procedure gets the value of the current FTP port.
Syntax
DBMS_XDB.GETFTPPORT RETURN NUMBER;
This procedure gets the value of the current HTTP port.
Syntax
DBMS_XDB.GETHTTPPORT RETURN NUMBER;
This procedure retrieves the parameters of a listener end point corresponding to the XML DB HTTP server. The parameters of both HTTP and HTTP2 end points can be retrieved by invoking this procedure.
Syntax
DBMS_XDB.GETLISTENERENDPOINT ( endpoint IN NUMBER, host OUT VARCHAR2, port OUT NUMBER, protocol OUT NUMBER);
Parameters
Table 148-36 GETLISTENERENDPOINT Procedure Parameters
Parameter | Description |
---|---|
endpoint |
End point to be retrieved. Its value can be XDB_ENDPOINT_HTTP or XDB_ENDPOINT_HTTP2 . |
host |
Interface on which the listener end point listens |
port |
Port on which the listener end point listens |
protocol |
Transport protocol accepted by the listener end point |
Given a path to a resource, this procedure returns that resource's lock token for the current user.
Syntax
DBMS_XDB.GETLOCKTOKEN( path IN VARCHAR2, locktoken OUT VARCHAR2);
Parameters
Table 148-37 GETLOCKTOKEN Procedure Parameters
Parameter | Description |
---|---|
path |
Path name to the resource |
locktoken |
Logged-in user's lock token for the resource |
Usage Notes
The user must have READPROPERTIES
privilege on the resource.
This function gets all privileges granted to the current user on a specified resource.
Syntax
DBMS_XDB.GETPRIVILEGES( res_path IN VARCHAR2) RETURN sys.xmltype;
Parameters
Table 148-38 GETPRIVILEGES Function Parameters
Parameter | Description |
---|---|
res_path |
Absolute path in the hierarchy of the resource |
Return Values
An XMLType
instance of <privilege>
element, which contains the list of all leaf privileges granted on this resource to the current user.
Returns the object ID of the resource from its absolute path.
Syntax
DBMS_XDB.GETRESOID( abspath IN VARCHAR2) RETURN RAW;
Parameters
Table 148-39 GETRESOID Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
NULL
if the resource is not present.
This function returns the current tablespace of the XDB (user).
Syntax
DBMS_XDB.GETXDB_TABLESPACE RETURN VARCHAR2;
This function returns TRUE
if the resource has BLOB content.
Syntax
DBMS_XDB.DBMS_XDB.HASBLOBCONTENT abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-40 HASBLOBCONTENT Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
TRUE
if the resource has BOB content.
This function returns TRUE
if the resource has character content.
Syntax
DBMS_XDB.DBMS_XDB.HASCHARCONTENT abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-41 HASCHARCONTENT Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
TRUE
if the resource has character content.
This function returns TRUE
if the resource has XML content.
Syntax
DBMS_XDB.DBMS_XDB.HASXMLCONTENT abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-42 HASXMLCONTENT Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
TRUE
if the resource has XML content.
This function returns TRUE
if the resource has a REF
to XML content.
Syntax
DBMS_XDB.DBMS_XDB.HASXMLREFERENCE abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-43 HASXMLREFERENCE Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
TRUE
resource has a REF
to XML content.
This function returns TRUE
if the resource is a folder or container.
Syntax
DBMS_XDB.DBMS_XDB.ISFOLDER abspath IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-44 DBMS_XDB.ISFOLDER Function Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
Return Values
TRUE
if the resource is a folder or container.
This procedure creates from a specified folder to a specified resource.
Syntax
DBMS_XDB.LINK( srcpath IN VARCHAR2, linkfolder IN VARCHAR2, linkname IN VARCHAR2);
DBMS_XDB.LINK( srcpath IN VARCHAR2, linkfolder IN VARCHAR2, linkname IN VARCHAR2, linktype IN PLS_INTEGER := DBMS_XDB.LINK_TYPE_HARD);
Parameters
Table 148-45 LINK Procedure Parameters
Parameter | Description |
---|---|
srcpath |
Path name of the resource to which a link is created |
linkfolder |
Folder in which the new link is placed |
linkname |
Name of the new link |
linktype |
Type of link to be created:
|
Given a path to a resource, this function gets a WebDAV-style lock on that resource.
Syntax
DBMS_XDB.LOCKRESOURCE( path IN VARCHAR2, depthzero IN BOOLEAN, shared IN boolean) RETURN BOOLEAN;
Parameters
Table 148-46 LOCKRESOURCE Function Parameters
Parameter | Description |
---|---|
path |
Path name of the resource to lock. |
depthzero |
Currently not supported |
shared |
Passing TRUE will obtain a shared write lock |
Return Values
TRUE
if successful.
Usage Notes
The user must have UPDATE
privileges on the resource.
This procedure moves the XDB (user) to the specified tablespace.
Syntax
DBMS_XDB.MOVEXDB_TABLESPACE( new_tablespace IN VARCHAR2);
Parameters
Table 148-47 MOVEXDB_TABLESPACE Procedure Parameters
Parameter | Description |
---|---|
new_tablespace |
Name of the tablespace where the XDB will be moved |
Usage Notes
This operation waits for all concurrent XDB sessions to exit.
This procedure processes document links in the specified resource.
Syntax
DBMS_XDB.PURGERESOURCEMETADATA( abspath IN VARCHAR2, recurse IN BOOLEAN := FALSE);
Parameters
Table 148-48 PROCESSLINKS Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource. If the path is a folder, use the recurse flag. |
recurse |
Used only if abspath specifies a folder. If TRUE , process links of all resources in the folder hierarchy rooted at the specified resource. If FALSE , process links of all documents in this folder only. |
This procedure deletes all user metadata from a resource. Schema-based metadata is removed in cascade mode, rows being deleted from the corresponding metadata tables.
Syntax
DBMS_XDB.PURGERESOURCEMETADATA( abspath IN VARCHAR2);
Parameters
Table 148-49 PURGERESOURCEMETADATA Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
This procedure rebuilds the hierarchical index after import or export operations. This is necessary because data cannot be exported from index tables.
Syntax
DBMS_XDB.REBUILDHIERARCHICALINDEX;
This procedure renames the XDB resource.
Syntax
DBMS_XDB.RENAMERESOURCE( srcpath IN VARCHAR2, destfolder IN CARCHAR2, newname IN VARCHAR2);
Parameters
Table 148-50 RENAMERESOURCE Procedure Parameters
Parameter | Description |
---|---|
srcpath |
Absolute path in the Hierarchy for the source resource destination folder |
destfolder |
Absolute path in the Hierarchy for the destination folder |
newname |
Name of the child in the destination folder |
This procedure sets the ACL on a specified resource to be the ACL specified by path.
Syntax
DBMS_XDB.SETACL( res_path IN VARCHAR2, acl_path IN VARCHAR2);
Parameters
Table 148-51 SETACL Procedure Parameters
Parameter | Description |
---|---|
res_path |
Absolute path in the Hierarchy for resource |
acl_path |
Absolute path in the Hierarchy for ACL |
Usage Notes
The user must have <write-acl>
privileges on the resource.
This procedure replaces the contents of a resource with a specified datatype.
Syntax
Replaces the contents of the a resource with a specified CLOB:
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN CLOB);
Replaces the contents of a resource with a specified BLOB:
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN BLOB, csid IN PLS_INTEGER);
Replaces the contents of a resource with a specified XMLTYPE
:
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN SYS.XMLTYPE);
Replaces the contents of a resource with a specified string:
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN VARCHAR2);
Replaces the contents of a resource with a specified REF
to an XMLTYPE
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN CLOB, sticky IN BOOLEAN := TRUE);
Replaces the contents of a resource with a specified BFILE:
DBMS_XDB.SETCONTENT( abspath IN VARCHAR2, data IN CLOB, csid IN PLS_INTEGER);
Parameters
Table 148-52 SETCONTENT Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path in the Hierarchy for resource |
data |
Input varying with overload:
|
csid |
Character set id of the BLOB or BFILE |
sticky |
Whether or not the REF is sticky |
This procedure sets the FTP port to a new value.
Syntax
DBMS_XDB.SETFTPPORT( new_port IN NUMBER);
Parameters
Table 148-53 SETFTPPORT Procedure Parameters
Parameter | Description |
---|---|
new_port |
Value to which the FTP port will be set |
This procedure sets the HTP port to a new value.
Syntax
DBMS_XDB.SETHTTPPORT( new_port IN NUMBER);
Parameters
Table 148-54 SETHTTPPORT Procedure Parameters
Parameter | Description |
---|---|
new_port |
Value to which the HTTP port will be set |
This procedure sets the parameters of a listener end point corresponding to the XML DB HTTP server. Both HTTP and HTTP2 end points can be set by invoking this procedure.
Syntax
DBMS_XDB.SETLISTENERENDPOINT ( endpoint IN NUMBER, host IN VARCHAR2, port IN NUMBER, protocol IN NUMBER);
Parameters
Table 148-55 SETLISTENERENDPOINT Procedure Parameters
Parameter | Description |
---|---|
endpoint |
End point to be set. Its value can be XDB_ENDPOINT_HTTP or XDB_ENDPOINT_HTTP2 . |
host |
Interface on which the listener end point is to listen. Its value can be 'LOCALHOST ,' NULL , or a hostname. If its value is 'LOCALHOST ' the listener end point is permitted to only listen on the localhost interface. If its value is NULL or hostname, the listener end point is permitted to listen on both localhost and non-localhost interfaces. |
port |
Port on which the listener end point is to listen |
protocol |
Transport protocol that the listener end point is to accept. Its value can be XDB_PROTOCOL_TCP or XDB_PROTOCOL_TCPS |
This procedure restricts all listener end points of the XML DB HTTP server to listen either only on the localhost interface (when l_access
is set to TRUE
) or to listen on both localhost and non-localhost interfaces (when l_access
is set to FALSE
).
Syntax
DBMS_XDB.SETLISTENERLOCALACCESS ( l_access BOOLEAN);
Parameters
Table 148-56 SETLISTENERLOCALACCESS Procedure Parameters
Parameter | Description |
---|---|
l_access . |
TRUE or FALSE . |
This procedure splits the path into a parentpath and childpath.
Syntax
DBMS_XDB.SPLITPATH( abspath IN VARCHAR2, parentpath OUT VARCHAR2, childpath OUT VARCHAR2);
Parameters
Table 148-57 SPLITPATH Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path to be split |
parentpath |
Parentpath |
childpath |
Childpath |
This procedure changes the modification time of the resource to the current time.
Syntax
DBMS_XDB.DBMS_XDB.TOUCHRESOURCE abspath IN VARCHAR2);
Parameters
Table 148-58 DBMS_XDB.TOUCHRESOURCE Procedure Parameters
Parameter | Description |
---|---|
abspath_path |
Absolute path of the resource |
This procedure updates metadata for a resource. The procedure takes in a resource identified by absolute path and the metadata in it to replace identified by its REF
. It replaces that piece of metadata with user-defined metadata which is either in the form of a REF
to XMLTYPE
or an XMLTYPE
.
Syntax
Can be used to update schema-based metadata only. The new metadata must be schema-based:
DBMS_XDB.UPDATERESOURCEMETADATA( abspath IN VARCHAR2, oldmetadata IN REF SYS.XMLTYPE, newmetadata IN REF SYS.XMLTYPE)
Can be used to update schema-based metadata only. The new metadata must be schema-based or nonschema-based:
DBMS_XDB.UPDATERESOURCEMETADATA( abspath IN VARCHAR2, oldmetadata IN REF SYS.XMLTYPE, newmetadata IN XMLTYPE);
Can be used for both schema-based and nonschema-based metadata:
DBMS_XDB.UPDATERESOURCEMETADATA( abspath IN VARCHAR2, oldns IN VARCHAR2, oldname IN VARCHAR, newmetadata IN XMLTYPE);
Can be used for both schema-based or nonschema-based metadata. New metadata must be schema-based:
DBMS_XDB.UPDATERESOURCEMETADATA( abspath IN VARCHAR2, oldns IN VARCHAR2, oldname IN VARCHAR, newmetadata IN REF SYS.XMLTYPE);
Parameters
Table 148-59 UPDATERESOURCEMETADATA Procedure Parameters
Parameter | Description |
---|---|
abspath |
Absolute path of the resource |
oldmetadata |
REF to the old of metadata |
newmetadata |
REF to the new, replacement metadata (can be either schema-based or nonschema-based depending on the overload) |
oldns |
Namespace identifying old metadata |
oldname |
Local name identifying old metadata |
Usage Notes
In the case of REF
, it stores the REF
in the resource and the metadata is stored in a separate table. Uniqueness of REFs
is enforced. In the case where the XMLTYPE
is passed in, data is parsed to determine if it is schema-based or not and is stored accordingly.
This function unlocks the resource given a lock token and a path to the resource.
Syntax
DBMS_XDB.UNLOCKRESOURCE( path IN VARCHAR2, deltoken IN VARCHAR2) RETURN BOOLEAN;
Parameters
Table 148-60 UNLOCKRESOURCE Function Parameters
Parameter | Description |
---|---|
path |
Path name to the resource |
deltoken |
Lock token to be removed |
Return Values
TRUE
if operation successful.
Usage Notes
The user must have UPDATE
privileges on the resource.