Firefoxの場合:
<?xml version="1.0" encoding="utf-8"?>
<math display="block" xmlns="http://www.w3.org/1998/Math/MathML">
<mi>ρ</mi>
</math>
「未定義のエンティティ」エラーが発生します。
私はそこに何かが欠けていることを知っています。問題を修正するために何を書くべきかわかりません。すべてのUnicode文字をドキュメントに書き直さないようにしたいと思います。
編集私は次のことを試しましたが、まだ機能していません、同じエラー:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE math [
<!ENTITY % HTMLlat1 PUBLIC
"-//W3C//ENTITIES Latin 1 for XHTML//EN"
"xhtml-lat1.ent">
%HTMLlat1;
<!ENTITY % HTMLsymbol PUBLIC
"-//W3C//ENTITIES Symbols for XHTML//EN"
"xhtml-symbol.ent">
%HTMLsymbol;
<!ENTITY % HTMLspecial PUBLIC
"-//W3C//ENTITIES Special for XHTML//EN"
"xhtml-special.ent">
%HTMLspecial;
]>
<math display="block" xmlns="http://www.w3.org/1998/Math/MathML">
<mi>ρ</mi>
</math>
編集クロムでは、これは次のメッセージになります:
error on line 6 at column 13: PEReference: %HTMLlat1; not found
warning on line 10 at column 15: PEReference: %HTMLsymbol; not found
warning on line 14 at column 16: PEReference: %HTMLspecial; not found
編集.entファイルをダウンロードし、参照をローカルhttp://パスまたはfile:///パスに変更しようとしましたが成功しませんでした。主題に関する同様の投稿:PHPのXMLカタログ
ブラウザのクイック回避策を編集します。
<!DOCTYPE html>
<math display="block" xmlns="http://www.w3.org/1998/Math/MathML">
<mi>ρ</mi>
</math>
XMLヘッダーを非表示にする必要があるため、HTMLとして理解されます。
それにもかかわらず、ドキュメントがXMLとして宣言されている間、質問はエンティティをインポートすることであったため、これは質問に答えません。
答え
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE math PUBLIC "-//W3C//DTD MathML 2.0//EN" "http://www.w3.org/Math/DTD/mathml2/mathml2.dtd">
<math display="block" xmlns="http://www.w3.org/1998/Math/MathML">
<mi>ρ</mi>
</math>