1. Trang chủ
  2. » Công Nghệ Thông Tin

xml and oracle an overview

35 307 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 35
Dung lượng 269 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

What Is XML?• A standard for representing structured data in human-readable text form • Any type of data can be represented in XML • Syntax uses open and close tags similar to... What Ca

Trang 1

XML and Oracle: An Overview

Roger Schrag Database Specialists, Inc.

www.dbspecialists.com

Trang 2

XML and Oracle: An Overview

• XML Basics

• XML’s Potential

• Support for XML in Oracle Products

Trang 3

What Is XML?

• A standard for representing structured data in human-readable text form

• Any type of data can be represented in XML

• Syntax uses open and close tags similar to

Trang 4

XML Basics

• XML Documents

• Document Type Definitions

• Document Object Model

• Simple API for XML

• Transformations

Trang 5

XML Documents

An XML document is one logical unit of data

marked up in XML, such as a purchase order or a

stock quote.

An XML datagram is a packet of data containing an XML document that is being transported between

systems

An XML document is said to be well formed if it

adheres to all of the syntax rules of XML

Trang 6

A Sample XML Document

<?xml version="1.0"?>

<!DOCTYPE drink-recipe SYSTEM "drink-recipe.dtd">

<drink-recipe name="Fuzzy Navel">

<ingredients>

<ingredient quantity="1" unit="ounce">

Vodka </ingredient>

<ingredient quantity="1" unit="ounce">

Peach schnapps </ingredient>

<ingredient quantity="4" unit="ounce">

Orange juice </ingredient>

Trang 7

Document Type Definition

(DTD)

• What tags are allowed

• What attributes are allowed within each tag

• Which elements are required and which are optional

• Which tags may be nested inside of other tags

A roadmap for how to interpret a specific type of XML document:

Trang 8

A Sample DTD

<!ELEMENT drink-recipe (ingredients, preparation)>

<!ATTLIST drink-recipe name CDATA #IMPLIED>

<!ELEMENT ingredients (ingredient+)>

<!ELEMENT ingredient (#PCDATA)>

<!ATTLIST ingredient quantity CDATA #IMPLIED unit CDATA #IMPLIED> <!ELEMENT preparation (step+)>

<!ELEMENT step (#PCDATA)>

Trang 9

What Can You Do With An XML Document?

Anything you can do with a plain text file:

• Edit it with vi or Notepad

• Move it between servers with FTP or HTTP

• Store it in a VARCHAR2 or CLOB column in your Oracle database

Trang 10

What Else Can You Do

With An XML Document?

• Store it in a SYS.xmltype column in your

Oracle 9i database

• View it with a web browser (IE 5 or Netscape 6)

• View and edit it with JDeveloper

Validate it against a DTD

Trang 11

Document Object Model

(DOM)

• Uses a tree structure known as a document’s infoset

• Extract the infoset from an XML document

• Query the infoset using a search API called XPath

• Make changes to the infoset

• Write the infoset back to an XML document

An API for querying and updating XML

documents

A “tree-based” API

Trang 12

Simple API for XML (SAX)

• Documents are represented as a linear sequence of

parse events

• Events occur at the start and end of elements and text

• Application provides custom event-handlers

• Application code gets executed at specified events

in document

An API for scanning XML documents

An “event-based” API

Trang 13

XML Stylesheet Language for

Transformation (XSLT)

A process for transforming XML documents:

• From one DTD to another

• Between XML and other formats such as

HTML or proprietary flat file formats

An XML document using the XSLT

Trang 14

XML’s Potential

Why all the excitement over XML?

• Strict yet extensible standards

• XML + HTTP

Trang 15

World Wide Web Consortium

recommendations set forth in 1998:

Trang 16

Standards Both Strict and Extensible

Trang 17

The Synergy Between

XML and HTTP

• HTTP is now commonplace for moving content between systems without concern for vendor or platform of sender or recipient.

• Since XML documents are plain text, they can

easily be transported via HTTP.

• While HTTP and HTML make it easy to transport simple content, HTTP and XML together make it easy to transport data of any structure and

complexity.

Trang 18

The Value of XML:

The Bottom Line

• Vendor and platform independence in the XML standard enables data transfer between disparate systems.

• DTDs and XSLT facilitate converting published data

from one format to any other.

• XML allows you to decouple the data from the

presentation.

XML enables you to publish your complex data in the

same way that HTML enables you to publish presentation content.

Trang 21

XDK Availability and Compatibility

• Installs automatically with Oracle 9i and Oracle 8i Release 3 (8.1.7) databases

• Available for Oracle 8i Release 1 and 2 from the

• Not available for Oracle7 or Oracle8

Oracle’s XDK is evolving rapidly Check OTN

periodically to see if a newer version of the XDK is

available for download.

Trang 22

XDK Supported Languages

Oracle’s XDK XML-enables applications written in:

Install a separate XDK for each language

Trang 23

XDK Fun Facts

• Java applications can run inside or outside

the database.

• You must install Oracle’s JVM in the

database in order to run PL/SQL applications that use Oracle’s XDK.

• Some XDK features (such as SAX support and XSQL pages) are only available in the XDK for Java.

Trang 24

Features Based

on XML Standards

XML Parser, DOM, SAX, XSLT Processor

• Multitude of Java classes.

• PL/SQL packages such as xmlparser and

xmldom These are really PL/SQL wrappers

encapsulating Java code.

• Command line utilities such as oraxml and

oraxsl These are really shell script wrappers

encapsulating Java code.

Trang 25

XSQL Pages (Java XDK only)

A facility for quickly publishing data in XML

• Prepare an XML document encapsulating a SQL query using the XSQL DTD.

• Call a URL or enter a command at operating system prompt to

invoke the XSQL page processor.

• Pass in criteria for the query in the URL or as command-line

arguments.

• An XML document is created based on the query results.

• An XSLT can be applied to the query results to transform the output

to HTML, a different DTD, or any format desired.

Trang 26

Components of the XSQL Pages Framework

• Java servlet that runs under Apache (Oracle

9iAS, Oracle 9i database, or Oracle 8i Release 3 database)

• Command-line program called xsql

• XSQL page processor that gets called by either

of the above

Trang 27

Sample XSQL Page Output

Trang 28

XML SQL Utility

• Invoke an XSLT to transform data from any format into a

<ROWSET><ROW> style XML document.

• Convert the <ROWSET><ROW> document into a SQL

INSERT statement and load the data into a table.

• Capabilities exist for updating and deleting data as well.

• Extract data from the database into a document of any

format by reversing the process.

A facility for loading XML documents into the database and retrieving data from the database into XML documents,

without storing the XML text in one large CLOB column

Trang 29

Oracle 9i SYS.xmltype Datatype

• Oracle creates a hidden CLOB column in the table and

stores the XML document there.

• You access the XML document in ordinary SQL

statements using built-in member functions of the

SYS.xmltype datatype such as createXML, extract, or

Trang 30

Oracle Text (interMedia)

• An Oracle facility for searching text documents stored in CLOBs, BFILEs, or referenced by URLs.

• Adds new SQL functions CONTAINS and SCORE.

• Includes support for many document types, and linguistic capabilities such as stemming and fuzzy matching.

• Text indexes can be created in Oracle 9i on SYS.xmltype columns in order to index XML documents for intelligent, XML-aware searching New SQL functions such as

HASPATH and INPATH become available.

Trang 32

(search for “PLSXML”)

• A very simplistic script that demonstrates

converting table data to XML documents, but probably has little value beyond a

Trang 33

Wrapping Up

• XML is a platform independent, vendor

independent method for transporting structured data

• XML is defined by rigid yet extensible

standards

• Oracle has shown a huge commitment to XML support in the Oracle 8i and Oracle 9i database

Trang 34

Further Reading

• “Building Oracle XML Applications” from O’Reilly by Steve Muench

• “Oracle 9i Application Developer's Guide – XML” in the Oracle 9i server documentation set

• http://www.xml.com (Collection of articles and information about

XML, co-founded by Tim Bray, one of the editors of the XML 1.0 standard)

Trang 35

Contact Information

Roger Schrag

rschrag@dbspecialists.com

http://www.dbspecialists.com

Database Specialists, Inc

388 Market Street, Suite 400

San Francisco, CA 94111

415-344-0500

Ngày đăng: 23/10/2014, 17:17