WWW全文検索エンジン Vernoにおける 要素構造データベースの設計と実装 2001年度 卒業論文 WWW全文検索エンジン Vernoにおける 要素構造データベースの設計と実装 g97p0213 大塚聡
Verno HTMLのタグ以外の部分を対象にした全文検索エンジン Scheme を用いて利用者が検索命令をプログラミングできる (ex. 「<title>タグは文書のタイトル」)
要素構造データベース HTMLの要素(タグに囲まれた部分) の意味や構造を検索に利用するためのデータベース <title>Ueda lab home page</title> Scheme (search “title” “Ueda”) HTML <head> <title>Ueda lab home page</title> </head> Scheme (search “head” (search “title” “Ueda”))
HTMLの解析 範囲テーブル 包含テーブル 要素名 ID: (範囲) html 1: (0, 292) head 2: (0, 15) ID=2: <head> ID=3: <title>Ueda lab home page</title> ID=4: <meta …> ID=5: <meta …> </head> … </html> 範囲テーブル 包含テーブル 要素名 ID: (範囲) html 1: (0, 292) head 2: (0, 15) title 3: (0, 15) meta 4: (15, 15) 5: (15, 15) 関係 (親のID, 子のID) html⊃head (1, 2) html⊃title (1, 3) head⊃title (2, 3) html⊃meta (1, 4) (1, 5) head⊃meta (2, 4) (2, 5)
構造の検索(1) html 1: (0, 292) head 2: (0, 15) title 3: (0, 15) meta <title>Ueda lab home page</title> </head> </html> html 1: (0, 292) head 2: (0, 15) title 3: (0, 15) meta 4: (15, 15) 5: (15, 15) html⊃head (1, 2) html⊃title (1, 3) head⊃title (2, 3) html⊃meta (1, 4) (1, 5) head⊃meta (2, 4) (2, 5)
構造の検索(2) html 1: (0, 292) head 2: (0, 15) title 3: (0, 15) meta <title>Ueda lab home page</title> <meta …> </head> html 1: (0, 292) head 2: (0, 15) title 3: (0, 15) meta 4: (15, 15) 5: (15, 15) html⊃head (1, 2) html⊃title (1, 3) head⊃title (2, 3) html⊃meta (1, 4) (1, 5) head⊃meta (2, 4) (2, 5)
検索の例 (define result (sdb:search “html” (sdb:search “h1”) (sdb:search “title” “Ueda”))) (define (print-proc u) (display (sdb:inner-text u)) (display (sdb:url-str u)) (newline)) (sdb:iterate result print-proc 2) www.ueda.info.waseda.ac.jp/about_j.html 上田研究室概要 ---------- www.ueda.info.waseda.ac.jp/location.html 情報学科へ来られる方へ
まとめ HTMLの要素の情報を用いて、文字列検索だけでなくHTML文書中での意味も加えた検索ができるようにした。