正しい構文を使用したXML文書が呼び出され"Well Formed" 。
DTDに対して検証するXML文書は両方ある"Well Formed"と"Valid" 。
妥当なXML文書
"Valid"のXML文書がある"Well Formed"もDTDの規則に準拠したXML文書、:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
DOCTYPE宣言は、上記の例では、外部DTDファイルへの参照です。 ファイルの内容は、以下の段落に示されています。
XMLのDTD
DTDの目的は、XML文書の構造を定義することです。 これは、法的要素のリストと構造を定義しています。
<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
DTDは、上記のように解釈されます。
- !DOCTYPEノートでは、ドキュメントのルート要素はノートであることを定義します
- !:ELEMENTノートはノート要素が要素を含んでいなければならないことを定義"to, from, heading, body"
- !型である要素に定義するELEMENT "#PCDATA"
- !からのELEMENTは型である要素から定義する"#PCDATA"
- !ELEMENTの見出しがタイプであることを見出し要素を定義する"#PCDATA"
- !ELEMENT体のタイプであることが本体要素を定義する"#PCDATA"
#PCDATAは、解析可能なテキストデータを意味します。
実体宣言のDTDを使用して、
DOCTYPE宣言は、文書で使用され、特殊文字や文字列を定義するために使用することができます。
例
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note [
<!ENTITY nbsp
" ">
<!ENTITY writer "Writer: Donald Duck.">
<!ENTITY copyright "Copyright: w3ii.">
]>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
<footer>&writer; ©right;</footer>
</note>
»それを自分で試してみてください エンティティは、3つの部分があります。アンパサンド(&)エンティティ名、およびセミコロンを(;)
DTD /スキーマを使用する場合?
DTDで、人々の独立したグループは、データを交換するための標準DTDを使用することに同意することができます。
DTDを使用すると、あなたが外の世界からの受信データが有効であることを確認することができます。
また、独自のデータを確認するためにDTDを使用することができます。
あなたはDTDを勉強したい場合は、私たちのお読みくださいDTDのチュートリアルを 。
ときDTD /スキーマを使用しないようにするには?
XMLは、DTD /スキーマを必要としません。
あなたがXMLで実験し、またはされている場合、あなたは時間の無駄かもしれDTDを作成し、小さなXMLファイルで作業しているとき。
あなたがアプリケーションを開発する場合は、文書の定義を追加する前に、仕様が安定するまで待ちます。 それ以外の場合は、お使いのソフトウェアが原因の検証エラーの動作を停止することがあります。