XML ドキュメントのプロバイダのソースとしての利用

提供: RAD Studio
移動先: 案内検索

データベース アプリケーションでの XML の使用:インデックス への移動


TXMLTransformProvider コンポーネントにより、XML ドキュメントをあたかもデータベース テーブルのように使用できます。 TXMLTransformProvider では、XML ドキュメントに記述されているデータをパッケージ化し、クライアントから指定された更新を元の XML ドキュメントに適用します。 クライアント データセットや XML ブローカなどのクライアントには、他のプロバイダ コンポーネントのように見えます。 プロバイダ コンポーネントの詳細は、「プロバイダ コンポーネントの使い方」を参照してください。 クライアント データセットでプロバイダ コンポーネントを使用する詳細は、「クライアント データセットでデータ プロバイダを使用する」を参照してください。

XMLDataFile プロパティを使って、XML プロバイダによるデータの提供元および更新の適用先となる XML ドキュメントを指定できます。

TXMLTransformProvider コンポーネントでは、内部の TXMLTransform コンポーネントを使用して、データ パケットとソース XML ドキュメントとの変換を行います。つまり、 XML ドキュメントをデータ パケットに変換するコンポーネントと、更新の適用後データ パケットをソース ドキュメントの XML 形式に逆変換するコンポーネントがあります。 これら 2 つの TXMLTransform コンポーネントにアクセスするには、それぞれ TransformRead プロパティと TransformWrite プロパティを使用します。

TXMLTransformProvider を使用する際には、これら 2 つの TXMLTransform コンポーネントによるデータ パケットとソース XML ドキュメントとの変換に使用される変換を指定する必要があります。 それには、スタンドアロンの TXMLTransform コンポーネントを使用する場合と同じように、TXMLTransform コンポーネントの TransformationFile プロパティまたは TransformationDocument プロパティを設定します。

さらに、変換にユーザー定義のノードが含まれる場合には、Xmlxform.OnTranslate イベント ハンドラを内部の TXMLTransform コンポーネントに定義する必要があります。

TransformReadTransformWrite の値となる TXMLTransform コンポーネントでは、ソース ドキュメントを指定する必要はありません。 TransformRead の場合は、プロバイダの XMLDataFile プロパティで指定されるファイルがソースになります(ただし、XMLDataFile を空文字列に設定すれば、TransformRead.XmlSource または TransformRead.XmlSourceDocument を使ってソース ドキュメントを指定できます)。 TransformWrite の場合、ソースはプロバイダで更新の適用時に内部的に生成されます。

関連項目