XMLを使用すると、作成する文書の用途や目的に合わせて、自由に要素や属性を定義したXML文書を作成できます。また、名前空間の概念が導入されてからは、複数のXMLボキャブラリを1つのXML文書内で使用した、複合XML文書を作成できるようになりました。こうしたさまざまなXML文書は、次のどちらかの方法でしか作成・編集できませんでした。
- タグを直接入力できるエディタを使用する
テキストエディタや、タグ入力を支援する機能を備えたXMLエディタを使用し、XML文書を作成・編集します。編集する文書はタグ混じりで表示されます。文書に要素を追加・削除するときは、直接タグを操作します。そのため、XML文書を編集するには、対象のXMLボキャブラリに含まれる要素や属性の定義に関する詳しい知識が必要です。 一方、1つのエディタで複数種類のXML文書や、複合XML文書を編集できます。また、XML文書の構成を容易に変更できます。 - それぞれのXML文書に特化した編集ツールを使用する
用意された入力欄に適切な内容を入力・編集し、すべての編集を終えて確定すると、XML文書が出力されます。XML文書を編集するときには、XML文書の要素や属性に関する知識は必要ありません。ただし、編集対象のXML文書で使用されるXMLボキャブラリごとに編集ツールを用意する必要があります。複合XML文書を対象とする場合、編集ツールは文書で使用されているすべてのXMLボキャブラリに対応する必要があります。XML文書の構成を変更するときには、編集ツール自体も変更する必要があります。
しかし、理想的なXML文書の作成・編集環境を考えると、次のすべての条件を備えていることが求められます。
- あらゆるXML文書を編集できる
- XML文書で使用されている要素や属性を意識しなくてよい
- 編集時の操作が自然で、違和感がない
また、作成したXML文書の保存先は、ファイルシステムだけではなく、ネットワークストレージやサーバープログラムの管理下など、目的に応じて選択できることも求められます。これらの要求すべてを1つのアプリケーションで実現しようとすると、膨大な機能で肥大化して、使いにくくなることは、想像に難くありません。