DTDおよびXMLスキーマの長所/短所は何ですか(後者の正式な名前が何であるかさえわかりません!)?どちらが良いですか?同じことをするために2つの方法が必要なのはなぜですか?
編集:私が読んでいた記事でこれを見つけました。それが私に質問をするように促したものです:
なぜW3CXMLスキーマ言語なのか?
W3CXMLスキーマ言語だけがスキーマ言語ではありません。実際、XML仕様では、スキーマを表現する方法として文書型定義(DTD)が記述されています。さらに、プレリリースバージョンのJAXBリファレンス実装はDTDでのみ機能しました。つまり、XMLスキーマ言語で記述されたスキーマでは機能しませんでした。ただし、XMLスキーマ言語はDTDよりもはるかに豊富です。たとえば、XMLスキーマ言語で記述されたスキーマは、DTDで表現できない(または簡単に表現できない)構造関係とデータ型を記述できます。DTDをW3CXMLスキーマ言語に変換するために使用できるツールがあるため、以前のバージョンのJAXBリファレンス実装で使用したDTDベースのスキーマがある場合は、http://java.sun.com/developer/technicalArticles/WebServices/jaxb/#binsch
XMLスキーマが優れている理由を説明する例が欲しいと思います(実際にそうであれば)。