<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <code class="XPath"><code class="XSLTe"><var>xslt:</var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">output</anchor></code>/@<code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">method</anchor></code> = 'xml'</code>
の時、 <dfn>XML 出力方式</dfn> (XML output method)
になります。この方式は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">整形式外部解析実体</anchor>を出力します。
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/xslt#section-XML-Output-Method" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/xslt#section-XML-Output-Method</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <code class="XSLTe"><var>xslt:</var>output</code> 要素の意味と既定値:<table><tbody><tr><td>属性名</td><td>既定値</td><td>意味</td></tr><tr><td><code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">encoding</anchor></code></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UTF-8</anchor> or <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UTF-16</anchor></td><td>符号化方式</td></tr><tr><td><code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">indent</anchor></code></td><td>'no'</td><td>字下げ</td></tr><tr><td><code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">media-type</anchor></code></td><td><code class="MIME"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">text/xml</anchor></code></td><td>媒体型</td></tr><tr><td><code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">standalone</anchor></code></td><td>(指定なし)</td><td>非依存文書宣言</td></tr><tr><td><code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">version</anchor></code></td><td><code class="XML">1.0</code></td><td>XML の版</td></tr></tbody></table></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> 字下げを行う場合、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>を落とす処理
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白保持要素</anchor>は <code class="XSLTe"><var>xslt:</var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">text</anchor></code>
だけ) をしたとすれば字下げを行わない場合と同じ結果が得られる方法を使うことが推奨されています。</p><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <code class="XSLTa">doctype-system</code> 属性が指定されている場合又は <code class="XPath">@<code class="XSLTa">standalone</code>='yes'</code> の場合は、出力は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">整形式</anchor> XML 文書実体でなければなりません。 <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E4</anchor-external></li></ul><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end>
&amp;
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor> <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">2005-06-07 02:48:04 +00:00</weak>)</p><form xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" ref="comment"></form><section><h1>Escape の無効化</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <code class="XSLTe"><var>xslt:</var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">text</anchor></code>
要素と <code class="XSLTe"><var>xslt:</var><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">value-of</anchor></code>
要素には <code class="XSLTa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">disable-output-escaping</anchor></code>
属性があります。</p><p>XML 出力方式及び <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML出力方式</anchor>では、
この属性の値 <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">(既定値 <code xmlns="http://www.w3.org/1999/xhtml" class="XSLTa">no</code>)</weak>
が <code class="XSLTa">yes</code> であるときには、
escape を行いません。
ほとんど XML/HTML だけど微妙に非整形式、
みたいな結果が欲しい時(謎)に有用です。
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/xslt#section-Text-Output-Method" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/xslt#section-Text-Output-Method</anchor-external></p><p>この仕組みは必要があるなら便利ですが、
そうでなければスタイルシートがややこしくなったり、
不適当な結果を出力をしてしまう虞がある諸刃の剣です。
素人はおとなしく他の普通の仕組みを使いましょう(謎)。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> Escape しないと出力できない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>があるときは<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">誤り</anchor>です。</p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結果木</anchor>で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文節</anchor>になる以外の場面で disable 
されているのも誤りです。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結果木素片</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">数値</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字列</anchor>に変化される時に
disable されているものがあるのも誤りです。</p><p>処理系が disable するのに対応していないときも誤りです。
以上の誤りは通知するか、又は disable を無視することで回復しないといけません。<ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結果木素片</anchor>内に disable されている節があるときも、意図したとおりに動作するべきです。 <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/1999/11/REC-xslt-19991116-errata/#E2</anchor-external></li></ul></p></section></body></html>