要素置換およびタイプ置換を使用したテスト・ファイルの生成
XSLTエディタでは、導出されたタイプおよびXSDに定義された置換グループに基づいて要素およびタイプの置換を行うことができます。多くのスキーマには、置換グループの要素またはxsi:type
を使用して導出されたタイプの要素でオーバーロードできる抽象要素またはタイプが含まれます。
XSLTエディタのテスト・ツールでは、置換された要素を含む入力XMLドキュメントの生成は現在サポートされません。そのため、ソース・ツリーで置換が行われたXSLTマップを起動すると、次の警告が表示されます。
ユーザーは、生成された入力ドキュメントを変更するか、独自のテスト入力ファイルを提供する必要があります。xsi:type
定義または必要な要素の置換に正しい構文を使用してユーザー自身が入力ドキュメントで置換を行う必要がありますが、これは簡単ではありません。複数の置換が行われた大規模なスキーマの場合、より難しくなります。
XSLTエディタを使用すると、要素が正しく置換され、適切なネームスペース/接頭辞がすべて定義された入力ドキュメントを生成できます。これを入力テスト・ドキュメントのテンプレートにします。
前述のマッピングでは、ソース・ツリーで2つの置換が行われています。1つ目は、スキーマ・ドキュメントで定義された置換グループの置換された要素CommentList
です。2つ目は、スキーマ・ドキュメントで定義された、導出されたアイテム・タイプのItem
タイプ置換です。
このマップをテストするためのテスト入力ファイルとして使用できるドキュメントを生成する小さなXSLTマップを作成します。これには、正しいxsi:type
およびソース・ドキュメントに定義された要素置換情報が含まれる必要があります。
既存のマップのPurchaseOrder
ソースのテスト入力として使用できるPurchaseOrder
ドキュメントを出力する必要があるため、ソースにはスキーマ・ドキュメントを選択せず、ターゲットにはPurchaseOrder
スキーマを選択して新しいマップを作成します。
スキーマからの子の追加を使用し、PurchaseOrder
ソースで行ったのと同じ置換をPurchaseOrder
ターゲットに行い、次のようなマップを作成します。
このXSLTをテスト・ツールで実行し、PurchaseOrder
テンプレート・ドキュメントを作成します。
これによって、テスト用の正しい置換を含む、テスト入力ドキュメントのテンプレートが生成されます。
定義されたフィールドに適切なテスト・データを入力できます。あるいは、テスト・ファイルを生成するXSLTにデータ値を定義し、テスト・ファイルに事前移入できます。