DTD-概要

一般にDTDとして知られているXML文書型宣言は、XML言語を正確に記述する方法です。DTDは、XMLドキュメントの構造と語彙の妥当性を、適切なXML言語の文法規則と照合してチェックします。

XMLドキュメントは次のように定義できます-

  • Well-formed− XMLドキュメントが、タグを適切にネストし、開始タグと終了タグのバランスを取り、空のタグを「/>」で終了するなど、すべての一般的なXMLルールに準拠している場合、整形式と呼ばれます

    または

  • Valid−整形式であるだけでなく、使用するタグ、それらのタグに含めることができる属性、他のタグ内で発生する可能性のあるタグなどを指定する利用可能なDTDにも準拠している場合に有効と言われるXMLドキュメント。

次の図は、DTDを使用してXMLドキュメントを構造化することを表しています。

タイプ

DTDは、次のようにXMLドキュメントで宣言に基づいて分類できます。

  • 内部DTD

  • 外部DTD

DTDがファイル内で宣言されると、呼び出されます Internal DTD 別のファイルで宣言されている場合は、 External DTD

これらについては、DTD構文の章で詳しく説明します。

特徴

以下は、DTDが説明するいくつかの重要なポイントです-

  • XMLドキュメントに表示できる要素。

  • それらが表示される順序。

  • オプションおよび必須の要素。

  • 要素の属性と、それらがオプションか必須か。

  • 属性にデフォルト値を設定できるかどうか。

DTDを使用する利点

  • Documentation−XMLファイルに独自の形式を定義できます。このドキュメントを見ると、ユーザー/開発者はデータの構造を理解できます。

  • Validation −要素が正しい順序で表示されているか、必須の要素と属性が配置されているか、要素と属性が間違った方法で挿入されていないかなどを確認することにより、XMLファイルの有効性を確認する方法を提供します。

DTDを使用することのデメリット

  • 名前空間はサポートしていません。名前空間は、要素名と属性名をグループに割り当てることができるメカニズムです。ただし、DTDでは、名前空間をDTD内で定義する必要があり、これは名前空間を使用する目的に違反します。

  • テキスト文字列データ型のみをサポートします。

  • オブジェクト指向ではありません。したがって、継承の概念をDTDに適用することはできません。

  • 要素のカーディナリティを表現する可能性は限られています。