XML 入門 | DTD を使用して XML 構造を定義する | 要素と文字データを組み合わせる
XML でも HTML のインライン要素のように、文字データの中に要素を記述できる。
<p>
父は <strong>資産家</strong> である。
</p>
文字データと要素を組み合わせるには、#PCDATA と要素名を選択肢として定義する。
<!ELEMENT 要素名 (#PCDATA | 子要素名)*>
末尾の * により、文字データまたは子要素を 0 回以上記述できる。
父は <strong>資産家</strong> である。
---- --------------------- ------
#PCDATA strong 要素 #PCDATA
例えば次の DTD では、備考 の中に文字データと 重要 要素を繰り返し記述できる。
<!DOCTYPE 顧客情報[
<!ELEMENT 顧客情報 (顧客+)>
<!ELEMENT 顧客 (名前, 性別, 趣味*, (自宅 | 会社 | 携帯), 備考?)>
<!ELEMENT 名前 (#PCDATA)>
<!ELEMENT 性別 (#PCDATA)>
<!ELEMENT 趣味 (#PCDATA)>
<!ELEMENT 自宅 (#PCDATA)>
<!ELEMENT 会社 (#PCDATA)>
<!ELEMENT 携帯 (#PCDATA)>
<!ELEMENT 備考 (#PCDATA | 重要)*>
<!ELEMENT 重要 (#PCDATA)>
]>