xmlmine - XML データマイニングツール

xmlmine は XML ファイルの中から瀕出する構造を発見するプログラムです。

ホームページ

<URL:http://staff.aist.go.jp/tanaka-akira/xmlmine/>

入手先

<URL:http://cvs.m17n.org/cgi-bin/viewcvs/xmlmine/?cvsroot=akr>

または

% cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/akr co xmlmine 

必要なツール

コンパイル

% ant

実行

% ./xmlmine.sh xml-file

次のようにオプションが使用できます。

% ./xmlmine.sh -h      
usage: xmlmine [options] files...
option: -help : print this message
        -min-occur INT : default is 2
        -min-size INT : default is 2
        -max-size-limit INT : default is 20
        -queue-size-limit INT : default is 1000
        -no-remove-redundant
        -no-decrease-root-occur
        -no-max-size-only
        -breadth-first
        -debug-queue

各オプションの意味は次の通りです。

実行サンプル

実行結果は例えば次のようになります。

% ./xmlmine.sh sample.xml

patternset-0 rootocc:4 maxsize:2
[
a
 a
]
/sample.xml/a
/sample.xml/a/a[1]
/sample.xml/a/a[1]/a
/sample.xml/a/a[2]

...中略...

patternset-5 rootocc:2 maxsize:4
[
a
 a
  a
  b
]
/sample.xml/a
/sample.xml/a/a[1]

FREQT finished. 6 patternsets reported. (0.246s)

ここでは、6種類のパターンセットが発見されています。 最初のパターンは <a><a/><a> というもので、 これがインデントによる木構造として

a
 a

と表示されています。 このパターンのサイズ(ノード数)は maxsize:2 というところから 2 とわかります。 また、rootocc:4 というのはこのパターンが与えたファイルの中に 4ヶ所出現することを意味しています。 その 4ヶ所の具体的な場所は

/sample.xml/a
/sample.xml/a/a[1]
/sample.xml/a/a[1]/a
/sample.xml/a/a[2]

というように XPath に似た形式で表示されます。

アルゴリズム

xmlmine が使用しているアルゴリズムは次の論文をベースにして、 いくつかの工夫を加えたものです。

浅井達哉, 安部賢治, 川副真治, 坂本比呂志, 有村博紀, 有川節夫. 半構造データからの頻出パターン発見アルゴリズム. 第13回データ工学ワークショップ(DEWS2002), March 2002.

変更履歴

2004-03-17 version 0.1 - 最初のリリース

ライセンス

GPL

作者

田中 哲 <akr@m17n.org>

著作権者: 産業技術総合研究所 <URL:http://www.aist.go.jp>

管理番号: H16PRO 200