サーチ…


前書き

一般にDTDと呼ばれるXML文書型宣言は、XML言語を正確に記述する方法です。 DTDは、適切なXML言語の文法規則と比較して、XML文書の構造と語彙の有効性をチェックします。 DTDは、XML文書の構造と有効な要素と属性を定義します。

ドキュメント型宣言

XML文書はDTDを含むことができます。 DTDはDocument Type Declarationの略です。 DTDは、 <!DOCTYPE root-element-name >で始まります<!DOCTYPE root-element-name >ここで、 doc-element-name nameは、いわゆる文書要素(最上位にある1つの要素)の名前と一致しなければなりません。

<?xml version="1.0"?>
<!DOCTYPE document>
<document>
  <!-- the rest of the document -->
</document>

エンティティ

DTDにはエンティティ宣言を含めることができます。

<?xml version="1.0"?>
<!DOCTYPE document [
  <!ENTITY my-entity "This is the replacement text">
]>
<document>
  <!-- the rest of the document -->
</document>

エンティティについては、 このトピックで詳しく説明します

内部DTDを持つXML文書

要素がXMLファイル内で宣言されている場合、DTDは内部DTDと呼ばれます。内部DTDとして参照するには、XML宣言のスタンドアロン属性をyesに設定する必要があります。

内部DTDとto、from、およびmessageのプロパティを含むノートを記述するXMLは、次のようになります。

 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!DOCTYPE note [
<!ELEMENT note (to,from,message>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT message (#PCDATA)>
]>
<note>
<to>Mr.X</to>
<from>Mr.Y</from>
<message>Stack Overflow is awesome </message>
</note> 

外部DTDを持つXML文書

外部DTDでは、要素はXMLファイルの外部で宣言されます。有効なURLまたは有効なシステム属性を指定することによってアクセスされます。外部DTDとして参照するには、XML宣言のスタンドアロン属性をnoに設定する必要があります。

to、from、およびmessageのプロパティを含む注釈を記述するXMLを以下に示します。

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
  <to>Mr.X</to>
  <from>Mr.Y</from>
  <message>Stack Overflow is awesome</message>
</note>

上記のXMLの外部DTD、 note.dtdを以下に示します

<!DOCTYPE note [
<!ELEMENT note (to,from,message>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT message (#PCDATA)>
]>


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow