この章の内容は次のとおりです。
Oracle XML Developer's Kit(XDK)は、コンポーネント、ツールおよびユーティリティのセットです。これらを使用することで、XML対応アプリケーションの構築およびデプロイのタスクが容易になります。
XDKのリリース・ノートについては、/xdk/doc/readme.html
を参照してください。
表1-1に、XDKコンポーネントがサポートする標準の概要を示します。
表1-1 XDKコンポーネントがサポートする標準
標準 | Java | C | C++ |
---|---|---|---|
XML 1.0(Second Edition) |
フル |
フル |
フル |
フル |
フル |
フル |
|
XSLT内のみ |
サポート対象外 |
サポート対象外 |
|
XML Schema 1.0 |
フル |
フル |
フル |
DOM 1.0 |
フル |
フル |
フル |
DOM 2.0 Core |
フル |
フル |
フル |
DOM 2.0 Events |
フル |
フル |
フル |
DOM 2.0 Transversal and Range |
フル |
フル |
フル |
DOM 3.0 Load and Save(草案) |
一部サポート |
サポート対象外 |
サポート対象外 |
DOM 3.0 Validation(草案) |
フル |
サポート対象外 |
サポート対象外 |
SAX 1.0 |
フル |
フル |
フル |
SAX 2.0 Core |
フル |
フル |
フル |
SAX 2.0 Extension |
フル |
フル |
フル |
XSLT 1.0 |
フル |
フル |
フル |
下位互換性を保持するXSLT 2.0 |
一部サポート |
サポート対象外 |
サポート対象外 |
XPath 1.0 |
フル |
フル |
フル |
下位互換性を保持するXPath 2.0(草案) |
一部サポート |
サポート対象外 |
サポート対象外 |
XML Pipeline 1.0(ノート) |
一部サポート |
サポート対象外 |
サポート対象外 |
JAXP 1.1(JSR標準) |
フル |
N/A |
N/A |
JAXP 1.2(JSR標準) |
フル |
N/A |
N/A |
JAXB 1.0(JSR標準) |
一部サポート |
N/A |
N/A |
Class Generator(Oracle登録商標) |
N/A |
N/A |
フル |
オラクル社は、次のW3Cワーキング・グループに積極的に参加しています。
XML Core
XML Schema
XML Query
XSL/XPath
XLink/XPointer
XML Namespaces
DOM
SAX
オラクル社は、次のJSR標準に積極的に参加しています。
JAXB
JAXP
XDKはフル・サポート対象であり、商用再配布ライセンスを受けています。多様なデプロイ・オプションを提供するために、XDKコンポーネントはJava、CおよびC++に使用できます。表1-2に、Oracle XDKコンポーネントを示します。
表1-2 Oracle XDKコンポーネントの概要
XDKコンポーネント | 説明 | サポート対象言語 | 関連項目 |
---|---|---|---|
XML Parser |
Java、C、C++ |
|
|
XSLT Processor |
XMLを、HTMLなどの他のテキストベースの形式に変換またはレンダリングします。 |
Java、C、C++ |
|
|
コンパイルされたスタイルシートをサポートする、高パフォーマンスのXSLT変換エンジン。 |
CおよびC++ |
|
XML Schema Processor |
スキーマを検証します。単純および複雑なXMLデータ型を使用可能にします。 |
Java、C、C++ |
第5章「XML Schema Processor for Java」 第16章「XML Schema Processor for C」 第21章「XML Schema Processor for C++」 |
|
Javaアプリケーションから、SAX、DOMおよびXSLTプロセッサ(または代替プロセッサ)を使用する機能を提供します。 |
Java |
|
JAXB Class Generator |
XML Schemaに基づくJavaクラスを作成します。XML Class Generator for Javaを置き換えます。 |
Java |
|
XML Class Generator |
DTDおよびXML SchemaからC++クラスを自動生成して、WebフォームまたはアプリケーションからXMLデータを送信します。 |
C++ |
第23章「XML Class Generator for C++」 |
SQL問合せからXML文書、DTDおよびスキーマを生成し、SQL問合せの結果をXMLに(またはその逆に)マップします。 |
JavaおよびPL/SQL |
|
|
XSQLサーブレット |
サーバー内のXML、SQLおよびXSLTを組み合せて、動的Webコンテンツを配信します。 |
Java |
第8章「XSQL Pagesパブリッシング・フレームワーク」 |
XML |
Java |
第9章「Pipeline Definition Language for Java」 |
|
XML JavaBeans: |
統合開発環境(IDE)、Java Server Pages(JSP)およびアプレットの使用を簡単にする、XDKコンポーネントをBeanでカプセル化したもののセットです。 |
Java |
|
Oracle SOAPサーバー |
Simple Object Access Protocol(SOAP)は、リクエストおよびレスポンスをインターネット経由で送受信するための軽量プロトコルです。 |
Java |
|
|
XMLを使用して、変換されたシード・データおよびメッセージをデータベースにロードします。 |
Java |
|
XML Compressor |
XML文書をバイナリで圧縮および解凍します。 |
Java |
|
XMLテクノロジを使用するには、XMLの解析、DTDまたはXML Schemaに対する妥当性の検証、スタイルシートを適用したXMLの変換、およびSQL文によってデータベースから選択したデータに基づくXML文書の生成を行うツールに精通している必要があります。コンポーネントの相互参照については、表1-2「Oracle XDKコンポーネントの概要」の「関連項目」列を参照してください。XML CompressorはJavaのみをサポートしています。図1-1に、XDKの概要を簡単に示します。
XMLパーサーは、XML文書を読み取ります。XML文書のツリー状の表現をナビゲートするにはDOM APIを使用し、メモリーの消費を少なくするにはSimple API for XML(SAX)イベントベース・インタフェースを使用します。XML Parser for JavaはJAXPをサポートします。JAXPを使用すると、XMLプロセッサの実装に関係なくDOM、SAXおよびXSLTを使用してXML文書を処理できます。XML Compressorもパーサーに統合されています。XML Compressorにより、XMLメッセージ・ペイロードのサイズが縮小されます。
図1-2に、Oracle XML Parserの機能を示します。
Oracle XSLTエンジンは、XSL TransformationsのW3C勧告をフル・サポートしています。Oracle XSLTエンジンの機能は次のとおりです。
すべてのオペレーティング・システム上で、データベース内外のXML情報に対して、業界標準に準拠した変換を行います。
Oracle XML Parserには、XSLスタイルシートを使用してXMLデータを変換するためのXSL Transformation(XSLT)プロセッサが統合されています。XSLTプロセッサを使用すると、XML文書をXMLやHTMLなど、実質的にすべてのテキストベース形式の文書に変換できます。
JAXB Class Generatorは、入力XML Schemaに対応するXML文書を作成するJavaクラスのセットを作成します。JAXBではDTDがサポートされません。これらのクラスはJavaアプリケーションで使用されます。C++ Class Generatorは、入力DTDまたはXML Schemaに対応するXML文書を作成するC++クラスのセットを作成します。これらのクラスはC++アプリケーションで使用されます。
JAXB Class Generatorはデータ・バインディングをサポートします。XMLインスタンス・ドキュメントを入力して、実行時にDTDから生成されたクラスにインスタンス・データを直接ロードできます。これにより、DOM APIと比較して、メモリーの使用量およびパフォーマンスが改善されます。
XML Schemaは、XML文書のコンテンツおよび構造をXMLで記述するためにW3Cで作成された言語で、DTDが改善されたものです。XML Schema Processorは、XMLにデータ型の概念を導入しています。これにより、XML構文を使用してデータベース間でデータを交換できます。
Oracle XDK JavaBeansはビジュアルなBeanと非ビジュアルなBeanのセットであり、XML対応の様々なJavaアプリケーションまたはアプレットの作成に有用です。XDK JavaBeansは次のBeanによって構成されています。
XML SQL Utilityは、次の機能を備えた主なJavaクラス・ライブラリで構成されます。
任意のSQL問合せの結果を自動的かつ動的に正規のXMLにレンダリングします。
XMLType
を含む豊富な構造のユーザー定義オブジェクト型およびオブジェクト・ビューでの問合せをサポートします。
XML SQL UtilityのJavaクラスは、次のタスクに使用できます。
XML文書のデータを既存のデータベース・スキーマまたはビューにロードします。
正規の構造を持つXMLを、既存の表、ビュー、オブジェクト表またはオブジェクト・ビューに自動的に挿入します。XSLT変換と組み合せることで、実質的にすべてのXML文書をデータベースに自動的に挿入できます。
注意: XSU for PL/SQLも使用できます。Oracle XML SQL Utility(XSU)for Javaにこれらの機能があります。 |
図1-4に、XML文書からデータベース・スキーマまたはビューにデータをロードするOracle XML SQL Utilityの機能を示します。
XSQL Pagesパブリッシング・フレームワーク(XSQLサーブレット)はサーバー・コンポーネントであり、データ・オブジェクトに対する1つ以上のSQL問合せから動的XML文書を生成します。これを行うには、特定の構造と文法を持つXMLファイルであるXSQLファイルを処理します。XSQLサーブレットはOracle XML Parserを使用してXSQLファイルを処理し、XSLT処理文を内部XSLTプロセッサに渡す一方で、タグ間のパラメータおよびSQL文をXML SQL Utilityに渡します。その後、この問合せの結果を、XML形式のテキスト、またはJDBC ResultSet
オブジェクトとして受け取ります。必要に応じて、組込みのXSLTプロセッサを使用して、問合せの結果を必要な形式にさらに変換することもできます。
XML文書の生成には、各言語コンポーネントが使用されます。
XSUは任意のSQL問合せの結果を正規のXMLにレンダリングできます。
結果のXML文書の構造には、次の属性があります。
列は、最上位の要素にマップします。
スカラー値は、内容がテキストのみの要素にマップします。
オブジェクト型は要素にマップされ、オブジェクト型の属性はサブ要素を構成します。
コレクション型は、要素のリストにマップします。
XML SQL Utility(XSU)はSAXイベント・ストリームをサポートします。また、次のいずれかの方法でXML文書を生成します。
XML文書の文字列表現。XML文書をリクエスタに戻す場合、この表現を使用してください。
メモリー内の要素のXML DOMツリー。プログラムでXMLを操作する場合、この表現を使用してください。たとえば、なんらかの方法でDOMメソッドによってXMLを検索または変更するXSLTプロセッサを使用してXMLを変換する場合などです。
一連のSAXイベント。XML(特にサイズの大きな文書や結果セット)を取得する場合に使用できます。
XML SQL Utility(XSU)を使用すると、問合せ対象の基礎となる表またはビューのスキーマに基づいて、DTDまたはXML Schemaを生成できます。生成されたDTDを、JAXB Class Generator for JavaまたはC++ Class Generator用の入力として使用できます。これで、DTD要素に基づくクラスのセットが生成されます。その後、これらのクラスを使用するコードを作成し、Webベースのフォームのインフラストラクチャを生成します。
このインフラストラクチャに基づいて、Webフォームではユーザー・データが取得され、データベース・スキーマと互換性のあるXML文書が作成されます。このデータは、追加の処理を行わずに、対応するデータベース表またはオブジェクト・ビューに直接書き込むことができます。
注意: XMLデータが基礎となる表構造と一致していないデータベース表にXML文書を書き込む場合、書込みの前にXML文書を変換します。この方法については、第7章「XML SQL Utility(XSU)」を参照してください。 |
図1-6に、Oracle XDK Javaコンポーネントと、コンポーネントを使用したXML文書の生成方法を示します。表1-2「Oracle XDKコンポーネントの概要」に、XDK Javaコンポーネントの相互参照を示します。
Java環境では、SQL問合せを送信する場合、Oracle XDKコンポーネントを使用した次の方法で問合せを処理できます。
XSQLサーブレットによる処理(XSUとXML Parser for Javaの使用を含む)
XSUによる直接処理(XML Parser for Javaの使用を含む)
XML ParserにアクセスするJDBCによる直接処理
格納されたXMLデータがどのようにデータベースから生成されたかにかかわらず、XML Parser for Javaから出力された結果のXML文書は追加処理されます。つまり、スタイルシートを適用してフォーマットおよびカスタマイズされ、XSLTによって処理されます。
図1-7に、XML文書の生成に使用するOracle XDK C言語コンポーネントを示します。表1-2「Oracle XDKコンポーネントの概要」に、使用可能なXDK Cコンポーネントを示します。
Oracle Call Interface(OCI)またはPro*C/C++プリコンパイラによって、SQL問合せをデータベースに送信できます。
次の方法で結果のXMLデータを処理できます。
XMLパーサーによる処理
XML文書としてCLOBからの処理
このXMLデータは、オプションでXSLTプロセッサによって変換されるか、XML対応ブラウザで直接表示されます。あるいは、追加処理するためにアプリケーションに送信されます。
図1-8に、XML文書の生成に使用するOracle XDK C++コンポーネントを示します。表1-2「Oracle XDKコンポーネントの概要」に、使用可能なXDK C++コンポーネントを示します。
C++環境では、ユーザー、クライアントまたはアプリケーションからSQL問合せを送信する場合、XDK C++コンポーネントを使用した次の2つの方法で問合せを処理できます。
XMLパーサーにアクセスするJDBCによる直接処理
Oracle C++ Call Interface(OCCI)またはPro*C/C++プリコンパイラを介した処理
図1-9に、Oracle XMLコンポーネントによるE-Businessソリューションの開発の概要を示します。
顧客または従業員であるユーザーが、Java、CまたはC++アプリケーションのいずれかを介してOracleデータベースにSQL問合せを送信します。これらのアプリケーションと、XSQL Pagesパブリッシング・フレームワークやJDeveloperなどの開発ツールは、データベースのデータをXML文書に変換します。これらのXML文書は、この図に示すように、他のユーザーとのデータ交換、コンテンツやデータの管理およびその他の用途のためにXMLベースのビジネス・ソリューションに入力されます。
この項のトピックは次のとおりです。
次のブラウザはXMLの表示をサポートしています。
Opera。XML、バージョン4.0以上。
Citec Doczilla。XMLおよびSGMLブラウザ。
Indelv。XSLを使用する場合にのみXML文書を表示します。
Mozilla Gecko。XML、CSS1およびDOM1をサポートします。
HP ChaiFarer。XMLおよびCSS1をサポートする埋込み環境。
ICESoft埋込みブラウザ。XML、DOM1、CSS1およびMathMLをサポートします。
Microsoft IE5。完全なXMLパーサーを搭載します。IE5.x以上。
Netscape 5.x以上。
XML Gatewayの一連のサービスによって、Oracle E-Business Suiteとの統合が容易になり、ビジネス・イベントがトリガーするXMLメッセージを作成および使用できます。XML Gatewayは、Oracle Streams Advanced Queuingと統合し、メッセージをエンキューおよびデキューします。このメッセージは、任意のメッセージ転送エージェントを介して、ビジネス・パートナとの間で送受信されます。
関連資料:
|
Oracle Data Provider for .NET(ODP.NET
)は、Oracle Database用のデータ・プロバイダを実装しています。
ODP.NET
はOracleにネイティブのAPIを使用して、すべての.NETアプリケーションからOracleのデータと機能に高速かつ確実にアクセスできるようにします。ODP.NET
は、Microsoft .NET Frameworkクラス・ライブラリで使用できるクラスとインタフェースも使用および継承します。
ODP.NET
では、リレーショナル表およびオブジェクト・リレーショナル表からデータを抽出でき、Oracle XDKを使用してXML文書として表示します。データベース・サーバーへの挿入、更新および削除操作にXML文書を使用することもできます。
ODP.NET
は、XML Database(Oracle XML DB)を介してデータベース内にネイティブのXMLをサポートします。
ODP.NET
は、次の機能を使用してXMLをサポートします。
OracleにネイティブのタイプXMLType
として、データベース・サーバーにネイティブのXMLデータを格納します。
Oracleデータベース・インスタンスからMicrosoft .NET
環境へのXMLデータとして、リレーショナル・データおよびオブジェクト・リレーショナル・データにアクセスし、Microsoft .NETフレームワークを使用してXMLを処理します。
XMLデータを使用して、変更をデータベース・サーバーに保存します。
.NETアプリケーション開発者の場合、次の機能が含まれます。
OracleCommand
、OracleConnection
およびOracleDataReader
クラスへの拡張機能
XML固有のクラス:
OracleXmlType
OracleXmlStream
OracleXmlQueryProperties
OracleXmlSaveProperties
関連資料: 『Oracle Data Provider for .NET開発者ガイド』 |
Oracle JDeveloperは、E-Businessアプリケーションの開発、デバッグおよびデプロイをエンドツーエンドでサポートするJ2EE開発環境です。JDeveloperは、業界最高速のJavaデバッガ、新しいプロファイラ、およびコードのパフォーマンスを分析および改善する画期的なCodeCoachなどの生産性の高いツールを使用して、より効率低に作業できます。
生産性がさらに向上するように、JDeveloperでは、ソース・コードの制御、モデリングおよびコーディングからデバッグ、テスト、プロファイリングおよびデプロイまでの一連の開発ライフ・サイクルをサポートする、一貫した統合ツールのセットを提供します。JDeveloperを使用すると、ウィザード、エディタ、ビジュアル設計ツール、およびアプレット、JavaBeans、Java Server Pages(JSP)、サーブレット、Enterprise JavaBeans(EJB)などの高品質な標準J2EEコンポーネントを作成するデプロイ・ツールが提供されるため、J2EEの開発が容易になります。JDeveloperは、開発環境を拡張およびカスタマイズし、外部製品とシームレスに統合するためのパブリックなAPIも提供します。
JDeveloperに統合されたOracle XDKには、XMLを作成、処理および変換する多くの方法があります。たとえば、開発者はXSQLサーブレットを使用して、データベースの情報に対して問合せや操作を行い、XML文書を生成し、XSLTスタイルシートを使用して文書を変換し、Web上で使用できます。
JDeveloperには、XMLスキーマやXSLTスタイルシートなどのXML Schemaに基づく文書に使用できる、統合されたXMLスキーマ駆動のコード・エディタが搭載され、Tag Insight機能を使用すると、スキーマで定義されたとおりに、正しい要素や属性を簡単に入力できます。
XML文書の構造を定義するXML Schema Definitionが、XMLの検証や開発者による型付けの際にエディタで使用されます。この機能はCode Insight機能と呼ばれ、文書内のXML要素や属性に対して妥当な代替の要素や属性のリストを提供します。エディタでは、特定の言語に対してスキーマを指定するのみで、指定したマークアップ言語のドキュメントを効率的に作成できます。
Oracle JDeveloperによって、Javaアプリケーション・コードと、XMLデータおよびXML文書の同時使用が簡単になります。Oracle JDeveloperでは、XML開発モジュールをドラッグ・アンド・ドロップで使用できます。内容は次のとおりです。
XMLのカラー化された構文ハイライト表示。
XMLおよびExtensible Style Sheet Language(XSL)用の組込み構文確認。
XSQLページとサーブレットのサポート。開発者は、Oracle XSQL Pages(データベースに問合せを行い、フォーマットされたXMLを戻すJavaプログラム)を編集およびデバッグしたり、またはコードを記述せずにXMLをデータベースに挿入できます。統合されたサーブレット・エンジンでは、使用するプログラム・ソースと同じ環境でJavaコードによって生成されたXML出力を表示でき、迅速で反復可能な開発とテストが容易になります。
Oracle XML Parser for Java。
XSLT Processor。
XDK for JavaBeansの関連コンポーネント。
XSQL Page Wizard。
XSQLアクション・ハンドラ。
スキーマ駆動XMLエディタ。
UIX(User Interface XML)は、Webアプリケーションを構築するためのフレームワークを構成するテクノロジのセットです。UIXは、主にアプリケーションのユーザー・プレゼンテーション・レイヤーを対象としたテクノロジですが、イベントおよびアプリケーション・フローの状態を管理するための追加機能もあります。UIXは、統合開発環境(IDE)などの高度な対話を必要とするフル機能のアプリケーションではなく、ページ・ベースのナビゲーションが行われるオンライン人事管理アプリケーションなどを作成するように設計されています。
関連資料: UIX用のJDeveloperデモンストレーション・コードのサンプルについては、次の関連資料を参照してください。
|
XMLのFAQについては次のサイトも参照してください。
次に、XMLに関する書籍やWebサイトを示します。URLは変更になることが多いため、紹介するURLの一部のリンクはアクティブではない場合があります。
WROX出版社からは多くの有用な書籍が出版されています。そのうちの1冊がXML、XSLおよび開発について説明する『XML Design and Implementation』(Paul Spencer著)です。
『Building Oracle XML Applications』(Steve Muench著、O'Reilly出版)http://www.oreilly.com/catalog/orxmlapp/
を参照してください。
『XML Bible』。http://www.ibiblio.org/xml/books/biblegold/
を参照してください。
『Oracle9i XML Handbook』(Oracle XML Product Development Team著)http://www.osborne.com/oracle/
『XML, Java, and the Future of the Web』(Jon Bosak著、Sun社)http://metalab.unc.edu/pub/sun-info/standards/xml/why/xml apps.htm
『XML for the Absolute Beginner』(Mark Johnson著、JavaWorld)http://www.javaworld.com/jw-04-1999/jw-04-xml_p.html
『XML And Databases』(Ronald Bourret著、ダルムシュタット工科大学)http://www.informatik.tu-darmstadt.de/DVS1/staff/bourret/ XML/
XMLAndDatabases.htm
およびXML仕様(World Wide Web Consortium: W3C)http://www.w3.org/XML/
XML.com
(XMLリソースおよびコメントの広範囲なコレクション)http://www.xml.com/
『Annotated XML Specification』(Tim Bray著、XML.com
)http://www.xml.com/axml/testaxml.htm
XML FAQのサイト(W3C XML Special Interest Group: 企業がXMLデータを交換できる、XML DTDの業界情報公開機関)http://www.ucc.ie/xml/
http://xml.org/
xDev(DataChannel XML開発者のページ)http://xdev.datachannel.com/
この項では、Oracle XML対応テクノロジに関する一般情報について説明します。内容は次のとおりです。
XDKの使用に関するトピックは次のとおりです。
Apache Webサーバーを使用して、JDBCまたはその他の方法でOracleとやりとりする必要があります。XSQLサーブレットを使用できます。これはすべてのサーブレット対応Webサーバーで実行可能なサーブレットです。このサーブレットはApacheで実行され、Java Database Connectivity(JDBC)ドライバを介してOracleデータベースに接続します。
すべてのXMLがプログラムで作成された場合、XMLパーサーが必要になるかどうかは、生成されたXMLの用途によって異なります。実行するタスクがXMLを生成して送信するのみであれば、XMLパーサーは必要ありません。ただし、XML DOMツリーを生成する場合はXMLパーサーが必要です。また、受信したXML文書を分析および格納する場合も必要です。この問題のヘルプについては、XML SQLユーティリティを参照してください。
次のシナリオがあるとします。
... <something> <price>10.00</price> </something> ... ... ... <somethingelse> <price>55.00</price> </somethingelse>
2つの<price>
要素を一意に識別する方法はあるでしょうか。
回答: 方法はありません。制御ファイルのフィールドの記述はネストできます。これは、オブジェクト・リレーショナル列のサポートの一部です。もちろん、この記述がマップするデータ・レコードはフラットですが、SQL*Loaderのすべてのデータ・フィールド記述機能を使用すると、多くのタスクを実行できます。次に例を示します。
sample.xml
<resultset> <emp> <first>...</first> <last>...</last> <middle>....</middle> </emp> <friend> <first>...</first> <last>...</last> <middle>....</middle> </friend> </resultset>
sample.ctl
-- SQL Loader制御ファイルのフィールド定義部分
field list .... ( emp COLUMN OBJECT .... ( first char(30) enclosed by "<first>" and "</first>", last char(30) enclosed by "<last>" and "</last>", middle char(30) enclosed by "<middle>" and "</middle>" ) friend COLUMN OBJECT .... ( first char(30) enclosed by "<first>" and "</first>", last char(30) enclosed by "<last>" and "</last>", middle char(30) enclosed by "<middle>" and "</middle>" )
COLUMN OBJECT
のフィールド名がデータベースのオブジェクト列と一致する必要があることに注意してください。カスタムのレコード終了記号を使用する必要があります。使用しない場合は、デフォルトでnewline
に設定されます(newline
によって完全なデータベース・レコード用のデータが区切られます)。
使用するXMLがより複雑で選択フィールドのみを抽出しようとする場合、FILLER
フィールドを使用して、スキャン・カーソルを再配置できます。スキャン・カーソルは、スキャンが中断した場所から(最初のフィールドの場合はレコードの先頭から)レコードの最後までスキャンします。
SQL*Loaderには非常に強力なテキスト・パーサーがあります。このパーサーは、文書のサイズが特に大きい場合のXMLのロードに使用できます。
次の項では、以前のOracleリリースに関する情報を示します。
Oracleデータベース・バージョン7はほとんどの処理に対応可能です。唯一の問題は、サーバー内でJavaプログラムを実行できないことです。つまり、すべてのXMLツールをサーバーにロードできません。ただし、Oracleデータベース・バージョン7用のOracle JDBCユーティリティをダウンロードすることでデータベースに接続して、クライアント側のユーティリティとしてすべてのプログラムを実行できます。
質問: 当社ではOracleリリース7.3.4を使用しています。当グループでは、当社とベンダー間のデータ転送の一部にXMLの使用を検討しています。これを実行するには、Oracle8i以上への移行が必要になると思われます。Oracleリリース7を使用してXMLを使用する方法はありますか。
回答: Oracleリリース7.3.4に適切なJDBC 1.1ドライバがあれば、XML SQL Utilityを使用してXMLでデータを抽出できます。
JDBCドライバの場合、Oracleデータベース・バージョン7のJDBC OCIおよびJDBCシン・ドライバについては、次のWebサイトを参照してください。
Oracle8i以前のバージョンを使用している場合、Oracle XMLツールを使用してXMLベースのアプリケーションを作成できますか。作成できる場合、ライセンス条件はどのようになりますか。
Oracle XDK for Java、Oracle XDK for CおよびOracle XDK for C++(XML SQL UtilityやXSQL Pagesフレームワークを含む)は、データベースの外部で機能できます。ライセンスは同じです(フリーのランタイムを含む)。最新のライセンスの詳細は、Oracle Technology Network(OTN)を参照してください。
OracleがサポートするXML標準について説明します。
OracleはどのB2B用のXML標準(ebXML、cxmlおよびBizTalkなど)をサポートしますか。オラクル社が提供するB2B取引用のツールはどのようなものがありますか。
オラクル社は次のB2Bの標準化機関に参加しています。
OBI(Open Buying on the Internet)
ebXML(Electronic Business XML)
RosettaNet(IT業界におけるサプライ・チェーンのためのE-Commerce)
OFX(Open Financial Exchange for Electronic Bill Presentment and Payment)
オラクル社は、顧客ニーズによって異なる、次のB2B取引用のオプションを用意しています。
電子マーケットプレースを実装するための独自のソリューションを提供するOracle Exchange
B2Bおよび機能を備えたOracleAS Process Connect
データ・レベルでの情報交換のためのOracle Gateway
E-Business SuiteからXMLベースのメッセージを転送するためのOracle XML Gateway。
Oracleのインターネット・サポートは、B2Bによる取引のための統合された強固なプラットフォームを提供します。
オラクル社のXML戦略は、これまでに蓄積したOracleテクノロジを最大限に生かしてXMLを使用することです。現在、ユーザーはOracle XMLコンポーネントとOracleデータベースやOracle Streamsを組み合せて、競合を解決したり、トランザクションを検証したりすることができます。オラクル社は、これらの機能や、分散2フェーズ・コミット・トランザクションなどの機能が将来のリリースでよりシームレスになるように取り組んでいます。
XMLType
データ型は、表またはビューの列へのXMLの格納に使用されます。
関連資料: 『Oracle XML DB開発者ガイド』 |
XMLデータはオブジェクト・リレーショナル表またはビューのいずれかに、またはCLOBとして格納されます。XMLトランザクションはこれらのデータ型のいずれかを持つトランザクションで、ロールバック・セグメント、ロックおよびロギングなどのOracle標準メカニズムを使用して処理されます。
Oracle9i以上から、OracleはStreamsを使用したXMLペイロードの送信をサポートしています。このサポートにより、SQLからXMLへの問合せが可能です。
オラクル社は、特定のXMLスキーマを開発および登録するために、すべてのXML標準化機関(W3C XMLワーキング・グループ、Java Extensions for XML、Open Applications Group、のXML.org
)に積極的に参加しています。
オラクル社はXML QueryのW3Cワーキング・グループに参加しています。また、XSQLの提案などにあるような、XMLデータへの問合せを可能にする言語の実装を計画中です。XSLTは静的XML変換機能を提供しますが、問合せ言語は、SQLがリレーショナル・データの柔軟性を高めるように、データ問合せの柔軟性を高めます。
オラクル社は、XMLおよびXSLに関連するXML Schema、XML Query、XSL、XLink/XPointer、XML Infoset、DOMおよびXML CoreのW3Cワーキング・グループに積極的に参加しています。