Linux の firefox で XSLT スタイルシートが読み込めない

Linux (Fedora Core 2)の firefox (1.0.4) で、xml-stylesheet で XSLT スタイルシートを関連付けた XML の表示ができない。正確には拡張子が .xsl にした XSLT スタイルシートが読み込めず、「スタイルシートの読み込みエラーです(null)」などとエラーになってしまう。そのスタイルシートfirefox で表示しようとすると何故かダウンロード画面になって、よく見ると MIME タイプが text/x-xslt なんて変なものになっている。

どうも OS 側の MIME タイプデータベースがおかしいらしい。GNOME のファイルの関連付けを見てもわからなかったのだが、設定ファイル /usr/share/mime/packages/freedesktop.org.xml のエントリが間違っているせいだった。

  <mime-type type="text/x-xslt">
    <comment>XSLT stylesheet</comment>
    <comment xml:lang="no">XSLT-stilark</comment>
    <glob pattern="*.xslt" />
    <glob pattern="*.xsl" />
  </mime-type>

この type 属性の text/x-xslt を application/xslt+xml に変更して、update-mime-database /usr/share/mime して MIME データベースを更新し、firefox を再起動したらなおった。

参考: @Thomas' LinuxMozilla and XML/XSL