Oracle8i Application Developer's Guide - XML Release 3 (8.1.7) Part Number A86030-01 |
Library | Service | Contents | Index

Introduction to Oracle XML, 10 of 27

## Oracle8i: Extensible Architecture

Normally, the database provides a set of services - for example, a basic storage service, a query processing service, services for indexing, query optimization, and so on.

#### Extensible Services

In Oracle8i, these services are made extensible so that data cartridges can provide their own implementations. When some aspect of a native service provided by the database is not adequate for a specific domain, a developer can build a domain-specific implementation.

For example, if you build a Spatial data cartridge for Geographical Information Systems, you may need the capability to create spatial indexes. To do this, you would implement routines that create a spatial index, insert an entry into the index, update the index, delete from it, and so on. The server would then automatically invoke your implementation every time indexing functionality was needed for spatial data. In effect, you would have extended the Indexing Service of the server to handle spatial data.

#### Extensibility and XML

Extensibility enables special indexing on XML (including Text indexes for section searching), special operators to process XML, aggregation of XML, and special optimization of queries involving XML.

#### interMedia Text Searching

An example of the extensibility infrastructure is interMedia Text searching. The text kept in LOBs is indexed using the extensibility indexing interface. interMedia text provides operators such as CONTAINS which you can use to search within the text for substring matches.

The Oracle8i extensibility framework provides the infrastructure for specialized XML cartridges to be built, where indexing and optimization access to XML is accomplished by the cartridge.

### Oracle8i Supports Native Java

Oracle8i provides native support for Java in the DBMS, by providing a native Java VM that is closely integrated with the database for high performance and scalability. In addition, the database system natively supports JDBC, SQLJ, an ORB and the EJB framework. In addition, Oracle8i also comes with a HTTP listener, which means that it can act as a web server as well.

The object-relational framework provides a more natural way to maintain a consistent structure between a set of Java classes at the application level and the data model at the data storage level. In Oracle8i, the object-relational facilities have been tightly integrated with the Java environment in the following ways:

- Server object-relational schema can be mapped to java classes. The JPublisher utility can generate this mapping automatically.

- Java is one of the language choices for implementing object type methods and data cartridges.

- Objects can be manipulated (stored and retrieved) using JDBC or SQLJ.

Support for Java within the database is vital, since a lot of the XML infrastructure, such as parsers etc. are available in Java and can be readily used inside the server. Also, the components for XML built in Java can be run inside the server or outside in the application tier.

| Copyright © 1996-2000, Oracle Corporation. All Rights Reserved. |
Library | Service | Contents | Index