家系図トピックマップを作ろう
家系図トピックマップについて、その構造、作成方法等を以下にアップしました。
http://www.knowledge-synergy.com/openspace/family-tree/family-tree-v_1_0.html
小さくて、単純で、非常に理解しやすいものですが、なかなか奥深いものがあります。
ぜひ自分ちの家系図トピックマップ作りに挑戦してください。
家系図トピックマップについて、その構造、作成方法等を以下にアップしました。
http://www.knowledge-synergy.com/openspace/family-tree/family-tree-v_1_0.html
小さくて、単純で、非常に理解しやすいものですが、なかなか奥深いものがあります。
ぜひ自分ちの家系図トピックマップ作りに挑戦してください。
今回はツールを使ってトピックマップを作成していきます。その前に、ここで利用するツール、OKS-Samplersは入手済みでしょうか?OKS-SamplersはOntopia社が自社の製品OKSを試用のために無償で配布しているツールです。まだ入手していない場合は、以下のサイトからダウンロードの申込みを行いましょう。
申込みが終わると、登録したメールアドレスにダウンロード用のURLが送られてきますので、ダウンロードとインストールを済ましてしまいましょう。
トピックマップの入力には、OKS-Samplersに含まれるOntopolyというエディタツールを使います。OKS-Samplersは全てブラウザ経由で利用するツールです。起動した後、ブラウザでアクセスすると、次のようなメニュー画面が出てきます。
ここから”Create”と書かれたリンクをたどり、Ontopolyを起動します。
前回考えた書籍を管理するトピックマップでは、次の型を定義します。
●トピック型
●属性を表すための出現型
早速トピック型を定義していきましょう。Ontopolyの画面で、”Ontology”と書かれたタブを選び、その中の”Topic Types”を選びます。トピックマップを作るには、まずここで作成するトピックマップの中に出てくるトピックの種類(型)を定義してやります。最初から全ての種類(型)が決まっている場合は、ここでどんどん入力してしまいます。まだ一部しか考えられていない場合でも、後でいくらでも追加できるので、決まっている分だけで構いません。
書籍=Book、人=Person、企業=Companyとして定義します。こんな感じです。

Nameにトピック型の名前を入力します。PSIはPublish Subject Indicatorsの意味です。日本語では「公開された主題指示子」でしょうか。
トピックマップを作る際に、様々なトピック(主題)を定義していきます。例えば今回のように「書籍」という主題(概念)を表すトピック型をBookという名で定義します。
PSIはこうして定義したトピック(主題)を同定可能にする仕組みで、ネットワーク上で永続的に公開し、トピックマップの共有/交換を容易にすることを目的にしています。つまり、ネットワーク上で同じPSIで示されるトピックは、同じ主題を示していることになります。名前が「書籍」でも「本」でも、はたまた「Book」でも同じ概念を指しているということですね。次のような特徴があります。
任意のURIの形式で PSIを定めますが、ここは自分のドメインを使ってURIを作ります。今後どんなPSIを作っていくか未定ですが、とりあえずこんな感じでURIを作ってみました。 "http://psi." + ドメイン名 + "/ontology/" + トピック型名(全て小文字)
他の二つ、「人」と「企業」も同じように定義します。
これだけでトピック型の定義はできました。簡単ですね。次回はジャンルを表す出現型を定義し、さらにそれをトピック型の定義に盛り込むことを定義します。
つづく
OKS修行第一回です。通例この手の連載はツールのインストールからスタートしますが、ここでは今回作成する書籍の管理のためのトピックマップを考えます。
一般にトピックマップの作成を考える時、1)トピックの種類(型)を考える、2)トピック間の関係を考える、3)トピックにリンクするリソース(出現)を考える、といった順に考えていくと分かり易いと思います。今回もこの順で考えていきます。まず、今回は書籍を管理するためのトピックの型を考えます。
書籍を管理するためには、通常書誌情報を用います。書誌情報とは、書名や著者、出版社など書籍の持つ属性を表す情報のことです。ここでは、「書籍」にはその属性として、「書名」「著者」「出版社」「ジャンル」があるとしましょう。この「書籍」はまず最初のトピック型の候補となります。「書名」は「書籍」の名前と言えます。つまり、個々のトピックの名称とできます。「著者」は例外もありますが、一般に「人」により表されます。そこで、今回は「著者」の型を表すトピック型として「人」を導入します。
余談ですが、「書名」と同じく「著者名」を「書籍」の単なる属性としてしまうこともできます。この場合、「人」トピックの導入など不要です。この判断は、作成するトピックマップでどこまで複雑なことを行いたいかによります。また、対象を考えて、自然に独立したモノとして区別できるものは、独立したトピックとするのが後々トピックマップを拡張していく場合も楽になると思います。
「出版社」についても「著者」と同じく、何らかの組織や企業を表していると考えられます。そこで、「企業」というトピック型を導入します。最後に「ジャンル」ですが、ここでは簡単に「書籍」の属性情報としてしまいます。属性情報はあるトピックに対する出現で表しますので、そのために「ジャンル」という出現型を導入します。
以上を整理すると、次のようになります。
●トピック型
●属性を表すための出現型
「著者」や「出版社」を表すには、「書籍」型のトピックと「人」型のトピックを何らかの関連で関係づける必要があります。これは関連を考えるステップで決めて行きましょう。
まずはここまでで、書籍を管理するためのトピックマップの主要な型を定義できました。次回はこれらを実際にツールを使いながらコーディングしていきます。
つづく
トピックマップもまず自分で作ってみないことには何ができるものやらイメージがつかめないものです。そこで、OKSを使いながら身近な話題で実際にトピックマップを作ってみます。その過程をアレコレとこの場で書いてみようと思います。
こんな感じで進めて行きます。ご意見ご感想は是非コメントにてお寄せください。
トピックマップを利用したアプリケーションを作成するためには、全ての処理を自分でプログラミングすることも可能ですが、多くの場合商用・非商用のライブラリ/ミドルウェアを用います。
トピックマップを扱うことができるライブラリ/ミドルウェアは多数ありますが、その中でもJavaによる開発、Webアプリケーション開発用のフレームワーク、高度な検索機能を備えたOntopia Knowledge Suiteがメジャーです。OKSは非常に高価な商用ソフトウェアですが、販売元Bouvet社のサイトでは、サンプル版(OKS-Samplers)をダウンロードし、試してみることができます。TopicMaps.jpでは、これから不定期ではありますが、OKS-Samplersを用いたトピックマップの楽しみ方を紹介していきたいと思います。お楽しみに。