
「DTD/スキーマ | DTD/スキーマの生成」コマンドにより、XML ドキュメント(又はプロジェクトウィンドウのフォルダーに収められた複数の XML ファイル)から新たな DTD または W3C XML スキーマを生成することができます。このコマンドは XML ドキュメントから DTD や XML スキーマを生成する際に便利な機能となります。

XML スキーマを生成する際には、以下のオプションが利用可能です:
•要素 :要素の型を、ローカルかグローバルか選択することができます(要素に使用される型の定義)。同じ名前の要素が複数ある場合、これら要素に対して共通の型を宣言することができます(共通の型を生成)。
•属性 :属性の単純型(属性に使用される単純型の定義)は、(i) 共通のグローバル型、(ii) 一意のグローバル型、または (iii) ローカル型、として定義することができます。同じ名前の属性をローカルまたはグローバルで定義することができます。
•単純型の認識 :型の認識(単純型の認識)を、(i) できるだけ最適な認識、(ii) 数値のデータ型だけ検出、または (iii) データ型の検出無しからセットすることができます((iii) の場合は、全てのデータ型に xs:string がセットされます)。
•エントリーの解決 :XML ドキュメントにおいて、エンティティは要素と属性の値両方にて出現しえます。そのため、それらエンティティが解決されるかどうかが、列挙の値に対して重要な意味を持ちます(エンティティを検証して解決)。更に、エンティティが解決されているかによって(特にパースされたエンティティにマークアップが含まれる場合)、コンテンツモデルが影響を受けることもあります。スキーマが生成される前に、XML ドキュメントが検証されることに注意してください。ドキュメントが妥当でない場合、スキーマの生成は行われません。
•列挙 :値に対する全ての型、または文字列の値のみから列挙を行うことができます。
DTD を生成すると、エンティティの解決や列挙オプションが有効になります。
DTD/スキーマの生成コマンドは、通常メインウィンドウで処理されますが、アクティブなプロジェクトウィンドウ上のファイルやフォルダー、またはファイルのグループに対しても 「DTD/スキーマの生成」コマンドを使用することができます。
1つ以上の名前空間ないで要素または属性が存在する場合、 XMLSpy は個別の XML スキーマ を各固有の名前空間のために生成します。このため、複数のファイルがディスク上に作成される可能性があります。