XML のドキュメントとスキーマを操作するための各種ツール
ここでは、XML スキーマと XML ドキュメントの操作に使用可能な InterSystems IRIS® ツールの概要を示します。
XML スキーマ構造ページの使用法
[Interoperability]→[相互運用]→[XML]→[XML スキーマ構造] ページを使用すると、XML スキーマ仕様のインポートと表示を行うことができます。
このページの使用に関する一般情報は、"スキーマ構造ページの使用法" を参照してください。
スキーマ・ファイルをインポートする前に、名前をそのネームスペース内で一意のわかりやすいものに変更します。ファイル名は、管理ポータルなどでスキーマ・カテゴリ名として使用されます。ファイル名が、ファイル拡張子 .xsd で終わる場合、このファイル拡張子はスキーマ・カテゴリ名から省略されます。それ以外の場合、ファイル拡張子は名前に含まれます。
このドキュメントで説明しているように、これらのスキーマは、XML 仮想ドキュメントの処理をサポートするためだけに使用できます。InterSystems IRIS では、その他の目的では使用されません。
スキーマ・ファイルのインポート後に、そのファイルをファイル・システム内の現在の場所から削除しないでください。XML パーサは、InterSystems IRIS データベースに格納されているスキーマではなくスキーマ・ファイルを使用するからです。
XML ドキュメント・ビューワ・ページの使用法
[Interoperability]→[相互運用]→[XML]→[XML ドキュメント・ビューワ] ページを使用すると、XML ドキュメントを表示して、さまざまな方法で解析することによって、使用する DocType を決定できます。また、変換をテストすることもできます。ドキュメントは、外部ファイルにすることも、プロダクション・メッセージ・アーカイブからのドキュメントにすることもできます。
このページを表示するには、[Interoperability]、[相互運用]、[XML] の順にクリックします。次に、[XML ドキュメント・ビューワ] をクリックし、[進む] をクリックします。
このページの使用に関する一般情報は、"ドキュメント・ビューワ・ページの使用法" を参照してください。
XML スキーマのプログラムによるインポート
スキーマは、プログラムによってロードすることもできます。それには、EnsLib.EDI.XML.SchemaXSDOpens in a new tab クラスを直接使用します。このクラスには、Import() クラス・メソッドが用意されています。このメソッドに対する最初の引数は、インポートするファイルの名前であり、そのディレクトリの完全パスを含めます。以下に例を示します。
set status= ##class(EnsLib.EDI.XML.SchemaXSD).Import("c:\iiris\myapp.xsd")
EnsLib.EDI.XML.SchemaXSDOpens in a new tab クラスには、ImportFiles() メソッドも用意されています。このメソッドの場合は、最初の引数を以下のいずれかの方法で指定できます。
-
ファイルのインポート元のディレクトリの名前として指定する。ファイル拡張子に関係なく、このディレクトリ内のすべてのファイルのインポートが試行されます。以下に例を示します。
set status=##class(EnsLib.EDI.XML.SchemaXSD).ImportFiles("c:\iiris\")
-
セミコロンで区切られたファイル名のリストとして指定する。これらのファイル名の前にディレクトリの完全パスを含める必要があります。また、ファイル名にはワイルドカードを使用できます。以下に例を示します。
set status=##class(EnsLib.EDI.XML.SchemaXSD).ImportFiles("c:\iiris\*.xsd;*.XSD")
詳細は、EnsLib.EDI.XML.SchemaXSDOpens in a new tab のクラス参照を参照してください。
スキーマ・ファイルのインポート後に、そのファイルをファイル・システム内の現在の場所から削除しないでください。XML パーサは、InterSystems IRIS データベースに格納されているスキーマではなくスキーマ・ファイルを使用するからです。
XML クラス
参照用として、ここでは XML ドキュメントを操作するために InterSystems IRIS から提供されているクラスを列挙します。
項目 | クラス | メモ |
---|---|---|
XML ビジネス・サービス | クラス名が示しているように、これらのビジネス・サービス・クラスのそれぞれで別々のアダプタが使用されます。 | |
XML ルーティング・プロセス | EnsLib.MsgRouter.VDocRoutingEngineOpens in a new tab | このクラスは標準の仮想ドキュメント・ルーティング・プロセスです。 |
XML ビジネス・オペレーション | クラス名が示しているように、これらのビジネス・オペレーション・クラスのそれぞれで別々のアダプタが使用されます。 | |
メッセージ | EnsLib.EDI.XML.DocumentOpens in a new tab (ビジネス・ホスト・クラスで自動的に使用されます) | XML ドキュメントを仮想ドキュメントとして転送するための特殊なメッセージ・クラスです。 |
検索テーブル | EnsLib.EDI.XML.SearchTableOpens in a new tab | XML ドキュメント専用の検索テーブル・クラスです。 |
これらのクラスのサブクラスを作成して使用することもできます。
ビジネス・ホスト・クラスには構成可能なターゲットが含まれています。それらのいくつかを下の図に示します。
その他の構成可能なターゲットの詳細は、設定のリファレンスを参照してください。