機械翻訳について

キャラクタ・ラージ・オブジェクト(CLOB)として格納されているデータのデータ・モデルでの使用

「パブリッシャ」は、データ・モデルでキャラクタ・ラージ・オブジェクト(CLOB)データ型として格納されるデータの使用をサポートします。 この機能を使用すると、別のプロセスで生成され、データベースに「パブリッシャ」データ・モデルへの入力として格納されるXMLデータを使用できます。

クエリー・ビルダーを使用してSQL問合せ内の列を取得し、次にデータ・モデル・エディタを使用して、データを構造化する方法を指定します。 データ・モデルが実行されるとき、データ・エンジンは次のいずれかのようにデータを構造化できます:

  • レポートに表示可能なXMLタグ名内のプレーン文字セット(アイテムの説明など)

  • 構造化されたXML

    データに改行やキャリッジ・リターンが含まれていないことを確認します。 データの改行と改行は、レポート・レイアウトで想定どおりにレンダリングされない場合があります。

CLOBとして格納されたデータからデータセットを作成するには:

  1. ツールバーで、「新規データセット」をクリックし、「SQL問合せ」を選択します。 「新規データセット - SQL問合せ」ダイアログが起動します。
  2. データセットの名前を入力します。
  3. このデータセットにデフォルトのデータ・ソースを使用していない場合は、リストから「データ・ソース」を選択します。
  4. SQL問合せを入力するか、「問合せビルダー」を使用して、CLOBデータ列を取得する問合せを作成します。

    たとえば、CLOBデータが"DESCRIPTION"という名前の列に格納される問合せを作成できます。

  5. 問合せを入力したら、OKをクリックして保存します。 「パブリッシャ」は問合せを検証します。
  6. デフォルトでは、データ・モデル・エディタはCLOB列にCLOBデータ型を割り当てます。 データ型をXMLに変更するには、データ型アイコンをクリックしてXMLを選択します。

データの返却方法

問合せの実行時に、CLOB列が整形式XMLを含み、XMLデータ型を選択すると、データ・エンジンはCLOB列のタグ名内に構造化されたXMLデータを返します。

データ型がXMLの場合の出力例:

次に示すように、<DESCRIPTION>要素にはCLOB列に格納されているXMLデータが含まれていることに注意してください。

データ型がCLOBの場合の出力例:

データをCLOBデータ型として返すように選択した場合、返されるデータは次に示すように構造化されます。

CLOB列データを使用したデータセットの追加ノート

CLOB列データに関する詳細情報を入手できます。

バースティング問合せでのCLOB列データの使用に関する具体的なノートは、「SQL問合せを使用したデータ・モデルへのバースティング定義の追加」を参照してください。

CLOB列に格納されたXHTMLデータの処理

データベースのCLOB列に格納されているXHTMLドキュメントのデータは、生成されたレポートでマークアップをレンダリングできます。

レポート・レンダリング・エンジンでマークアップ・タグを処理できるようにするには、データ・エンジンによって渡されるXMLレポート・データ内のCDATAセクションでXHTMLデータをラップする必要があります。

CDATAセクションでラップされたデータをデータベースに格納することをお薦めします。 これにより、単純なselect文を使用してデータを抽出できます。 データがCDATAセクションでラップされていない場合は、データをラップするためにSQL文の命令に含める必要があります。

次の各項では、それぞれの場合のXHTMLデータの抽出方法について説明します:

レポートでのHTMLマークアップのレンダリングをサポートするRTFテンプレートのみ。

CDATAでラップされたXHTMLデータの取得

この演習では、次のデータが"CLOB_DATA"というデータベース列に格納されていることを前提としています。

<![CDATA[
<p><font style="font-style: italic; font-weight: bold;" size="3">
<a href="http://www.oracle.com">oracle</a></font> </p>
<p><font size="6"><a href="http://docs.oracle.com/">Oracle Documentation</a>
</font></p>
]]>

単純なSQL文を使用して、列データを取得します。例:

select CLOB_DATA as "RTECODE" from MYTABLE

データ・モデル・エディタで、次に示すように、RTECODE列のデータ型をXMLに設定します。

問合せのCDATAでのXHTMLデータのラップ

この演習では、CLOB_DATAというデータベース列に次のデータが格納されていることを前提としています。

<p><font style="font-style: italic; font-weight: bold;" size="3">
<a href="http://www.oracle.com">oracle</a></font> </p>
<p><font size="6"><a href="http://docs.oracle.com/">Oracle Documentation</a>
</font></p>

SQL問合せで次の構文を使用して、SQL問合せを取得し、CDATAセクションでラップします:

select '<![CDATA' || '['|| CLOB_DATA || ']' || ']>' as "RTECODE"from MYTABLE

データ・モデル・エディタで、RTECODE列のデータ型をXMLに設定します。