Apple Mail と iCal の時間表現認識はかなり実用的

あるとき Apple Mail を使っていて IMAP フォルダにあったメールをフォルダごと移動したら全てのメールが再送されてしまった事件(数年前のメールが再度送られるというのは地獄……メーリングリストのメールもプライベートのメールも区別なく!)以来、怖くなって Apple Mail は使うのを止めたのだが、最近また使ってみているところ、けっこういい感じ。(IMAP フォルダの中でメールは移動しないようにしている)

Mail, iCal アドレスブックにも書いてあるのだが、意外に賢いなと思うのは

Mailは単にメールを表示するだけではありません。あなたの必要に応じて、内容を分析してくれます。たとえば、明日午後6時、Gino’s Pizzaで食事しようと誘うメールを受け取ったとします。Mailは午後6時が時間であることを認識するだけでなく、「明日」がカレンダーのどの日付なのかを識別します。ですから、具体的な日付(10月18日)であろうと、相対的な日付(明日)であろうと、日付をクリックするだけで、iCalカレンダーに追加できます。また、Gino’sが場所であることも識別し、住所をクリックすると、Googleマップにレストランの場所を表示します。また、メッセージに電話番号やメールアドレスが含まれている場合、ワンクリックでアドレスブックに追加できます。

というところ。これ、「来週がいいのですが、水曜日の11時半はご都合いかがでしょう」みたいに書いてあっても、「11時半」のところにマウスカーソルを持って行くと「水曜日の11時半」がハイライトされ、クリックすると1週間後の水曜日の午前11時半に iCal イベントが作成されるのである。すごい! 研究でようやく TimeML とか TimeBank とか作って機械学習で時間表現を認識できるリソースが整ってきたが、Leopard ですでにこの機能は実装されていたようで、世の中ではだいぶ前からこれくらいのことはできていたってことね〜。Mail 使っていなかったから知らなかったよ……。(英語のメールでも日本語のメールでも両方 OK) かなり高精度かつ高再現率に認識してくれるので、感心する。Mail でしか使えないというのと、iCal にしか飛ばせないというのがちょっと微妙だが……(GMail とか Facebook でも使えて、なおかつ Google Calendar に登録できたらいいんだけどなぁ)

自然言語処理な人で、近くに Mac OS X (Leopard 以降)がある人は試してみるとおもしろいかも。(iCal 使っていない人はあまり意味ないが、iCal 使っている人はこれだけでも Mail を使う理由になると思う)