|Oracle9i XML Database Developer's Guide - Oracle XML DB
Release 2 (9.2)
Part Number A96620-02
This chapter describes the new features, enhancements, APIs, and product integration added through Oracle XML DB as a part of Oracle9i Release 2 (126.96.36.199) and Oracle9i Release 2 (188.8.131.52).
This section summarizes the Oracle XML DB enhancements provided with patch release, Oracle9i Release 2 (184.108.40.206).
Oracle9i Release 2 (220.127.116.11) provides enhanced IMPORT/EXPORT utility support to assist in loading XML data into Oracle XML DB. See Chapter 23, "Importing and Exporting XMLType Tables".
XMLAgg() now supports the ORDER BY clause. See Chapter 10, "Generating XML Data from the Database", "XMLAgg() Function".
updateXML() section has been reworked to include more comprehensive examples.
Oracle XML DB can handle multibyte characters as long as the client character set is the same as the database character set.
The end of Appendix G, "Example Setup scripts. Oracle XML DB - Supplied XML Schemas" lists the three updated Oracle XML DB - supplied XML schema,
Notes have been adding describing how to migrate from Release 2 (18.104.22.168) to Release 2 (22.214.171.124). See Appendix A, "Installing and Configuring Oracle XML DB".
Further examples and explanation have been added to this section for determining paths under multiple correlations or specified path name arguments. See Chapter 15, "RESOURCE_VIEW and PATH_VIEW", "PATH".
A new tuning parameter,
resource-view-cache-size has been added. When querying large
RESOURCE_VIEWs you can now tune the
resource-view-cache-size parameter in the
xdbconfig file. See Chapter 15, "RESOURCE_VIEW and PATH_VIEW", "Tuning XML DB to Obtain Faster Queries".
default-url-charset has been added. This is the character set in which an HTTP Protocol Server assumes the incoming URL is encoded when it is not encoded in UTF-8 or the request's Content-Type field Charset parameter. See Chapter 19, "Using FTP, HTTP, and WebDAV Protocols", Table 19-3.
DBMS_XMLDOM methods are now supported for the PL/SQL DOM API for XMLType. See Chapter 8, "PL/SQL API for XMLType". Note that there are a few methods that have been de-supported in this release.
A few methods in XDBDocument, XDBNode, and XDBDOMImplementation classes have been de-supported in this release. See Chapter 9, "Java API for XMLType".
You can now highlight XML documents in Oracle Text with the
INPATH/HASPATH query element(s) highlighted and using
HIGHLIGHT procedures. See Chapter 7, "Searching XML Data with Oracle Text", "Highlight Support for INPATH/HASPATH Text Operators".
XMLType datatype was first introduced in Oracle9i. This datatype has been significantly enhanced in Oracle9i Release 2 (126.96.36.199). This release is also referred to, in general, as Release 2 (9.2). The following sections describe these enhancements.
XMLType can now be used to create tables of
XMLType. This gives you the flexibility to store XML either in a column, in a table, or as a whole table, much like objects.
XMLType constructors have been added. Besides the
XMLType can now also be constructed using user-defined constructors.
Extensive XML schema support has been added in this release to Oracle XML DB. You can now perform the following:
XMLTypeobject based on an XML schema and have it be continuously validated.
XMLTypetables. This feature automatically creates appropriate storage structures for optimal storage of XML schema-based documents. Unlike SQL DDL, this process does not require knowledge of all column data types and their definitions.
DBMS_XMLSCHEMApackage, to share storage and type definitions. Registered XML schema can be shared across all database users to allow for instance wide common document definition. The registration process optionally creates default tables. With XML schema annotation you can specify various objects such as, SQL types, default storage tables, and so on.
This release includes support for SQLX operations for generating XML from existing relational and object relational tables. This is based on ISO-ANSI Working Draft for XML-Related Specifications (SQL/XML) [ISO/IEC 9075 Part 14 and ANSI] which defines ways in which the database language SQL can be used in conjunction with XML.
For example, the following functions defined by the SQLX standards body are supported: XMLElement(), XMLForest(), XMLConcat(), and XMLAgg(). Oracle XML DB also extends the SQLX operations with functions such as: XMLColAttVal(),
Oracle9i Release 1 (9.0.1) provided the
existsNode() functions on
XMLType objects. These allowed XPath-based queries against XML documents. This release provides additional support as follows:
ToObject method allows the caller to convert an
XMLType object to a PL/SQL object type.
This release supports
XMLType-based views. These enable you to view any data in the database as XML.
XMLType views can be XML schema-based or non-XML schema-based. See Chapter 11, "XMLType Views".
This release introduces a new function,
XMLTransform() that allows for a database-based transformation of in-memory or on disk XML documents. See Chapter 6, "Transforming and Validating XMLType Data".
Oracle XML DB allows database clients to bind and define
XMLType. JDBC support includes a function-rich
XMLType class that allows for native (for thick JDBC) XML functionality support. See Chapter 9, "Java API for XMLType".
This release includes native PL/SQL DOM, Parser, and XSLT APIs integrated in the database code. These PL/SQL APIs are compatible with the Java-based PLSQL APIs shipped as part of XDK for PL/SQL with Oracle9i Release 1 (9.0.1) and higher. See Chapter 8, "PL/SQL API for XMLType".
In this release, Oracle XML DB Repository adds advanced foldering and security mechanisms to the database. Oracle XML DB Repository is a new feature that provides a novel file system-like access to all database data. The Repository allows the following actions:
DBMS_XDB package provides methods to access and manipulate Oracle XML DB resources. Chapter 16, "Oracle XML DB Resource API for PL/SQL (DBMS_XDB)".
This uses JNDI (Java Naming and Directory Interface) to locate resources, and manage collections. It supports JNDI Service Provider Interface (SPI). This interface works only inside the database server on the JServer platform. See Chapter 17, "Oracle XML DB Resource API for Java".
ResourceView is a public
XMLType view that you can use to perform path name-based queries against all resources in a database instance. This view merges path-based queries with queries against relational and object-relational tables and views. See Chapter 15, "RESOURCE_VIEW and PATH_VIEW".
In Release 2 (188.8.131.52) the
XDBconfig file includes a tuning parameter, resource-view-cache-size to allow faster queries. See the end of Chapter 15, "RESOURCE_VIEW and PATH_VIEW".
DBMS_XDB_VERSION package provides methods to version Oracle XML DB resources. See Chapter 14, "Oracle XML DB Versioning".
Methods that implement ACL-based security are a part of
DBMS_XDB package. They allow you to create high-performance access control lists for any XMLType object. See Chapter 18, "Oracle XML DB Resource Security".
The Protocol Servers provide access to any foldered XMLType row through FTP, HTTP, and WebDAV. Note that XMLType can manage arbitrary binary data as well in any file format. See Chapter 19, "Using FTP, HTTP, and WebDAV Protocols".
URIType now includes a new subtype,
XDBURIType, that represents a path name within Oracle XML DB. See Chapter 12, "Creating and Accessing Data Through URLs".
Oracle Enterprise Manager provides a graphical interface to manage, administer, and configure Oracle XML DB. See Chapter 21, "Managing Oracle XML DB Using Oracle Enterprise Manager".
This release offers the following Oracle Text enhancements:
XMLTypecan now be indexed natively in Oracle9i database using Oracle Text.
CONTAINS()is a new function for use as
ora:containsin an XPath query and as part of the
CTXXPATHis a new index type for use with
existsNode()to speedup the performance of XPath searching.
With this release, the Advanced Queueing (AQ) Internet Data Access Presentation (IDAP) has been enhanced. IDAP facilitates your using AQ over the Internet. You can now use AQ XML servlet to access Oracle9i AQ using HTTP and SOAP.
Also in this release, IDAP is the Simple Object Access Protocol (SOAP) implementation for AQ operations. IDAP now defines the XML message structure used in the body of the SOAP request.
You can now use
XMLType as the AQ payload type instead of having to embed
XMLType as an attribute in an Oracle object type.
XSQL Servlet and XML SQL Utility (XSU) for Java now support
XMLType. Most methods on
XMLType object, such as,
getClobVal(), are now available in XSU for Java.
XML SQL Utility (XSU) for PLSQL now supports