XML には文書のセットを作成するために必要な情報がすべて含まれるので、 文書構造を現状のままで保管して保守したい場合があるでしょう。
たとえば、Web に記事を供給するニュース発行会社であれば、 発行済みの記事のアーカイブを保守したいと思うことがあります。 そのようなシナリオでは、 XML エクステンダーによって XML 記事の全部または一部を DB2 表の列に保管することができます。 図 1 に示すように、 この種類の XML 文書記憶を XML 列 と呼びます。
![]() |
XML エクステンダーには、XML 列で使用する数種類のユーザー定義タイプ (UDT) が備わっています。
XML エクステンダーの UDT にはすべて、接頭部 db2xml が付いています。 これは DB2 XML エクステンダー UDT のスキーマ名 です。 これらのデータ・タイプは、 アプリケーション表内にある XML 文書のストレージ・タイプを識別するために使用されます。 XML エクステンダーは、従来のフラット・ファイルをサポートします。 XML 文書を DB2 内に保管する必要はありません。さらに、XML 文書をローカル・ファイル名の指定にしたがって、 ローカル・ファイル・システム として保管することもできます。
DB2 XML エクステンダーには強力なユーザー定義機能 (UDF) が備わっていて、 XML 列内の XML 文書を検索したり、XML 要素または属性値を抽出することができます。 UDF は、データベース管理システムに定義して、 その後 SQL 照会で参照できるようになる機能です。 XML エクステンダーには次のようなタイプの UDF が備えられています。
抽出機能を使うと、汎用 SQL データ・タイプで高効率の検索を行うことができます。 さらに、DB2 UDB テキスト・エクステンダーを XML エクステンダーと共に使用して、 構造化テキスト検索と全テキスト検索 を XML 文書内のテキストで実行できます。 この強力な検索機能を使用して、新聞の記事や 電子データ交換 (EDI) アプリケーションなどの、 頻繁に検索可能な要素または属性を持つ読み取り可能テキストを大量に発行する Web サイトを使いやすくすることができます。
XML エクステンダーの UDF にはすべて、接頭部 db2xml が付いています。 これは DB2 XML エクステンダー UDF のスキーマ名です。 UDF は XML UDT に適用されて、XML 列のために使用されます。
ロケーション・パス とは、 XML 要素または属性を識別する一連の XML タグ です。 XML エクステンダーはロケーション・パスを使って XML 文書の構造を識別し、 要素または属性のコンテキストを示します。 単一スラッシュ (/) のパスは、コンテキストが文書全体であることを示します。 ロケーション・パスは以下の状況で使用されます。
図 2 は、ロケーション・パスおよび XML 文書との関係を示しています。
図 2. 文書を構造化 XML 文書として DB2 表の列に保管する
![]() |
ロケーション・パスを指定するために、 XML エクステンダーは XML Stylesheet Language Transformation (XSLT) および XML Path 言語 (XPath) のサブセットを使用します。 本書では、XPath の仕様で定義されている用語である ロケーション・パス を使用します。 ロケーション・パスとは、XML 要素または属性を識別する一連の XML タグです。 本書ではさらに、XPath の仕様で指定されている、 絶対ロケーション・パス の XSLT または XPath の省略形の構文も使用します。 絶対ロケーション・パスとは、オブジェクトの全パス名です。
XSLT は、XML 文書を他の XML 文書に変換するための言語です。 これは XML のスタイル・シート言語である XSL (XML Stylesheet Language) の一部として使用されるように設計されています。 XSLT に加えて、XSL にはフォーマット化を指定するための XML 用語も含まれています。 XSL は XSLT を使用して XML 文書のスタイル設定を指定し、 フォーマット化の語彙を使用する他の XML 文書に変換する方法を示します。
XPath は、XSLT が使用するために設計された、XML 文書のアドレス部を指定する言語です。 すべてのロケーション・パスは、XPath 用に定義された構文を使用して表現できます。
XSLT および XPath についての詳細は、以下の Web ページを参照してください。
構文と制約事項については、ロケーション・パスを参照してください。
ここでは、XML の概念と、本書で使用される用語について解説します。