質問: xslで、xmlの空タグを制御したい。 値がないxml文書に、 こう書かれてしまうものを、 このように出力したいのですが、出来ずでした。 以下は、私のやり方です。 ■ xsl xml version="1.0" encoding="shift_jis"? ■ xml xml version="1.0" encoding="shift_jis"? value ご教授、よろしくお願いいたします。
回答: output method="xml" だと は と等価だから xslt からは制御はできないよ? そういう出力を強制するオプションを持つ処理系を使うとか。 無理やりやるとしたら xsl:comment かな? 処理系によるけど。。。 ■ 検証用ファイル [q7574909.xml] xml version="1.0" encoding="utf-8"? text [q7574909.xsl] xml version="1.0" encoding="utf-8"? ■ 結果(xalan) c:\xalan-j_2_7_1>java -cp xalan.jar;serializer.jar;xml-apis.jar;xercesimpl.jar org.apache.xalan.xslt.process -in q7574909.xml -xsl q7574909.xsl xml version="1.0" encoding="utf-8"? text c:\xalan-j_2_7_1> ■ 結果(xsltproc) $ xsltproc q7574909.xsl q7574909.xml xml version="1.0" encoding="utf-8"? text $