WWW INFOMATION
XML top >>XML詳細仕様 文字規則

文字規則 (Character rule)

 XMLドキュメントで使用可能な文字は以下のものがあります。
文字コード 内容
#x9 水平タブ
#xA ラインフィード
#xD キャリッジリターン
#x20-#xD7FF UNICODE and ISO/IEC 10646
#xE000-#xFFFD UNICODE and ISO/IEC 10646
#x10000-#x10FFFF  UNICODE and ISO/IEC 10646

※上記はXML 1.0の仕様です。XML 1.1からは、「使用できる文字の規定」から「使用できない文字の規定」に変更になりました。基本的に、UNICODEであれば大体使用可能です。

プログラミング経験がない場合、文字コードはわかりにくいと思うので若干説明します。
コンピュータは全て数字で処理するため、文字もコンピュータ内部では数字で扱われています。例えば、Aというアルファベットは、数字の65、Bは66という感じです。この文字に対応する数字のことを文字コードといいます。(文字と文字コードの対応は、符号化方式により異なります。例えば、同じ"あ"という文字でも、Shift_JISとUNICODEでは、文字コードが異なります。とても、わかりにくい状況なのですが、国際機関が定めた文字コード表や、日本の機関が定めた文字コード表、正式には定められてないが一般的に使用される文字コード表など、歴史の都合により多数の文字コードが存在する現状となっています。100年くらいすれば、選別されると思うのですが。。)

 XMLでは、UNICODEが推奨されているため、UNICODE以外の使用は定義されていませんが、XML宣言内に他の符号化方式を記述することによってUNICODE以外の文字コードを使用することも可能です。(基本はあくまでUnicodeを使用することになっているため、プログラムなどでは、他の文字コードに対応していない恐れがあることに注意して下さい。)

 XMLで文書中に直接文字コードを使用することも可能です。文字コードを使用する場合、文字コードの前に、10進の場合&#を、16進の場合、&#xをつけ、コードの後に;をつけます。

<?xml version="1.0" ?>
<example>

<!-- 通常 -->
<Sentence>ABCDEF</Sentence>

<!-- 10進 -->
<Sentence>&#65;&#66;&#67;&#68;&#69;&#70;</Sentence>

<!-- 16進 -->
<Sentence>&#x41;&#x42;&#x43;&#x44;&#x45;&#x46;</Sentence>

</example>

 このXMLファイルを置いておくので表示してみて下さい。→上のXMLファイル
表示は全て”ABCDEF”になったと思います。

戻る   進む