©の表示について
©の表示について
いつもお世話になっております。
件名どおりなのですがxslにて「©」を記述して表示させようとすると
下記のようなエラーページが表示されてしまいます。
---------------------------------------------------------------------------------
CMS Designer : Xsl Translation error
[message]
XML parser error 11: undefined entity (code: 2)
[XSL]
「©」を記述したxslファイルまでのパス
[line]
13
[module]
Sablotron
---------------------------------------------------------------------------------
「©」を表示させることはできないのでしょうか?
よろしくお願い致します。
件名どおりなのですがxslにて「©」を記述して表示させようとすると
下記のようなエラーページが表示されてしまいます。
---------------------------------------------------------------------------------
CMS Designer : Xsl Translation error
[message]
XML parser error 11: undefined entity (code: 2)
[XSL]
「©」を記述したxslファイルまでのパス
[line]
13
[module]
Sablotron
---------------------------------------------------------------------------------
「©」を表示させることはできないのでしょうか?
よろしくお願い致します。
Re: ©の表示について
nagashimaさん、ご質問ありがとうございます。
©についてですが、この文字実体参照は(X)HTMLでは定義されている
のですが、XSLでは定義されていない為、そのままですと使用することができません。
文字実体参照ではなく、数値実体参照を使うと、同じ文字を出力することが
可能です。(※「&」は半角にして下さい。下記記述では全角になっています)
もしくは、デザイン定義ファイル(*.xslファイル)の先頭の<?xml〜>の下に、
のように、"copy"の文字実体参照を定義することでも使用可能になります。
一度お試し頂ければ幸いです。
©についてですが、この文字実体参照は(X)HTMLでは定義されている
のですが、XSLでは定義されていない為、そのままですと使用することができません。
文字実体参照ではなく、数値実体参照を使うと、同じ文字を出力することが
可能です。(※「&」は半角にして下さい。下記記述では全角になっています)
コード: 全て選択
&#169;
コード: 全て選択
<!DOCTYPE xsl:stylesheet [
<!ENTITY copy "&#169;" >
]>
一度お試し頂ければ幸いです。
Re: ©の表示について
nagashimaさん、お手数をおかけしております。
「©」が半角スペースになってしまうということで、いろいろ調べて
見たのですが、原因がつかめませんでした。m(__;)m
弊社試験環境では問題なく表示できている為、何かサーバ環境的な要因である
可能性があるかと思います。
出力の文字エンコーディングはEUC-JPのままなのですよね。
一度、site.config.xml に次の「output」要素を追加して頂いてもよろしいでしょうか。
これで問題が改善するかもしれません。
それでも問題が改善しない場合、作成されたデザイン定義ファイルを弊社まで
お送り頂いてもよろしいでしょうか。
アドレスはcms(アットマーク)al-design.jp になります。
「©」が半角スペースになってしまうということで、いろいろ調べて
見たのですが、原因がつかめませんでした。m(__;)m
弊社試験環境では問題なく表示できている為、何かサーバ環境的な要因である
可能性があるかと思います。
出力の文字エンコーディングはEUC-JPのままなのですよね。
一度、site.config.xml に次の「output」要素を追加して頂いてもよろしいでしょうか。
コード: 全て選択
<?xml version="1.0" encoding="UTF-8"?>
<site>
<output disable-xslt-encoding="True" />
それでも問題が改善しない場合、作成されたデザイン定義ファイルを弊社まで
お送り頂いてもよろしいでしょうか。
アドレスはcms(アットマーク)al-design.jp になります。
Re: ©の表示について
※この投稿はnagashima様によるものです。webmasterが間違って返信ではなく編集で上書きしてしまった為、代理で再投稿しました。
webmaster様
ご返事ありがとうございます。
さっそく試させて頂きましたが、表示されませんでした。
エラーは表示されないようになりました。
の部分のみ表示されない状態です。
ソースを表示し確認しましたが、半角スペースが入っていました。
両方試しましたが同じ現象です。
「&」は半角にして使用しています。
なにか他に方法はありますでしょうか?
よろしくお願い致します。
webmaster様
ご返事ありがとうございます。
さっそく試させて頂きましたが、表示されませんでした。
エラーは表示されないようになりました。
コード: 全て選択
&#169;
ソースを表示し確認しましたが、半角スペースが入っていました。
コード: 全て選択
&#169;
コード: 全て選択
<!DOCTYPE xsl:stylesheet [
<!ENTITY copy "&#169;" >
]>
両方試しましたが同じ現象です。
「&」は半角にして使用しています。
なにか他に方法はありますでしょうか?
よろしくお願い致します。
Re: ©の表示について
nagashimaさん、お手数をおかけしております。
「©」が半角スペースになってしまうということで、いろいろ調べて
見たのですが、原因がつかめませんでした。m(__;)m
弊社試験環境では問題なく表示できている為、何かサーバ環境的な要因である
可能性があるかと思います。
出力の文字エンコーディングはEUC-JPのままなのですよね。
一度、site.config.xml に次の「output」要素を追加して頂いてもよろしいでしょうか。
これで問題が改善するかもしれません。
それでも問題が改善しない場合、作成されたデザイン定義ファイルを弊社まで
お送り頂いてもよろしいでしょうか。
アドレスはcms(アットマーク)al-design.jp になります。
「©」が半角スペースになってしまうということで、いろいろ調べて
見たのですが、原因がつかめませんでした。m(__;)m
弊社試験環境では問題なく表示できている為、何かサーバ環境的な要因である
可能性があるかと思います。
出力の文字エンコーディングはEUC-JPのままなのですよね。
一度、site.config.xml に次の「output」要素を追加して頂いてもよろしいでしょうか。
コード: 全て選択
<?xml version="1.0" encoding="UTF-8"?>
<site>
<output disable-xslt-encoding="True" />
それでも問題が改善しない場合、作成されたデザイン定義ファイルを弊社まで
お送り頂いてもよろしいでしょうか。
アドレスはcms(アットマーク)al-design.jp になります。
Re: ©の表示について
webmaster様
お世話になります。
クライアント先から送られてきたhtmlファイルやcssなどがshift_jisで作られていたため、あわせてshift_jisで出力するようにsite.config.xmlにて指定してあります。
shift_jisの指定をなくし、文字コードをeuc-jpにもどし、
の指定を追加し試してみました。
エラーは出ませんでしたが、「&#copy;」の部分が文字化けしています。
デザイン定義ファイルをお送りしたほうがよろしいでしょうか?
お世話になります。
出力文字コードの変換を使用しshift_jisにしています。出力の文字エンコーディングはEUC-JPのままなのですよね。
クライアント先から送られてきたhtmlファイルやcssなどがshift_jisで作られていたため、あわせてshift_jisで出力するようにsite.config.xmlにて指定してあります。
shift_jisの指定をなくし、文字コードをeuc-jpにもどし、
コード: 全て選択
<output disable-xslt-encoding="True" />
エラーは出ませんでしたが、「&#copy;」の部分が文字化けしています。
デザイン定義ファイルをお送りしたほうがよろしいでしょうか?
Re: ©の表示について
nagashimaさん、お手数をおかけしております。
あれからいろいろ調べた所、Shift_JISの場合、copyrightマークが文字コードセット
に存在しないようです。その為、半角スペースになってしまうものと思われます。
弊社環境で試した所、Firefox上では「?」で表示されました。
そこで、ちょっと面倒なのですが、「&copy;」をcopyrightマークに変換せず、
そのままブラウザに表示する方法をお試し下さい。
以下のコードで、ブラウザにそのまま文字実体参照が送られるかと思います。
この方法の場合、ENTITYの定義は不要となりますので削除して下さい。
outputのdisable-output-encodingも元に戻してくださって結構です。
考えてみれば、こちらの方法の方が正攻法かと思います。m(__)m
回り道になってしまい、申し訳ありませんでした。
あれからいろいろ調べた所、Shift_JISの場合、copyrightマークが文字コードセット
に存在しないようです。その為、半角スペースになってしまうものと思われます。
弊社環境で試した所、Firefox上では「?」で表示されました。
そこで、ちょっと面倒なのですが、「&copy;」をcopyrightマークに変換せず、
そのままブラウザに表示する方法をお試し下さい。
以下のコードで、ブラウザにそのまま文字実体参照が送られるかと思います。
コード: 全て選択
<xsl:text disable-output-escaping="yes">©</xsl:text>
outputのdisable-output-encodingも元に戻してくださって結構です。
考えてみれば、こちらの方法の方が正攻法かと思います。m(__)m
回り道になってしまい、申し訳ありませんでした。
Re: ©の表示について
webmaster様
お世話になります。
上記の方法で表示できました。
いろいろとお調べいただきありがとうございました。
お世話になります。
コード: 全て選択
<xsl:text disable-output-escaping="yes">©</xsl:text>
いろいろとお調べいただきありがとうございました。