※できましたら先に DTD以降の項目、 2005年07月31日(日)更新 |
■DTDからSchema(スキーマ)へ
たけち: 前にDTDについて勉強したよね。 さらら: うん。XMLドキュメントの構造を表わすのに使うんだったわね。「万葉集テキスト」のDTDを作る例を学んだおかげで少しはわかったと思うわ。 たけち: そうだね。でも、これからはDTDに代わってSchema(スキーマ)が使われることになるんだ。 さらら: えぇ〜!! 何それ〜。せっかく勉強したのに・・・ たけち: あっ、うぅ・・・・まっ、まあ聞いてよ、さらら。「万葉集テキスト」ぐらいだったら良いんだけど、データの取り扱いにXMLを使おうとするといくつか不都合なことがあるんだ。そこで、DTDのかわりになるものとしてSchema(スキーマ)が検討されてきたんだ。で、2001年5月2日にやっとW3Cの勧告になったんだ。 |
さらら: そうなの・・・スキーマか・・・私の心にもスキーマ風(すきま風)が吹きそうだわ・・・ |
たけち: そっ、そう言わずに・・・・・Schema(スキーマ)はDTDと同じでどのようにXMLでドキュメントやデータの構造・意味を表わすか、その書き方を決めたものだから、これまで学んだことは生きるんだからね。それに、ENTITYなんかはDTDの記法が生きているからね。 さらら: そっ、そうね。これまで学んだこととの違いを学べはいいのよね。どうしてDTDじゃだめで、SChema(スキーマ)だといいのかを教えて。 たけち: そうだね。じゃあ、まずそのお話から始めようね。 さらら: うん。 |
■DTDのまずい点とSchema(スキーマ)での改善
たけち: XMLの応用を広く考えると、DTDにはいくつかのまずい点があるんでSchemaで改善されたんだ。 |
Schemaで改善した主な点
|
さらら: あっ、なるほどって思えることもあるわね。XMLテキストとして表現できると読みやすくなるわよね。 たけち: それに、XMLだからXSLTでscehma(スキーマ)を変換したり、DOMを使ってscehma(スキーマ)にアクセスしたりできるよね。 さらら: そっか・・・・でも、それで何ができるかは今の私にはピンとこないけど。 (^ ^; たけち: W3CでのSchemaの検討は1998年11月に始まって、2001年5月2日に以下のものとしてW3Cの勧告になったんだ。 |
W3C Schema勧告
|
さらら: あらら・・・ずい分とたくさんありそうね。面倒くさくなぁい?? たけち: うっ、うん。やっぱり全部を見るのは大変だから、最低限知っておいたほうがいいものに絞って見てゆこうね。 さらら: うん。 たけち: まずは、こんな雰囲気になるというところを見ておくだけにしようね。つぎの図のような簡単な構造のときに、それぞれDTDとSchemaではどんな風に書くのかを載せておくね。 |
DTDとSchemaの簡単な例(上図のサンプル) | |
---|---|
DTD | Schema |
<!DOCTYPE poems [ |
<?xml version="1.0" encoding="Shift_JIS" ?> |
さらら: ふ〜ん。やっぱりずい分と違うのね。なんとなくはわかる感じだけど、細かいところでよく分からないことがあるわ。 たけち: うん。細かいことは次回から勉強していけばいいよね。 さらら: うん。 たけち: じゃあ、今回はこれでおしまい。 さらら: ありがと。 → 次回はXMLスキーマの書き方-1 型です。 (^ ^)v |
■XMLスキーマのコーナーは、TAKABEさま(XSLTの遊び部屋)の全面的なご協力をいただいて作成しています。 |