Dtd-overview

提供:Dev Guides
移動先:案内検索

DTD-概要

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

XML文書は次のように定義することができます-

  • Well-formed -タグなどの一般的なXMLルールをすべてXMLドキュメントが正しくネストし、開始タグと終了タグのバランスをとる必要があり、空タグが「/>」で終わる必要がある場合、wellとして呼び出されます-formed。 + OR
  • 有効-XML文書は_well-formed_であるだけでなく、使用するタグ、それらのタグに含めることができる属性、および他のタグ内で使用できるタグを指定する利用可能なDTDにも準拠している場合に有効であると言われ、他のプロパティの中で。

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

image

タイプ

DTDは、次のようなXML文書の宣言に基づいて分類できます-

  • 内部DTD
  • 外部DTD

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

これらについては、章のリンクで詳しく説明します。/dtd/dtd_syntax[DTDSyntax]

特徴

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

  • XMLドキュメントに表示できる要素。
  • 表示される順序。
  • オプションおよび必須要素。
  • 要素の属性と、それらがオプションか必須か。
  • 属性にデフォルト値を設定できるかどうか。

DTDを使用する利点

  • ドキュメント-XMLファイルの独自の形式を定義できます。 このドキュメントを見ると、ユーザー/開発者はデータの構造を理解できます。
  • 検証-要素が正しい順序で表示されるか、必須の要素と属性が配置されているか、要素と属性が間違った方法で挿入されていないかなどをチェックすることにより、XMLファイルの有効性をチェックする方法を提供します。

DTDを使用することの欠点

  • 名前空間はサポートしていません。 名前空間は、要素名と属性名をグループに割り当てることができるメカニズムです。 ただし、DTDでは、名前空間をDTD内で定義する必要があり、名前空間を使用する目的に違反します。
  • _text文字列データ型のみをサポートしています。
  • オブジェクト指向ではありません。 したがって、継承の概念をDTDに適用することはできません。
  • 要素のカーディナリティーを表現する限られた可能性。