Altova AIによる、より効率的なXML開発

XMLを扱う人は誰でも、時間がどれだけかかるかを知っています。あるドキュメントの構造を別の構造に変換するために、XSLTスタイルシートを手作業でコーディングします。スキーマをテストするためにサンプルインスタンスを作成しますが、その中に「Test1」や「555-555-1212」といったデータを入れてしまい、それがかえって多くのバグを隠してしまうことがあります。そして、今週で3度目のことですが、正確なXPathの構文を調べます。

最新版のXMLSpyは、まさにこのような作業を効率化することを目指しています。Altova AI Serverとの連携により(Altovaが提供するオプションの追加機能)、このXMLエディタは、最も時間のかかるXML開発タスクに対して、状況に応じたAIによる支援を提供します。AIは、すでに開いているスキーマやドキュメントを読み取ることができるため、その出力は一般的な推測ではなく、実際の作業に基づいています。ツール間のコピー&ペースト作業も、ほぼ当てはまるだけの回答も不要です。

具体的な機能リストよりも、以下の2つの例の方が、その違いをより明確に示しています。どちらも開発者が常に実施している作業であり、かつてはリアルタイムで処理されていました。

例1:お客様のスキーマに基づいて生成された、現実的なテストデータ

例えば、購入注文に関するXMLスキーマがあり、インポート処理をテストするためのサンプルデータが必要だとします。一般的な方法は、手作業でドキュメントを作成するか、自動生成することです。しかし、自動生成されたデータでは、すべてのフィールドが意味のないプレースホルダーとして表示されることが多く、実際の入力データに対するコードの動作を十分に理解することはできません。

(文脈によって適切な訳が異なります。以下にいくつかの例を示します。) Altova AI, XSDファイルを指定し、サンプルドキュメントの表示を要求してください。

サンプルデータの生成にあたり、いくつかのオプションを指定することもできますし、デフォルトの値をそのまま使用することも可能です。

次に、Altova AIは、お客様が定義したスキーマに基づいて、サンプルデータを作成します。ランダムな有効な値ではなく、各要素の意味を解釈し、妥当なデータを入力します。例えば、現実的な会社名、相互に関連性のある日付、適切な形式の住所や価格などが生成されます

現実的なデータを使用することには、二つのメリットがあります。まず、仮データでは見過ごされがちな、例えば長い名前、複数行にわたる項目、境界値に近い値といった特殊なケースを発見できます。次に、実際の顧客データに触れることなく、本番環境に近い品質のデータを使って、チームがデモンストレーション、ドキュメント作成、プロトタイプ作成を行うことができます。これまで手間のかかっていた作業が、ワンクリックで完了するようになります。

例2:2つのデータ構造間のXSLTまたはXQueryによる変換

XMLの処理の中で、最も時間がかかる作業の一つが、データの変換です。以下に、現実的なシナリオを紹介します。イギリスの企業が、ドイツのサプライヤーに注文を出す際、それぞれの英語での発注書を、サプライヤーの会計システムが期待する要素名に合わせて書き換える必要があります。2つのファイルは同じ情報を含んでいますが、すべてのタグが異なり、属性名も異なります。

以下は、ドイツのシステムが期待するデータ形式です

多数の項目を手作業で対応させる代わりに、Altova AIにソースドキュメントとターゲットドキュメントの両方を入力します。AIはそれぞれのドキュメントを読み込み、異なる名前で表現されているものの、意味的に同じ項目を認識し、それらを対応付けるXSLTスタイルシートを生成します。変換を実行すると、正しく対応付けられたドイツ語のドキュメントが完成し、すべての項目が正確に反映されます。

同じワークフローを使用することで、必要に応じてXSLTではなくXQueryを生成できます。また、出力されるコードは標準的な、完全に編集可能な形式であるため、XMLSpyのXSLTエディタで修正したり、ステップごとに実行したりすることができます XSLT デバッガー, または、それを使って調整してください XSL高速化ツール. Altova AIは、ブラックボックスのようなものではなく、実際に動作する出発点を提供します。

XMLおよびJSONに対応したAIアシスタント

上記の例はすべて、XMLSpyに組み込まれたチャットウィンドウであるインタラクティブなAIアシスタントを支える、共通の基盤技術に基づいています。ユーザーは自然な言葉で希望する内容を記述し、現在の状況に基づいて生成されたコンテンツを得ることができます。

アシスタントツールバーからは、応答をコピーして新しいドキュメントに貼り付けることができます。また、XPath/XQueryウィンドウで直接開くことも可能です。この自然言語によるワークフローは、XMLとJSONのスキーマ、サンプルデータ、そしてXPath、XQuery、XSLTのコードを生成します。これにより、これらの言語の構文を学ぶための迅速な方法にもなります。JSONの開発においても同様に機能します。JSONスキーマ、サンプルデータなどを要求し、その結果をその場で確認できます。

可能性は無限に広がっていますが、以下にいくつかの例を示します

・複数の配送業者と追跡イベントに対応した、配送明細書のXMLスキーマを作成する

• 例として、いくつかの特殊なケースを含めた保険請求データをJSON形式で作成してください

• アクティブなファイルから、すべての最上位要素をリスト表示するXSL変換を作成します

• 過去四半期に発生した、1万ドルを超えるすべての注文を検索するXPath式を作成してください

始め方

Altova AIは、XMLSpyのライセンスと同時に購入できるサブスクリプション形式で提供されています。サポートおよび保守パッケージ(SMP)が必要であり、新しいSMPにAIサブスクリプションを追加するか、既存のSMPに追加することができます。詳細な情報とサブスクリプションの申し込みについては、Altovaオンラインストアをご覧ください。また、Altova AIの機能について、XMLSpy用のAltova AIページで実際に動作している様子を確認できます。

タスクの内容は変わっていません。XML開発者は依然として、テストデータ、変換処理、スキーマ、そしてクエリが必要です。変わったのは、それらに必要な時間です。Altova AIが最初の草案を作成することで、以前は半日を要していた作業が、今ではコーヒーブレイクの時間で完了できるようになりました。