PI

PI

[1]SGMLXML】 Processing instruction。タグで明示される要素が、文書の構造を表現する (一般化マーク付け) のに対し、処理指令は特定の処理系に対して、その部分の処理をどうするのかを指令する (固有マーク付け)。

[2] >>1 文書がどう表現されるかを、文書の構造によって間接的に記述する SGML の思想では、処理指令は使わないに越したことはありません。特定処理系に依存しちゃいますから。でも、表現と構造の分離は完全には困難であるので、しばしば、特定の処理系に依存してしまうことは承知の上で、実際的な処理の内容を文書の一部に指定したいこともあります。そういうときに使います。

[3]

文書処理制御するシステム依存データからなるマークProcessing instruction。 JIS X 4151‐1992 3. (127)

SGML と XML

[3] おそらく現在最もよく使われている処理指令が、 XML宣言でしょう。 (XML 的には XML 宣言は処理指令ではありませんが、 SGML 的には処理指令です。) これも、 XML処理系という特定の処理系に対して処理を指令 (encoding とか、 XML の版とかを指定) するのですから、「特定の処理系に依存している」といえます。

[4] SGML では、処理指令の内容は自由に記述できました。 SGML 以前の従来の処理指令記述法をそのまま使えたのです。

一方で、 XML では、 処理指令対象 S 処理指令内容 という構成に限定されています。処理指令内容は相変わらず自由文ですが、処理指令対象は Name (実質 NCName) でないといけません。

[6] >>4 この「処理指令対象」の名前は、記法宣言を使って宣言することできます。

メモ

[10] TAG処理指令を使うのは好ましくないと考えているそうです (未確認)。 (名無しさん 2006-05-21 04:28:45 +00:00)

[11] Bug 319654 - Processing instructions in XUL are not added to the content model <https://bugzilla.mozilla.org/show_bug.cgi?id=319654> (名無しさん)

[12] Associating Style Sheets with XML documents (2000-05-03 23:40:39 +09:00 版) <http://www.w3.org/1999/06/REC-xml-stylesheet-19990629/>

The use of XML processing instructions in this specification should not be taken as a precedent. The W3C does not anticipate recommending the use of processing instructions in any future specification.

(名無しさん)

[13] XLIFF 1.1 Specification ( 版) <http://www.oasis-open.org/committees/xliff/documents/cs-xliff-core-1.1-20031031.htm#AppNaming_PI>

この仕様では一部の機能の動作を処理指令により制御することを認めています (が、具体的にどう実現するべきなのかには言及がありません)。 xliff- で始まる対象名を予約していますが、 この仕様自体は何も定義していません。 (名無しさん)

[14] XQuery and XPath Data Model 3.0 ( ( 版)) <http://www.w3.org/TR/xpath-datamodel-3/#ProcessingInstructionNode>

[15] WebDAV 文書では、処理指令は無視するべきです >>5WebDAV を拡張する仕様は処理指令規定として動作を定義するべきではありません >>5

[16] RFC 7749 - The "xml2rfc" Version 2 Vocabulary ( 版) <https://tools.ietf.org/html/rfc7749#section-1>

Processing Instructions (Section 2.6 of [XML]) generally are specific

to a given processor and thus are not considered to be part of the

vocabulary. See Section 4.1 of [TCLReadme] for a list of the

Processing Instructions supported by the first implementation of an

xml2rfc processor.