fess-crawlerに、ジャストシステムの一太郎ドキュメントのMIMEタイプ検出機能を追加しました。これにより、Fessのクローラーが一太郎ファイルを正しく識別し、コンテンツを抽出できるようになります。
一太郎のファイル形式
一太郎はジャストシステムが開発した日本語ワープロソフトで、日本の官公庁や企業で広く利用されています。一太郎のファイルはOLE2複合ドキュメント形式を使用しており、バージョンによって複数の拡張子が存在します。
対応する拡張子
今回のMIMEタイプ application/x-js-taro に対応する拡張子は以下の通りです。
| 拡張子 | 説明 |
|---|---|
.jtd | 一太郎 基本文書 |
.jtt | 一太郎 テンプレート |
.jtdc | 一太郎 基本文書(ZIP圧縮) |
.jttc | 一太郎 テンプレート(ZIP圧縮) |
.jfw | 一太郎7形式 基本文書 |
.jvw | 一太郎7形式 テンプレート |
.jsw | 一太郎ver.4形式 基本文書 |
.jaw | 一太郎ver.5形式 基本文書 |
.jtw | 一太郎ver.5形式 テンプレート |
.jbw | 一太郎ver.6形式 基本文書 |
.juw | 一太郎ver.6形式 テンプレート |
MIMEタイプの登録
tika-mimetypes.xmlにMIMEタイプ定義を追加しています。マジックバイト(DOC\x00)とglobパターンの両方で一太郎ファイルを識別できるようにしました。一太郎はOLE2複合ドキュメント形式を使用しているため、application/x-tika-msofficeのサブクラスとして登録しています。
<mime-type type="application/x-js-taro">
<_comment>JustSystems Ichitaro Document</_comment>
<magic priority="50">
<match value="DOC\x00" type="string" offset="0"/>
</magic>
<glob pattern="*.jtd"/>
<glob pattern="*.jtt"/>
<!-- 他の拡張子も同様に登録 -->
<sub-class-of type="application/x-tika-msoffice"/>
</mime-type>
Extractorの設定
extractor.xmlでapplication/x-js-taroをTikaExtractorにマッピングし、一太郎ファイルからのコンテンツ抽出を有効にしています。HWP(Hangul Word Processor)など他のOLE2ベースのフォーマットと同じパターンに従った設定です。
テスト
一太郎ver.4、ver.5、ver.6、一太郎7、一太郎2016の各バージョンのテストリソースファイルを用意し、すべての拡張子に対してMIMEタイプが正しく検出されることを確認するテストケースを追加しています。
変更の詳細はPR #141を参照してください。