特集
NetDictionary
第1回 オフライン・ミーティング・レポート

1.NetDictionaryの現状と今後


デジタルアドバンテージ
2002/01/18


 NetDictionaryは、Webサービスの1つの実装例として、この技術の辞書への応用を模索するプロジェクトである。サイトでは、アットマーク・アイティのInsider's Computer Dictionary(以下ICD)として公開されているコンピュータ用語辞書データをそのまま使い、これを参照するためのWebサービスを公開している。NetDictionaryの詳細については、ホームページの説明を参照されたい(NetDictionaryのホームページ)。またInsider.NETフォーラムでは、このNetDictionaryサービスを使ったWebサービス・プログラミングの入門記事を連載中である(「特集:NetDictionaryで始めるWebサービス・プログラミング」)。

 まず始めに、Insider.NETガイドの遠藤孝信、小川誉久の両名から、このサイトを構築した背景や目的などが説明された。Webサービスの実験プロジェクトとしては、企業の出張処理を想定した仮想的な航空券とホテル予約システムを構築したBusiness Travel System(JTBビジネストラベルソリューションズ、イースト開発、後述)や、卸売業の受発注システムを想定した日本ユニシスのXML Webサービス実験室などがある。これらはいずれも、企業レベルのBtoBシステムの一環として、Webサービスを応用することを想定している。ただしいずれも、あくまで実験プロジェクトであり、データはすべてテスト用のものが使われている。

 「NetDictionaryでは、より身近に感じられる例で、かつテスト・データではなく、実際のサービスに使われている実データを使ったWebサービスを開発したいと思いました。自分たちが自由にできるもので、身近なものは何かと考えたとき、コンピュータ用語辞典があったということです。何しろWebサービスはまったく新しい概念ですから、可能性や問題点をあらかじめ議論するよりも、まずはできるものをWebサービス化してみようと考えました」(デジタルアドバンテージ 遠藤)。

 この説明どおり、NetDictionaryでは、@ITで公開されているICDのデータがそのままWebサービスとして公開されている。ただし、ICDでは写真や画面などのビジュアル・データも挿入されているが、現状のNetDictionaryはこれらのデータをサポートしていない。ICDは、デジタルアドバンテージがVisual BasicとSQL Server 2000とを組み合わせて開発した編集システムによって管理されているが、これらビジュアル・データは、解説本文を格納したレコード・データの中で、独自のタグを使って挿入されている。

ビジュアルが挿入されたICDのページ
ICDには、写真や図版などが挿入されたページもある。しかし現状のNetDictionaryでは、これらのビジュアル要素の取得はサポートされていない。
 
ICDの編集環境
ICDは、デジタルアドバンテージがVisual BasicとSQL Server 2000を組み合わせて開発した編集システムによって管理されている。解説ページ内のビジュアル・データは、管理データベース中に独立したレコードとして保存され、解説本文中から独自のタグを使ってリンクされている。

 用語解説本文の取得とは別に、こうしたビジュアル・データをWebサービスで提供するためのインターフェイスがどうあるべきか、まだ結論が出ていない。最適なインターフェイスは、ある程度は応用が見えないと設計できないのだが、まだ実体をつかみきれないWebサービスの応用範囲を想定するのは困難だ。よくいう「卵が先か、鶏が先か」という状態であるが、これと同じような悩みは、幅広い応用を許すWebサービスを設計する際には避けられない問題点だろう。

NetDictionary Webサービスを利用したアプリケーション

 NetDictionaryでは、外部から利用可能なWebサービス・インターフェイスを公開すると同時に、これらのインターフェイスを利用したアプリケーション例についてもいくつか公開している。これらは以下のとおりである。

■クイズICD
 コンピュータ用語の解説本文から、その用語の見出し語を当てるゲーム。つまり、見出し語→解説本文という、通常の辞書の引き方を逆にしたもの。
クイズICDの解説ページへ

■Super ICD
 コンピュータ用語辞典の解説本文をプログラムで走査し、本文中にICDデータベースに含まれる別の見出し語を発見したら、その見出し語へのリンクを自動的に組み込んで表示する。これにより、本文中の文字列をクリックすることで、関連用語の解説にジャンプできるようになる。
Super ICDの解説ページへ

 これらすでに公開されているアプリケーションについて、遠藤ガイドが簡単に説明とデモンストレーションし、現在開発中のアプリケーションが簡単に紹介された。それらは次のとおり。

■ICD Proxy(近日公開予定)
 Web Proxyとして機能し、指定されたURLのWebページを走査して、コンピュータ用語辞典に登録されている用語を発見したときには、ICD解説ページへのリンクを設定するもの。もちろん、URLには任意のサイトを指定可能。現在開発中だが、2002年1月中には試験公開を実施する予定。

ICD Proxyで表示したページ
このようにICD Proxyを経由してWebページを表示すると、ページ内の文字列が自動的に走査され、コンピュータ用語辞典に見出し語が存在するものを見つけると、自動的に用語辞典へのリンクを追加する。
 
ポップ・ヒント形式で表示された解説文
ICD Proxyでは、用語解説ページへのリンクを追加するだけでなく、解説本文から最初の1文を抜き出し、それをspanタグとして挿入する。これにより、リンク文字部分の上でマウス・ポインタをしばらく停止すると、このようにポップ・ヒントの形式で説明が表示される。

■ICD Checker
 クリップボードを常時モニタし、クリップボードにデータが転送されたら、その文字列が用語辞典に登録されていないかを自動的に検索し、存在している場合には、その用語解説ページのURLをクリップボードに書き戻すWindows Formsアプリケーション。これは主に、デジタルアドバンテージが制作する記事ページから、用語解説へのリンクを素早く設定することを目的として開発された内部ツールである。

ICD Checker
クリップボードにデータが転送されると、自動的にコンピュータ用語辞典を検索し、見出し語が存在するときには、解説ページへのURLをクリップボードに書き戻すWindows Formsアプリケーション。@ITの記事ページをHTMLエディタで編集中に、用語解説へのリンクを設定したいときに使う内部アプリケーション。
 
関連記事(Insider.NET内)
特集
NetDictionaryで始めるWebサービス・プログラミング
 
関連リンク
Insider's Computer Dictionary
NetDictionaryのホームページ
イースト/JTB
Business Travel Systemのホームページ
XML Webサービス実験室
 

 INDEX
  NetDictionary 第1回 オフライン・ミーティング・レポート
  1.NetDictionaryの現状と今後
    2.イーストの辞書関連プロジェクト
 
 特集 :NetDictionaryプロジェクト


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間