XML ソース

XML ドキュメントにアクセスする XML データソースを作成するには、[Server Explorer] で右クリックして [New] > [Data source] > [XML] の順にクリックします。

データソースを作成するためのダイアログが表示されます。

Creating an XML data source

XML データソースの作成

このダイアログでは、以下のデータを指定する必要があります。

  • Name: 新しいデータソースの名前。

  • Data Route: 必要なデータを収めた XML ファイルへのパス。 補間変数 を使用して、このパスをパラメータ化できます (「 補間変数によるパスなどの値 」を参照)。

  • Ignore route errors: チェックすると、データソースで参照されているファイルにアクセスしたときに発生したエラーが、Virtual DataPort サーバーによって無視されます。

    このオプションは、データソースで読み取るファイルが 1 つのみの場合に使用することを意図したものではありません。このオプションを使用する主な状況は、データソースが複数のファイルを参照していて、その一部は存在しない可能性があることがわかっている場合です。たとえば、 /opt/application/logs/log-^DateRange("yyyy/MM/dd",@start_date,@end_date,"yyyy-MM-dd").xml をローカルパスとする一連のログファイルを読み込む JSON データソースを作成できます (DateRange 関数の詳細については、「 日付範囲を使用したパス 」を参照)。

    このデータソースから作成した基本ビューにクエリを実行すると、そのデータソースではすべてのログファイルを順番に読み取ります。たとえば、クエリで条件として start_date='2018/05/01' AND end_date = '2018/05/04' を指定した場合、データソースは log_2018-05-01.xml、log_2018-05-02.xml、log_2018-05-03.xml、および log_2018-05-04.xml の各ファイルを読み取ろうとします。これらのファイルのいずれかが存在しない場合、このクエリは失敗します。

    このエラーを無視する場合は、[Ignore route errors] チェックボックスをチェックします。このようにすると、ファイルのいずれかが存在しない場合や読み取ることができない場合、そのファイルは無視され、次のファイルが読み取られます。管理ツールからこのクエリを実行すると、読み取ることができなかったファイルを [Execution trace] で特定できます。そのためには、このトレースで、「 Type = Route 」と表示されているノードをクリックします。読み取ることができなかったファイルには、 Exception 属性の後にエラーメッセージが表示されています。

  • Validation type: 選択している場合、入力した XML ファイルの構造がスキーマまたは DTD から取得されます。[None] を選択している場合、Virtual DataPort によって XML ドキュメントが解析され、そのスキーマが推測されます。

  • Validate route: 入力の XML ドキュメントのスキーマ (XSD) または DTD へのパス。このパスを指定すると、Virtual DataPort サーバーでは、[Data route] で指定したルートから XML ドキュメントを取得して新しい基本ビューのスキーマが判断されるのではなく、XSD または DTD の内容が使用されます。

    スキーマへのパスにも DTD へのパスにも、補間変数は使用できません。つまり、このパスはパラメータ化できないので、データソースの作成時にパスを指定する必要があります。

    [Schema] オプションを選択していて、スキーマに複数のルートエレメントが存在する場合、このデータソースから基本ビューを作成する際に、スキーマのルートタイプを選択する必要があります。これは、どのエレメントから基本ビューのスキーマを判断するかを指定することです (「 Creating an XML data source with a Schema that has multiple root elements 」を参照)。

  • Validate data: チェックしている場合、データソースへのアクセスがあるたびに Virtual DataPort によって入力の XML ファイルが検証されます。

使用可能なパス形式の詳細については、「 Virtual DataPort でのパスの種類 」を参照してください。

[Metadata] タブでは、データソースの格納先フォルダと説明を設定できます。

[Save] をクリックして、データソースを作成します。

データソースを編集する際、 image1 ボタンをクリックすると、その所有者も変更できます。

Creating an XML data source with a Schema that has multiple root elements

複数のルートエレメントが存在するスキーマによる XML データソースの作成

データソースを作成した後、[Create base view] をクリックすると、このデータソースから基本ビューが作成されます。表示された [Configure XML Wrapper] ダイアログで、以下のどちらかのオプションを選択する必要があります (「 Creating an XML base view 」を参照)。

  • Do not stream output: このオプションを使用すると、新しい基本ビューでは、複合型の arrayregister で複合値が表現されます。この基本ビューからフラット化ビュー (「 フラット化ビューの作成 」を参照) を作成して、他のソースのデータと容易に組み合わせることができるように、これらの複合値を変換できます。

  • Stream output at specified level: このオプションを使用すると、XML ドキュメントを処理する前に応答全体をメモリに収める必要がないように、Virtual DataPort サーバーによって XML ドキュメントの処理が最適化されます。したがって、メモリ消費量が大幅に少なくなります。上記の [Do not stream output] オプションで基本ビューを作成すると、XML ドキュメント全体が読み取られ、解析されるので、メッセージ全体をメモリに収める必要があります。

    1 番目のオプションと比較した [Stream output at specified level] オプションの欠点は、XML ドキュメントの各フィールドのうち、選択したレベル未満のものが無視されることです。

    この問題の詳細については、「 複合値を返す Web サービス操作の処理 」を参照してください。

Creating an XML base view

XML の基本ビューの作成

[Ok] をクリックすると、ソースに関連付けられた基本ビューのスキーマが表示されます。この段階で、以下の処理が可能です。

  • ビューの名前を変更する。

  • 各フィールドの名前をダブルクリックして変更し、その型を右側のドロップダウンリストから選択する。

  • 新しいビューのプライマリキーを設定する (「 ビューのプライマリキー 」を参照)。

  • [Metadata] タブで基本ビューの格納先フォルダを設定し、その説明を記述する。

  • 基本ビューを編集する際、 image1 ボタンをクリックして、その所有者を変更する。

次に、[Save] (image4) をクリックして、基本ビューを作成します。

[Server Explorer] で新しい基本ビューのスキーマを表示するには、そのビューをダブルクリックします (「 派生ビューの作成 」を参照)。

[Edit] をクリックすると、ビューのスキーマを編集できます。