Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

namazu-bugs-ja#57 の件 + TITLE="foo" のバグ他



寺西です。

<table summary=hoge>とすると要約は「hoge>」になる (namazu-bugs-ja#56)
http://www.namazu.org/ml/namazu-devel-ja/msg01928.html

というバグがありましたが、同様に
<img alt=hoge> とすると要約は「hoge>」になったり、
<XXX ... title=hoge> とすると要約は「hoge>」になったりします。

http://www.namazu.org/ml/namazu-devel-ja/msg01953.html
で、野首さんは

>  根本的には、HTML の parse が ad-hoc に行なわれていることが原因だと思
> います。この問題にきちんと対処するためには、しっかりとした parser を用
> 意するしかないのですが、そのためだけに新規に parser を書き起こすのは開

と書かれていますが、そこまで厳密な対応でないにしても、少し手を入れ
ることで、このバグをある程度回避することができます。

ということで、近いうちにパッチをしめします。(完璧なものではあり
ませんが、十分に実用的なものだと思います。)

=====================================================================

ところで、<XXX ... title="foo"> では、"foo" を取り出すわけですが、
<IMG> タグや <TABLE> タグにも title がある可能性はあります。
しかし、<IMG> タグや <TABLE> タグでは、title の処理が行われません。

考えられる処理としては、

1. <IMG> タグや <TABLE> タグの title は切り出さない。
2. <IMG> タグは alt を、<TABLE> タグは summary を優先して切り出し、
   存在しない場合は、title を切り出す。
3. <IMG> タグや <TABLE> タグも title があれば切り出す。

のどれかになるかと思いますが、<IMG> タグや <TABLE> タグだけ title 
は無視というのも、統一感がないように思いますので、2 または 3 の処理
を行うのが良いのではないかと思います。(現状は 1)
皆様のご意見をお聞かせください。

また、個人的には
http://www.namazu.org/ml/namazu-ring/msg01326.html
のような alt, summary, titile を切り出したくないことがありますので、
そのような仕組みもあると良いかと思っています。

=====================================================================

さらに <XXX ... title="foo"> のように title があると、filter/html.pl 
の get_title_attr() で、タグが削除されるため、後の weight_element() で
重み計算が行われません。
例えば、<H1>hoge</H1> と <H1 title="foo">hoge</H1> では、スコアに
違いが出ます。おそらくバグかと思いますので、こちらも修正してパッチ
を作成します。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E