WebにおけるXMLの利用 - lecture.ecc.u

XML
当初、インターネット上における情報
交換のマークアップ言語としてスタート
したが、いまや蓄積やデータベースの
標準的情報表現として定着してきてい
る。
XML
• eXtensible Markup Language の略
– eXtensible  タグを自由に作れる
• タグは開きタグ<abc> と閉じタグ</abc>で一対
• インターネット上で交換可能な文書の標準フォー
マット
– 文書の蓄積のための標準フォーマットでもある
– マイクロソフトでも全ての文書(Word, etc.)をXML化す
る計画
• テキスト形式
XML文書の構造
<$xml version=“1.0” encoding=“shuft_jis”?> xml宣言
<!DOCTYPE sample[
DTD
<!ELEMENT sample (goodsname, price)>
(Docu
<!ELEMENT goodsname (#PCDATA)>
ment
Type
<!ELEMENT price (#PCDATA)>
Definiti
<!ATTLIST goodname id ID #REQUIRED> ]>
on)
<goosdname id=“sample1”>
<goodsname>マウスパッド</goodsname>
<price>500円</price>
</goodsname>
XML
本体
DTDは省略可能
XML文書の一般的文法に適合した文書を
整形式(well-formed)XML文書 と呼ぶ
DTDにも適合した文書を
検証済み(valid)XML文書 と呼ぶ
DTDは電子商取引などの特殊な応用に対
して定義される。
このようなDTDに対してvalidなXML文書なら、
DTDを念頭においたプログラムでの処理(情
報取り出し、計算など)が実行できる。
XMLの文法
名前の付けられた文書内の単位
要素(element)
要素は木構造で結ばれ文書を構成する
文書の根を root element
文書の葉(端点)は具体的文字列
(#PCDATA)や画像など
文書:sample1
goodsname
price
XMLの文法
タグは入れ子でなければならない。
 タグは交差してはいけない
<a>….<b> ….</b>…..</a>  OK
<a>….<b>….</a>…..</b>
 NG
XML文法
• 以下の特殊文字はタグで使われるので、
データとして使用するときには の右側の
ように記す
• <

&lt;
• >

&gt;
• &

&amp;
• ’ 
&apos;
• ”

&quot;
XML文法
命名法
• タグの先頭文字は、
 アルファベット、漢字、ひらがな、
全角カタカナ、 コロン、_
• タグの先頭以外では
 半角カタカナ、全角数字以外は使える
コメント <!-- 文字列 -->
処理命令 <? 命令 ?>
名前空間 name space
名前空間とは、あるアプリケーションで使
用すると約束したタグ集合のこと
デフォールト名前空間を宣言すると、XML
文書全体でその名前空間が有効
<sample-doc xmlns = “http://…../dtd/namesp”>
<campany-name>というタグが ../namesp という
URIで定義されている
…..
<campany-name>ABソフトウェア株式会社
</campany-name> …..
</sample-doc>
名前空間接頭辞による
<sample1 xmlns:cat =“http://www…/dtd/catname”
xmlns:dog=“http://www…/dtd/digname”>
…..
<sample>
<cat:name>みけ</cat:name>
<dog:name>ぽち</dog:name>
</sample>