2011-07-16 11 views
8

.xmlページをapplication/xmlコンテンツタイプに、.xslページをtext/xmlに戻して、ブラウザでXML + XSL 2.0をレンダリングしようとしています。 Safariは主な文書、「文書として解釈されるがMIMEタイプapplication/xmlで転送されたリソース」を訴えている。 (ただしレンダリングはすべてうまくいく)。XML + XSLプレゼンテーションにはどのようなcontent-typeを使用する必要がありますか?

この警告メッセージを取り除きたいです。 XML文書にどのようなコンテンツタイプを使用する必要がありますか?

+1

「XML + XSL 2.0」は、XSLT 2.0を使用していることを意味しますか? XSLT 2.0をサポートするブラウザはありますか? – mzjn

+1

ブラウザはサポートされていませんが、Saxon CE(alpha)はブラウザにXSLT 2.0を提供しています。http://www.saxonica。com/ –

+1

Safari 5とChrome 15は、XSLT 2.0(Macの場合) – yegor256

答えて

7

私はtext/xmlをtext/xslとして使用して成功しました(あるいは、おそらくtext/xmlとしてOKです)。 text/xslは広く認識されていますが、 "公式"ではありません(私が理解する限り)。

RFC 3023によれば、「未処理のソースXMLドキュメントが一般ユーザーによって読み込み可能であれば、text/xmlはapplication/xmlよりも優れているMIMEユーザーエージェント(およびWebユーザーエージェント)です。 XML MIMEエンティティを普通のテキストとして表示するなど、text/xmlを明示的にtext/plainとして扱います.Application/xmlは、XML MIMEエンティティがカジュアルユーザに読めない場合に適しています。

私はPHPでこれを行う任意の変換前にhttps://tools.ietf.org/html/rfc3023#page-16

+0

XML文書の 'text/xsl'で正常に動作しますか? – yegor256

+0

申し訳ありません - スタイルシート用です。インスタンス文書のtext/xml。 – kennethmay

+0

RFC 3023によれば、「未処理のソースXML文書であるXML文書を一般のユーザーが読むことができれば、text/xmlはapplication/xmlよりも好ましいMIMEユーザーエージェント(およびWebユーザーエージェント) text/xmlのサポートでは、XML MIMEエンティティをプレーンテキストとして表示するなど、テキスト/プレーンとして扱います.Appleication/xmlは、XML MIMEエンティティが一般ユーザーによって読めない場合に適しています。 http://tools.ietf.org/html/rfc3023#page-16 – kennethmay

0

を参照してください:UFT-8と

header("Content-Type: application/xhtml+xml; charset=utf-8"); 

部分が重要である... WebKitのソース覗く

+1

彼はXMLのXHTMLへのサーバー側の変換を行っても、それでも問題になります(IE/MSHTMLはそのMIMEタイプをサポートしていません)。 "uft-8"はありませんが、コード内の "utf-8"は、出力が実際に* UTF-8でエンコードされている場合にのみ正しいです。 XHTMLの要件ではありません。あなたはその質問に答えなかった。 – PointedEars

4

、それはするのは簡単ですMIMEタイプが各リソースタイプに対して有効であると考えられるものを参照してください。非常に大きなリストではありません。

次の4つのMIMEタイプは "ドキュメント" のためにサポートされています。

  • text/html
  • text/xml
  • text/plain
  • application/xhtml+xml

スタイルシートの2つだけ有効なタイプがあります。

  • 明らかtext/xsl

  • text/csstext/htmltext/plain、およびtext/css種類は本当にここには適用されません。

    あなたはtext/xmlとして.xml文書やトリックを行う必要がありますtext/xslとして.xsl文書を送信、警告のサイレンシングにおいて実際には興味があれば。

    一方、すべてのレンダリングがうまくいくことを認めているので、「壊れていない場合は修正しない」戦略を検討することもできます。