ホーム HTML CSS XML JAVASCRIPT   PHP SQL MORE...   リファレンス 事例集    

DTD - 要素

« 前章へ 次章へ »

要素は、DTDのELEMENT宣言で宣言します。


要素宣言

DTDにおいて、次の構文からなる要素宣言によりXML要素を宣言します:

<!ELEMENT element-name category>
または
<!ELEMENT element-name (element-content)>


空要素

空要素は、カテゴリ・キーワードEMPTYで宣言します:

<!ELEMENT element-name EMPTY>

例:

<!ELEMENT br EMPTY>

XML 例:

<br />


構文解析済文字データを持つ要素

構文解析済文字データだけを持つ要素は、括弧の中へ#PCDATAを宣言します:

<!ELEMENT element-name (#PCDATA)>

例:

<!ELEMENT from (#PCDATA)>


任意の内容を持つ要素

カテゴリ・キーワードANYにより宣言された要素は、パース可能データの任意な組み合わを含むことができます:

<!ELEMENT element-name ANY>

例:

<!ELEMENT note ANY>


子(シーケンス)を持つ要素

1つ以上の子を持つ要素は、括弧内の子要素の名前により宣言します:

<!ELEMENT element-name (child1)>
または
<!ELEMENT element-name (child1,child2,...)>

例:

<!ELEMENT note (to,from,heading,body)>

子をカンマ区切りで順番に宣言すると、子は文書に同じ順序で出現しなければなりません。 全ての宣言には、子も宣言しなければなりませんし、子は子も持つことができます。 "note"要素の全宣言は以下の通りです:

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>


要素が1回だけ発生することの宣言

<!ELEMENT element-name (child-name)>

例:

<!ELEMENT note (message)>

上記の例は、子要素"message"が1回、そして1度だけ"note"要素に 出現しなければならないことを宣言しています。/p>


要素が最低限1回発生することを宣言

<!ELEMENT element-name (child-name+)>

例:

<!ELEMENT note (message+)>

上記例の + サインは、子要素"message" が1回以上"note"要素に 出現しなければならないことを宣言します。


要素が0回以上発生することを宣言

<!ELEMENT element-name (child-name*)>

例:

<!ELEMENT note (message*)>

上記例の * サインは、子要素"message"が0回以上"note"要素に出現できることを宣言します。


要素が0回または1回発生することを宣言

<!ELEMENT element-name (child-name?)>

Example:

<!ELEMENT note (message?)>

上記例の ? サインは、子要素"message"が0回または1回、 "note"要素に出現できることを宣言します。


どちらかの内容が発生することを宣言

例:

<!ELEMENT note (to,from,header,(message|body))>

上記例は、"note"要素が"to"要素、"from"要素、"header"、および"message"または "body"要素のどちらかを含まなければならないことを宣言しています。


混在した内容の宣言

例:

<!ELEMENT note (#PCDATA|to|from|header|message)*>

上記例は、"note"要素がパース済の文字データ、"to"、 "from"、"header"、または"message" 要素が0回以上出現できることを宣言します。


« 前章へ 次章へ »