XML処理命令 (Processing Instruction)

XMLの処理命令(PI: Processing Instruction)とは、XMLのバージョンとエンコーディング(XMLで使用する文字コード)を宣言するものです。XMLの1行目に出現します。この記事では、XMLの処理命令について解説します。

XML宣言

XML宣言はXMLのバージョンとエンコーディング(XML文書で使用する文字コード)を宣言します。XML宣言は省略することが可能です。

<?xml ?>

属性

以下に示す属性をXML宣言に指定できる。

version
XMLのバージョンを指定する。1.0 又は 1.1 のいずれかを指定できる。
<?xml version="1.0" encoding="UTF-8"?>
encoding
XML文書の文字セットを指定する。
<?xml encoding='UTF-8'?>
standalone
外部マークアップ宣言の有無を指定する。 standalone="yes" の場合、外部マークアップ宣言が存在しないことを示す。 standalone="no" の場合、外部マークアップ宣言が存在することを示す。
standalone
説明
yes 外部マークアップ宣言が存在しない
no 外部マークアップ宣言が存在する
<?xml version="1.1" standalone='yes'?>

スタイルシート処理命令

xml-stylesheet処理命令は、XMLからXSLTスタイルシートを利用するよう指定します。

書式

<?xml-stylesheet [attribute=value ...] ?>

属性

alternative

yes か noを指定します。

charset
文字セットを指定します。大文字と小文字の区別はしません。
href

スタイルシートのURIを指定します。

title

タイトルを指定する。

type
MIMEタイプを指定します。通常、"text/xsl" と指定します。
media
参照先の文書がどんなメディアに適したものかを指定します。
意味
screen ページ区切りのないコンピュータ画面
print ページ区切りのある印刷出力、または印刷プレビュー画面
tty 端末(コンソール)
tv テレビ画面のようにコンピュータ画面より解像度の低いカラーディスプレイ
projection プロジェクター
handheld 小画面でモノクロ・狭帯域の携帯デバイス
aural 音声合成装置
all すべてのデバイス

使用例

XML 処理命令 xml-stylesheet の使用例を次に示します。

<?xml version="1.0" encoding="Shift_JIS" ?>
<?xml-stylesheet href="www.sample.com/style.xsl" type="text/xsl" ?>
<book>
  <title>我輩は猫である</title>
  <author>夏目漱石</author>
</book>

参考文献

World Wide Web Consortium (2006) Extensible Markup Language (XML) 1.1 (Second Edition)