チュートリアル
文責:山田祥寛最終更新日:2005年06月15日
XML(eXtensible Markup Language)ファイルを編集しよう
|
|
ASP.NETでは、標準的な設定ファイル(web.config)のフォーマットとして、XML(eXtensible Markup Language)形式を採用しています。
XML、というと、「また、なにやら難しいものが登場した」と及び腰になってしまう方もいるかもしれません。しかし、なんら恐れることはありません。XMLはHTMLにもよく似たマークアップ型の言語で、HTMLを理解している方ならば、それほど戸惑うことなく記述できるはずです。ここでは、設定ファイルを編集する上で困らない程度に、XMLの最低限の記法を紹介しておくことにします。
|
|
|
XMLファイルを記述する上での6つのルール
繰り返しですが、XMLはHTMLにとてもよく似た言語で、HTML同様、タグと属性でもって記述することができます。そうした意味では、HTMLとほとんど同じ要領で記述できると言っても良いとおもいます。ただし、XMLでは、HTMLでは「いい加減に書いても許されていたいくつかの点」に気をつけて記述する必要があります。
- XML宣言を指定する
この文書がXMLであることを示すための宣言です。<?xml~?>の形式で、XML文書の先頭に記述してください。
<?xml version="1.0" encoding="UTF-8" ?>
version属性が使用しているXMLのバージョン、encoding属性がXML文書を記述している文字コードを指定します。特別な理由がない限り、上の通りに記述しておけば間違いないでしょう。
- 唯一のルート要素を持たなければならない
XML文書は、「ルート要素」と呼ばれる最上位の要素を持つ必要があります。すべての要素はかならず、このルート要素の配下(中)に記述しなければなりません。
もっとも、これは別にXML特有のルールというわけではなく、HTMLでも実はルート要素はありました。そう、<html>タグがそれです。しかし、HTMLではもしも<html>タグを省略してもブラウザが適当に解釈してくれていましたが、XMLではそうはいきません。ルート要素を省略した場合にはエラーとなってしまいますので、注意が必要です。
ちなみに、web.configにおけるルート要素は、<configuration>要素です。
- 要素はかならず入れ子構造で記述しなければならない
たとえば、HTMLでは「<b><i>...</b></i>」のように、タグ同士がオーバラップした(折り重なった)状態が認められていました。しかし、XMLではこのような記述は不可です。かならず「<b><i>...</i></b>」のように入れ子になるように記述してください(算数のカッコを思い浮かべてもらえれば、わかりやすいかもしれませんね)。
- 閉じタグの省略はできない
たとえば、「<p>こんにちは」のような記述はXMLでは不可です。かならず「<p>こんにちは</p>」のように閉じタグを記述しなければなりません。
ただし、もしも<br>タグのように中身(配下のテキスト)がなく、閉じタグを省略したい場合には、以下のような記述も可です。
○ <br></br>
○ <br />
× <br>
閉じタグを省略する場合、開始タグを「~ />」で閉じなければならない点に注意してください。
- 大文字/小文字は区別される
たとえば、「<b>~</B>」という記述はXMLでは不可です。XMLでは大文字/小文字を区別するために、このような記述は<b>要素の閉じタグがないと(</B>は異なるタグと)見なされてしまうためです。
かならず「<b>~</b>」のように記述してください。このルールは、要素名だけではなく、属性の名前でも同じです。
- 属性値はダブル(シングル)クォーテーションで囲まなければならない
たとえば、「<table border="0">」のように、です。属性値が数値/文字列いずれの場合も、クォーテーションを省略することはできません。
XML編集時のちょっとしたヒント
いかがですか?
いずれの規則も(XML宣言を除いては)、別にXML特有というよりもHTMLでも本来、気をつけなければならなかったマークアップ上のルールばかりです。HTMLに慣れている方ならば、XMLはすぐに習得できる、といったわけがお分かりいただけるでしょうか。
もっとも、XMLはこのようにとても簡単な言語ですが、それでも時として、閉じタグを忘れてしまったり、ダブル・クォーテーションが抜けてしまったり、と編集上のミスが発生することは少なくありません。そのような編集ミスを防ぐためには、編集したXMLファイルをInternet Explorerで開いてみることです。
もしもXML構文上の間違いがあった場合には、Internet Explorerが検出して、(たとえば)以下のようなエラーを表示してくれるはずです。
XML文書に誤りがあった場合の表示
設定ファイルに誤りがあると、サイト全体が表示されなくなってしまうこともありますので、編集は十分に注意して行うことをお勧めします。