2005年06月19日(日)更新 |
■要素型宣言(element type declaration)
たけち: 前回は、DOCTYPEの書き方について学んだよね。 さらら: えぇ。 たけち: 今回は、要素型宣言について学ぼうね。 さらら: 要素型宣言って、XMLデータを構成する要素がどのような階層関係になるのかっていうのを宣言するんだったわね。 |
■要素型宣言の書き方
たけち: そうだね。じゃあ、まず、要素型宣言の書き方をみてゆこうね。次の図を見て。 さらら: はい。 |
さらら: 「要素名」つて、そのまま、要素の名前よね。でも、内容モデルって何かしら。難しそうな言葉ね。 たけち: ちょっと堅苦しい名前だけど、内容モデルのところには、要素の内容が文字列なのか、子要素を持つのか、空なのか、それとも任意なのかを書けばいいんだよ。
さらら: 混合とか任意、ってちょっとイメージわかないけど・・・ たけち: うん。ここからひとつずつ書き方を見ていくから心配しないで。今回は、文字列について見てみようね。 さらら: えぇ、少しずつお願いね。 (^ ^* |
■内容モデル=文字列の場合
さらら: 要素の内容が文字列ってことで、子要素なんかを持たないってことよね。 たけち: そうそう。で、要素の内容が文字列の場合には次の図のように書くんだよ。 |
さらら: "("と")"を含めて(#PCDATA)って書くの? たけち: そうだよ。 さらら: へぇ〜。DTDでこう書いておくと、具体的なXMLデータでは、その要素の内容が文字列になるってことなのね。 たけち: そういうことだね。 |
■内容モデル=文字列の例
たけち: じゃあ、確認のために、簡単なサンプルを書いてみようね。 さらら: はい。 |
さらら: この例だと、要素名がnameという要素の内容モデルが(#PCDATA) 文字列の場合は、XMLデータのnameという要素には文字列しかないのよね。分かったわ。 たけち: そうだね。じゃあ、次回からは、別の内容モデルについてみてゆこうね。 さらら: はい。ありがと。 → 次は、要素型宣言(2) の予定です。 (^ ^; |
注 1) PCDATAは「Parsed Character DATA」という意味です。XMLパーサはこの文字列を解釈します。たとえば "&"が"&"に置き換えられたりしますよね。 |