jumanをjuman++することによって、名詞のカテゴリ情報がより確実に組み込まれるようになり、ドメイン情報も使える。そこで、二分木のフォーマットをさらに改良することにした。それによって、会話で知識を使う道がより望ましいものになる。
変更後の二分木例を示すと次のようだ(文章はWikipediaより)
%% line = 小田を含む4名は、放送が終了したばかりのアニメ『機動戦士ガンダム』に熱中しており、まだガンプラが発売される前から同作品に登場するロボット兵器「モビルスーツ (MS)」の模型を自作していた。 %% phrases: [ r0 1 2 [ 3 4 5 r6 7 [ 8 9 10 11 12 13 14 r15 16 ] ] 17 ] testdoc(testline_0_0, node(を, [小田, 'S:地'], node([], [含む, 'V:含む'], node(は, [['4', 'S:数/C:数量'], [名, 'C:人']], node(に, node([], node(ばかりの, node(が, [放送, 'S:サ/C:抽象物/D:メディア'], [[終了, 'S:サ/C:抽象物'], [した, 'V:する']] ), [アニメ, 'S:普/C:抽象物/D:文化・芸術'] ), [[[機動, 'S:普/C:抽象物'], [戦士, 'S:普/C:人']], [ガンダム, 'S:固']] ), node([], [[[熱中, 'S:サ/C:抽象物'], [して, 'V:する']], おり], node(の, node([], node([], node(に, node(から, node([], node(が, node([], まだ, [ガンプラ, 'S:普'] ), [[[発売, 'S:サ/C:抽象物/D:ビジネス'], [さ, 'V:する']], れる] ), [前, 'S:副'] ), [同, [作品, 'S:普/C:抽象物/D:文化・芸術']] ), [[登場, 'S:サ/C:抽象物'], [する, 'V:する']] ), [[ロボット, 'S:普/C:人工物-その他/D:科学・技術'], [兵器, 'S:普/C:人工物-その他/D:政治']] ), [[[['モビルスーツ', 'S:普'], ['(', 'S:普']], ['MS', 'S:組']], [')', 'S:普']] ), node(を, [模型, 'S:普/C:人工物-その他'], node([], [[[自作, 'S:サ/C:人工物-その他'], [して, 'V:する']], いた], [ ] ) ) ) ) ) ) ) ) ).
まず、最初の方の [小田, 'S:地']にあるように、リーフ値が名詞の場合はサブタイプをS:のヘッダをつけて、組み込むようにした。サブタイプ名は、節約のため、実際の名前の最初の1文字だけにしている。サブタイプ名は、「普通名詞, 副詞的名詞, 形式名詞, 固有名詞, 組織名, 地名, 人名, サ変名詞, 数詞, 時相名詞」だけのようなので、重なりはない。ただし、小田は地名になっているが、現実は、人名である。このように、人名か地名がわかれば、会話に利用できるのだ。
さらにカテゴリとサブタイトルが両方ある場合は、'S:サ/C:抽象物'のように/で区切って、繋げるようにした。リストにする方法も考えたが、やらた、リストがネストされるので、わかりにくくなると思い、回避した。
ドメインがある場合は、これにさらにD:のヘッダーでつなげる。[放送, 'S:サ/C:抽象物/D:メディア']あるいは[アニメ, 'S:普/C:抽象物/D:文化・芸術']という感じである。ドメインは、どういう状況の中に単語が含まれているのかがわかるので、貴重な情報である。
こうなると、二分木の中にシソーラス辞書が同時に組み込まれている感じになる。