|
|
XMLであることを宣言 |
HTML の場合、ファイルの先頭行に
と記述し、この文書が HTML で記述されていることを宣言していたが、XML の場合も同様に、ファイルの先頭行に
<?xml version="1.0" encoding = "Shift_JIS"?> |
と記述する。これによって、当該文書が XML であるということを宣言する。
XML であることを宣言しているこの箇所を、「XML 宣言」(XML declaration) という。
XML 宣言は以下の書式で記述される。
<?xml version="XML規格のバージョン番号" encoding = "記述文字コード名"?> |
現在の XML の規格は 1.0 であるので、通常は、「version = "1.0」と表記することになる。
(2000.10 には、バージョンがそのままの Second Edition が W3C より提唱されている。)
また、文字記述には、「encoding = "Shift_JIS"」以外にも、UNICODE
の場合の、「encoding = "UTF-16"」や「encoding = "UTF-8"」などが指定可能である。
なお、UNICODE で記述する場合、encoding の省略が可能である。(この場合、XML
宣言自体の省略も可能である。) |
|
|
|
|
タグ(要素)名のつけ方 |
|
HTML と異なり要素はユーザが自由に設定できる。ただし、要素名に使用可能な文字は次に限定されている。
先頭文字として使用可能 |
アルファベット・全角かな・全角カナ・漢字・コロン( ; )・アンダーバー(
_ ) |
二文字目以降に使用可能 |
上記文字郡・数字・ピリオド( . )・ハイフン( - ) |
使用不可能 |
半角カナ・全角数字・全角アルファベット |
また、以下の文字列は XML において定義済みの予約語であるため、要素名として使用禁止である。
キーワード |
意味 |
#FIXED |
属性の固定値 |
#IMPLIED |
属性のデフォルト値 |
#PCDATA |
文字データ |
#REQUIRED |
属性値の必須指定 |
ANY |
任意要素 |
ATTLIST |
属性リスト宣言 |
CDATA |
CDATAセクション |
DOCTYPE |
文書型宣言 |
ELEMENT |
要素型宣言 |
EMPTY |
空要素 |
encoding |
XML が使用している文字コード |
ENTITY |
エンティティ宣言 |
ENTITIES |
複数のエンティティ |
ID |
識別子 |
IDRES |
識別子参照 |
IDREFS |
複数の識別子参照 |
IGNORE |
無視指定(条件付セクション) |
INCLUDE |
処理指定(条件付セクション) |
NDATA |
データ記法宣言 |
NMTOKEN |
名前トークン |
NMTOKENS |
複数の名前トークン |
NOTATION |
記法宣言 |
PUBLIC |
公開識別子 |
standalone |
外部文書参照 |
SYSTEM |
システム識別子 |
version |
XML 文書のバージョン |
xml |
XML 宣言 |
xml:lang |
言語 |
xml:space |
空白以外の処理方法 |
これらの規約に従う限り、自由な要素名を作成することができる。
(例) <title> <タイトル> <xml-だよ> ... etc |
|
|
|
|
|
|
タグ(要素)の書き方 |
タグ(要素)の書き方には、以下の規約がある。
要素名の大文字・小文字は区別される。
空要素でない限り、かならず、終了タグを作る。
(例) <foo> なんとか、かんとか </foo> |
HTML の <p> タグのようなタグは終了タグが不要であったが、XMLの場合、<p></p>といった終了タグをつける必要がある。
もしくは、空要素と呼ばれる以下のような記述を行う。
空要素の用い方に関しては後述する。
要素はかならずネスト構造にする。
(例) (ネスト構造の例)
<toplevel> 1階層目
<second-level> 2階層目
<third-level> 3階層目 </third-level>
<third-level> 3階層目 </third-level>
</second-level>
</top-level> |
|
|
|
|
|
XMLの簡単な例 |
(例) (XMLの簡単な例)
<?xml version="1.0" encoding = "Shift_JIS"?>
<computer>
<display>
<maker> ○○通 </maker>
<size> ×× </size>
</display>
<cpu>
<maker> イン○○ </maker>
</cpu>
<keybord>
<color> brack </color>
</keybord>
</computer> |
サンプルはこちらから。 |
|
|