JP2010086331A - サービス提供装置およびサービス提供システム - Google Patents
サービス提供装置およびサービス提供システム Download PDFInfo
- Publication number
- JP2010086331A JP2010086331A JP2008255448A JP2008255448A JP2010086331A JP 2010086331 A JP2010086331 A JP 2010086331A JP 2008255448 A JP2008255448 A JP 2008255448A JP 2008255448 A JP2008255448 A JP 2008255448A JP 2010086331 A JP2010086331 A JP 2010086331A
- Authority
- JP
- Japan
- Prior art keywords
- name
- company
- comment
- general name
- product
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000000694 effects Effects 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 40
- 230000008569 process Effects 0.000 description 38
- 238000012790 confirmation Methods 0.000 description 21
- 150000001875 compounds Chemical class 0.000 description 19
- 238000012545 processing Methods 0.000 description 19
- 230000014509 gene expression Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 239000002131 composite material Substances 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 230000011218 segmentation Effects 0.000 description 7
- 238000012795 verification Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 238000007493 shaping process Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 230000006855 networking Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 241001417871 Silurus asotus Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】ユーザが電子掲示板システムへコメントを投稿する過程で、会社名と一般名称の組み合わせで記述される文字列を的確に検出し、適切な商品名のリンクを自動的に埋め込むことができる、広告宣伝の効果及び利便性の高いサービス提供装置及びサービス提供システムを提供する。
【解決手段】いわゆる電子掲示板の機能を提供するwebサーバで、ユーザが投稿したコメントの文字列中、商品名ではないが商品名を想起できるに足りる、企業名と一般名称の組み合わせよりなる部分文字列を探索し、商品名とその宣伝を記すwebページのURLを埋め込む。これを実現するために、予め企業名マスタ、一般名称マスタ、商品名マスタを用意する。商品名マスタには、企業名と一般名称の組み合わせを商品名と紐付けてレコードに記述する。これらを参照して、部分文字列を探索する。
【選択図】図1
【解決手段】いわゆる電子掲示板の機能を提供するwebサーバで、ユーザが投稿したコメントの文字列中、商品名ではないが商品名を想起できるに足りる、企業名と一般名称の組み合わせよりなる部分文字列を探索し、商品名とその宣伝を記すwebページのURLを埋め込む。これを実現するために、予め企業名マスタ、一般名称マスタ、商品名マスタを用意する。商品名マスタには、企業名と一般名称の組み合わせを商品名と紐付けてレコードに記述する。これらを参照して、部分文字列を探索する。
【選択図】図1
Description
本発明は、サービス提供装置およびサービス提供システムに関する。より詳細には、多数のユーザが閲覧する電子掲示板システムに適用して好適な技術に関する。
近年、友人・知人間のコミュニケーションを促進する手段や場、あるいは趣味や嗜好、居住地域、出身校、友人の友人といった自身と直接関係のない他人との繋がりを通じて新たな人間関係を構築する場としてSNS(Social Networking site)を利用する人が増えている。SNSとは、社会的ネットワークの構築のできるサービスやwebサイトのことである。なお、本発明の先行技術を特許文献1に記す。
今、仮に製造業である特定の企業が、webサイト上で上記のようなSNSサービスを運営する場合を考える。
当該SNSサービス内で、ユーザが投稿する記事(以下「コメント」と定義する。)の中に、当該企業が扱う製品に関する記述があったとする。もしも、その記述に当該企業の商品に関するwebページへのリンクが張られていれば、当該企業にとって広告宣伝の効果が見込める。
当該SNSサービス内で、ユーザが投稿する記事(以下「コメント」と定義する。)の中に、当該企業が扱う製品に関する記述があったとする。もしも、その記述に当該企業の商品に関するwebページへのリンクが張られていれば、当該企業にとって広告宣伝の効果が見込める。
一般に、ユーザが自己の発意に基づいてそのようなリンクを能動的に記述することはそう多くはないので、SNSサービスを提供するwebサーバ側で、そのようなリンクを自動的に生成する仕組みがあることが望ましい。
ある特定のキーワードを検出すると自動的にリンクを生成する仕組みは、非特許文献1に示すように「wiki」で周知である。
しかし、特定の商品名或は商標が必ずしもユーザに完全に周知されているとは限らない。ユーザが忘れてしまう場合等も良くある。そのような場合、「戊社の体温計」等のように、会社名と一般名称の組み合わせで記述されることが往々にして見受けられる。このような場合、特定の商品名ではないので、そのままでは商品名に関するリンクを埋め込むことが困難である。
ある特定のキーワードを検出すると自動的にリンクを生成する仕組みは、非特許文献1に示すように「wiki」で周知である。
しかし、特定の商品名或は商標が必ずしもユーザに完全に周知されているとは限らない。ユーザが忘れてしまう場合等も良くある。そのような場合、「戊社の体温計」等のように、会社名と一般名称の組み合わせで記述されることが往々にして見受けられる。このような場合、特定の商品名ではないので、そのままでは商品名に関するリンクを埋め込むことが困難である。
本発明はかかる点に鑑みてなされたものであり、ユーザが電子掲示板システムへコメントを投稿する過程で、会社名と一般名称の組み合わせで記述される文字列を的確に検出し、適切な商品名のリンクを自動的に埋め込むことができる、広告宣伝の効果及び利便性の高いサービス提供装置及びサービス提供システムを提供することを目的とする。
上記課題を解決するために本発明のサービス提供装置は、企業をユニークに識別する企業IDが記録される企業IDフィールドと、企業の企業名が記録される企業名フィールドとを備える企業名マスタと、一般名称をユニークに識別する一般名称IDが記録される一般名称IDフィールドと、一般名称が記録される一般名称フィールドとを備える一般名称マスタと、商品の商品名が記録される商品名フィールドと、商品に関係するwebサイトのURLが記録されるリンクURLフィールドと、商品に関係する企業の企業IDが記録される企業IDフィールドと、商品が該当する一般名称の一般名称IDが記録される一般名称IDフィールドとを備える商品名マスタと、クライアントから送信される文字列データよりなるコメントを受信し、コメントに商品名マスタの各レコードに記録される企業IDと一般名称IDの組み合わせに合致する企業名と一般名称の組み合わせよりなる文字列を検出し、文字列にURLを埋め込む処理を行うコメント書き込み部とを備える。
サービス提供装置には、予め企業名マスタ、一般名称マスタ、商品名マスタを用意する。商品名マスタには、企業名と一般名称の組み合わせを商品名と紐付けてレコードに記述する。コメント書き込み部はこれらを参照して、部分文字列を探索して、ユーザが投稿したコメントの文字列中、商品名ではないが商品名を想起できるに足りる、企業名と一般名称の組み合わせよりなる部分文字列を探索し、商品名とその宣伝を記すwebページのURLを埋め込む。
本発明により、ユーザが電子掲示板システムへコメントを投稿する過程で、会社名と一般名称の組み合わせで記述される文字列を的確に検出し、適切な商品名のリンクを自動的に埋め込むことができる、広告宣伝の効果及び利便性の高いサービス提供装置及びサービス提供システムを提供できる。
以下、本発明の実施の形態の例を、図1〜図16を参照して説明する。
[サービス提供システム101]
図1は、本発明の一実施形態の例である、サービス提供システム101の概略図である。
これより説明する、本実施形態のサービス提供システム101は、特に、医療機関に所属する医師や看護師等を対象とした、ソーシャルネットワーキングサービス(SNS:Social Networking Service:参加者同士の交流を通じた、社会的ネットワークの構築を促進する、webベースのコミュニケーションサービス)を形成するシステムである。
図1は、本発明の一実施形態の例である、サービス提供システム101の概略図である。
これより説明する、本実施形態のサービス提供システム101は、特に、医療機関に所属する医師や看護師等を対象とした、ソーシャルネットワーキングサービス(SNS:Social Networking Service:参加者同士の交流を通じた、社会的ネットワークの構築を促進する、webベースのコミュニケーションサービス)を形成するシステムである。
本実施形態のサービス提供システム101は、クライアントPC102およびサービス提供サーバ104より構成されており、これらの各要素がインターネット106上で相互に接続されている。
クライアントPC102(Personal Computer)のユーザ103が、サービス提供サーバ104が形成する電子掲示板に文章を投稿すると、サービス提供サーバ104は、投稿された文章の中に特定の商品名、或は特定の会社名と一般名称の組み合わせよりなる文字列を探す。それら文字列がある場合、サービス提供サーバ104は当該文字列に対して広告へのリンクを自動的に埋め込む処理を行う。
クライアントPC102(Personal Computer)のユーザ103が、サービス提供サーバ104が形成する電子掲示板に文章を投稿すると、サービス提供サーバ104は、投稿された文章の中に特定の商品名、或は特定の会社名と一般名称の組み合わせよりなる文字列を探す。それら文字列がある場合、サービス提供サーバ104は当該文字列に対して広告へのリンクを自動的に埋め込む処理を行う。
図2は、クライアントPC102の機能ブロック図である。図2では、本実施形態に用いられる機能ブロックのみを示している。したがって、本実施形態と関係のない機能の記載は省略している。
クライアントPC102は一般的なパソコンである。表示部205は、ディスプレイである。操作部206は、キーボード及びマウス等のポインティングデバイスである。
パソコンであるクライアントPC102内では、webブラウザ202が稼動する。webブラウザ202は、インターネット106を通じて所定のwebサーバから情報をダウンロードすると、その内容を入出力制御部203で受信し、表示制御部204に渡す。
表示制御部204は、入出力制御部203から受け取った情報を画面表示の信号に変換して、表示部205に渡す。
表示部205は、表示制御部204から受け取った信号を画面に表示する。
操作者は表示部205に表示されている内容に基づいて、操作部206で種々の操作を行う。
操作部206は操作情報を入出力制御部203に出力する。
入出力制御部203は、操作情報を処理して、表示制御部204に送ると共に、必要に応じてインターネット106を通じて、所定のwebサーバに送信する。
クライアントPC102は一般的なパソコンである。表示部205は、ディスプレイである。操作部206は、キーボード及びマウス等のポインティングデバイスである。
パソコンであるクライアントPC102内では、webブラウザ202が稼動する。webブラウザ202は、インターネット106を通じて所定のwebサーバから情報をダウンロードすると、その内容を入出力制御部203で受信し、表示制御部204に渡す。
表示制御部204は、入出力制御部203から受け取った情報を画面表示の信号に変換して、表示部205に渡す。
表示部205は、表示制御部204から受け取った信号を画面に表示する。
操作者は表示部205に表示されている内容に基づいて、操作部206で種々の操作を行う。
操作部206は操作情報を入出力制御部203に出力する。
入出力制御部203は、操作情報を処理して、表示制御部204に送ると共に、必要に応じてインターネット106を通じて、所定のwebサーバに送信する。
図3は、サービス提供サーバ104の機能ブロック図である。
サービス提供サーバ104は、一般的なwebサーバを構成する。サービス提供サーバ104のハードウェアは一般的なパソコンと同じであり、ネットワークOSが稼動する。
サービス提供サーバ104は、前述の通り、webベースのSNSサービスをユーザ103に提供する。
サービス提供サーバ104は、一般的なwebサーバを構成する。サービス提供サーバ104のハードウェアは一般的なパソコンと同じであり、ネットワークOSが稼動する。
サービス提供サーバ104は、前述の通り、webベースのSNSサービスをユーザ103に提供する。
webサーバプログラム302は、クライアントPC102から来る要求(コマンド)を受信し、これに応じて、HTTP(Hyper Text Transfer Protocol)にてhtml文書等をクライアントPC102へ送信する機能を提供する。一例としてはApache(http://www.apache.org/)等である。
また、webサーバプログラム302は、クライアントPC102の要求に応じ、cgi(Common Gateway Interface)の実行も行う。cgiは、標準出力にテキストを出力するプログラムである。このcgiが生成するテキストが、webサーバプログラム302によってHTTPにてクライアントPC102へ送信される。図3に示すサービス提供サーバ104では、ログインcgi及びメインメニューcgiがこれに該当する。
また、webサーバプログラム302は、クライアントPC102の要求に応じ、cgi(Common Gateway Interface)の実行も行う。cgiは、標準出力にテキストを出力するプログラムである。このcgiが生成するテキストが、webサーバプログラム302によってHTTPにてクライアントPC102へ送信される。図3に示すサービス提供サーバ104では、ログインcgi及びメインメニューcgiがこれに該当する。
ログイン画面htmlファイル303は、ログイン画面をクライアントPC102の表示部205に表示するためのhtml文書である。
ログイン画面は、クライアントPC102のユーザ103がアクセスするため情報であるユーザIDを入力するための画面である。
ログインcgi304は、クライアントPC102から送信されたユーザID及びパスワードの情報を、ユーザマスタ305で検索して照合し、正規ユーザ103であるか否かを判断する。正規ユーザ103であると判断したら、メインメニューcgi306に転送するための転送メッセージを作成して、クライアントPC102に送信する。
ログイン画面は、クライアントPC102のユーザ103がアクセスするため情報であるユーザIDを入力するための画面である。
ログインcgi304は、クライアントPC102から送信されたユーザID及びパスワードの情報を、ユーザマスタ305で検索して照合し、正規ユーザ103であるか否かを判断する。正規ユーザ103であると判断したら、メインメニューcgi306に転送するための転送メッセージを作成して、クライアントPC102に送信する。
メインメニューcgi306は、サービス提供サーバ104が提供するSNSサービスにログインしたユーザ103が最初に見る画面のhtml文書を作成する。
ユーザ103は、クライアントPC102の表示部205に表示されているメインメニューから、自らの発意に基づき、自らが所属する種々のフォーラムにアクセスしたり、特定の他のユーザ103にメッセージを送信する等の行為を行う。
メインメニューの画面については、本発明とは直接関係しないので省略する。
ユーザ103は、クライアントPC102の表示部205に表示されているメインメニューから、自らの発意に基づき、自らが所属する種々のフォーラムにアクセスしたり、特定の他のユーザ103にメッセージを送信する等の行為を行う。
メインメニューの画面については、本発明とは直接関係しないので省略する。
フォーラムメニュー表示部307は、サービス提供サーバ104が提供するSNSサービスにログインしたユーザ103が、自らが所属するフォーラムにアクセスする際に見る、画面のhtml文書を作成する。
ユーザ103は、クライアントPC102の表示部205に表示されているフォーラムメニューから、自らの発意に基づき、フォーラムに書き込まれているトピックを選択する等の行為を行う。
フォーラムメニューの画面については、本発明とは直接関係しないので省略する。
なお、ユーザ103が所属するフォーラム、そしてフォーラムに書き込まれているトピックについては、フォーラムデータベース308がこれを記録している。
ユーザ103は、クライアントPC102の表示部205に表示されているフォーラムメニューから、自らの発意に基づき、フォーラムに書き込まれているトピックを選択する等の行為を行う。
フォーラムメニューの画面については、本発明とは直接関係しないので省略する。
なお、ユーザ103が所属するフォーラム、そしてフォーラムに書き込まれているトピックについては、フォーラムデータベース308がこれを記録している。
トピック表示部309は、サービス提供サーバ104が提供するSNSサービスにログインしたユーザ103が、自らが所属する特定のフォーラムの特定のトピックにアクセスする際に見る、画面のhtml文書を作成する。
ユーザ103は、クライアントPC102の表示部205に表示されている、選択したトピックを表示した後、自らの発意に基づき、トピック中のコメント表示範囲を変更したり、或はトピックにコメントを書き込む等の行為を行う。
トピック表示部309が提供する画面については、後述する。
なお、トピックそのものについては、トピックデータベース310がこれを記録している。
ユーザ103は、クライアントPC102の表示部205に表示されている、選択したトピックを表示した後、自らの発意に基づき、トピック中のコメント表示範囲を変更したり、或はトピックにコメントを書き込む等の行為を行う。
トピック表示部309が提供する画面については、後述する。
なお、トピックそのものについては、トピックデータベース310がこれを記録している。
図4はトピック表示部309の詳細を示すブロック図である。
トピック表示部309は、トピック表示cgi402、コメント投稿確認cgi403、コメント書き込みcgi404の三つのcgiと、これらに付随するデータよりなる。
トピック表示cgi402は、トピックデータベース310からトピックテーブル405を読み出して、図7にて後述するトピック表示html文書を作成し、webサーバプログラム302を通じてクライアントPC102へ送信する。また、クライアントPC102からコメント表示範囲を変更する要求を受信すると、その要求に応じたトピック表示html文書を作成し、クライアントPC102へ送信する。
トピック表示cgi402が作成するトピック表示html文書には、コメントを書き込むためのフォームと、書き込んだコメントを送信するための「確認」ボタンも形成されるようになっている。
ユーザ103が操作部206を操作して、「確認」ボタンを押してコメントを送信すると、コメント投稿確認cgi403がこれを受信するようになっている。つまり、トピック表示html文書の「確認」ボタンには、コメント投稿確認cgi403のURLが埋め込まれている。
トピック表示部309は、トピック表示cgi402、コメント投稿確認cgi403、コメント書き込みcgi404の三つのcgiと、これらに付随するデータよりなる。
トピック表示cgi402は、トピックデータベース310からトピックテーブル405を読み出して、図7にて後述するトピック表示html文書を作成し、webサーバプログラム302を通じてクライアントPC102へ送信する。また、クライアントPC102からコメント表示範囲を変更する要求を受信すると、その要求に応じたトピック表示html文書を作成し、クライアントPC102へ送信する。
トピック表示cgi402が作成するトピック表示html文書には、コメントを書き込むためのフォームと、書き込んだコメントを送信するための「確認」ボタンも形成されるようになっている。
ユーザ103が操作部206を操作して、「確認」ボタンを押してコメントを送信すると、コメント投稿確認cgi403がこれを受信するようになっている。つまり、トピック表示html文書の「確認」ボタンには、コメント投稿確認cgi403のURLが埋め込まれている。
コメント投稿確認cgi403は、クライアントPC102から受信したコメントのテキストデータを、一時ファイル406に記録すると共に、コメント投稿確認html文書を作成し、クライアントPC102へ送信する。
コメント投稿確認cgi403が作成するコメント投稿確認html文書には、書き込む予定のコメント文が含まれていると共に、コメントを書き込むための「投稿」ボタンが形成されるようになっている。ユーザ103が操作部206を操作して「投稿」ボタンを押すと、コメント書き込みcgi404がこれを受信するようになっている。つまり、コメント投稿確認html文書の「投稿」ボタンには、コメント書き込みcgi404のURLが埋め込まれている。
コメント投稿確認cgi403が作成するコメント投稿確認html文書には、書き込む予定のコメント文が含まれていると共に、コメントを書き込むための「投稿」ボタンが形成されるようになっている。ユーザ103が操作部206を操作して「投稿」ボタンを押すと、コメント書き込みcgi404がこれを受信するようになっている。つまり、コメント投稿確認html文書の「投稿」ボタンには、コメント書き込みcgi404のURLが埋め込まれている。
コメント書き込みcgi404は、クライアントPC102から受信したコメントのテキストデータに、商品名マスタ407、企業名マスタ408及び一般名称マスタ409を用いてURLを含むタグを埋め込んだ後、トピックテーブル405に記録する。そして、トピックテーブル405にコメントを記録した後、コメント投稿完了html文書を作成し、クライアントPC102へ送信する。
コメント書き込みcgi404が作成するコメント投稿完了html文書には、元のトピックを表示するための[戻る]ボタンが形成されるようになっている。ユーザ103が操作部206を操作して[戻る]ボタンを押すと、トピック表示cgi402がこれを受信するようになっている。つまり、コメント投稿完了html文書の[戻る]ボタンには、トピック表示cgi402のURLが埋め込まれている。
コメント書き込みcgi404が作成するコメント投稿完了html文書には、元のトピックを表示するための[戻る]ボタンが形成されるようになっている。ユーザ103が操作部206を操作して[戻る]ボタンを押すと、トピック表示cgi402がこれを受信するようになっている。つまり、コメント投稿完了html文書の[戻る]ボタンには、トピック表示cgi402のURLが埋め込まれている。
トピックデータベース310は、トピックテーブル405の集合体である。
トピックテーブル405は、一つのトピックを構成する。
トピックは、一人以上のユーザ103が投稿するコメントの集合体である。
誰かがあるテーマに基づいてトピックを新規に作成すると、概ねそのテーマに沿う内容のコメントを、トピック作成者を含む複数のユーザ103が書き込む。
トピックテーブル405は、新規に作成されると、トピックの番号が付され、フォーラムデータベース308で管理される。
トピックテーブル405は、一つのトピックを構成する。
トピックは、一人以上のユーザ103が投稿するコメントの集合体である。
誰かがあるテーマに基づいてトピックを新規に作成すると、概ねそのテーマに沿う内容のコメントを、トピック作成者を含む複数のユーザ103が書き込む。
トピックテーブル405は、新規に作成されると、トピックの番号が付され、フォーラムデータベース308で管理される。
図5はコメント書き込みcgi404のブロック図である。
コメント書き込みcgi404は、クライアントPC102から受信したコメントをトピックテーブル405に書き込む際、コメントを構成する文章内に、商品名の文字列及び企業名及び一般名称の文字列の組み合わせがあったら、商品名に該当する商品の広告のhtml文書を表示するためのリンク(URL)を埋め込む。これは、HTMLで「<a href="http://…">」で始まり、「</a>」で終わる、「Aタグ」と呼ばれるタグを埋め込むことを指す。
コメント書き込みcgi404は、所定のプログラミング言語で作られるプログラムである。例えばperlのような言語が用いられる。
コメント書き込みcgi404は、クライアントPC102から受信したコメントをトピックテーブル405に書き込む際、コメントを構成する文章内に、商品名の文字列及び企業名及び一般名称の文字列の組み合わせがあったら、商品名に該当する商品の広告のhtml文書を表示するためのリンク(URL)を埋め込む。これは、HTMLで「<a href="http://…">」で始まり、「</a>」で終わる、「Aタグ」と呼ばれるタグを埋め込むことを指す。
コメント書き込みcgi404は、所定のプログラミング言語で作られるプログラムである。例えばperlのような言語が用いられる。
クライアントPC102から受信したコメントのデータは、一旦入力バッファ502に格納される。
入力バッファ502に格納されたコメントのデータは、評価用バッファ503に複写される。
評価用バッファ503に格納されたコメントのデータは、整形処理部504を経て、改行、記号等の除去が行われる。
その後、コメントのデータは分かち書き処理部505に入力され、分かち書き処理によって単語に分解される。分かち書き処理部505は、英語圏の言語とは異なり単語の切れ目が機械的に判別し難い日本語に対し、周知の分かち書き処理を施す。分かち書き処理とは、形態素解析とも呼ばれる、周知の自然言語処理である。一例として、Mecab(http://mecab.sourceforge.net/)、Chasen(http://chasen-legacy.sourceforge.jp/)、KAKASI(http://kakasi.namazu.org/)等のプログラムが知られている。
入力バッファ502に格納されたコメントのデータは、評価用バッファ503に複写される。
評価用バッファ503に格納されたコメントのデータは、整形処理部504を経て、改行、記号等の除去が行われる。
その後、コメントのデータは分かち書き処理部505に入力され、分かち書き処理によって単語に分解される。分かち書き処理部505は、英語圏の言語とは異なり単語の切れ目が機械的に判別し難い日本語に対し、周知の分かち書き処理を施す。分かち書き処理とは、形態素解析とも呼ばれる、周知の自然言語処理である。一例として、Mecab(http://mecab.sourceforge.net/)、Chasen(http://chasen-legacy.sourceforge.jp/)、KAKASI(http://kakasi.namazu.org/)等のプログラムが知られている。
分かち書き処理部505で単語単位に分解された評価用バッファ503内のコメントは、単語の出現順に配列変数506に格納される。配列変数506は、メモリ(RAM)内に設けられたテーブルであり、二つの引数を備える。
ここでは、配列変数506の名称として、tango[n,o]というものが設けられているとする。
引数nは、1から始まる、コメント内に出現する単語の順番である。
引数oは、0,1,2,3の値が与えられる。
引数oが0のときは、単語そのものが書き込まれる。
引数oが1のときは、後述する企業IDが書き込まれる。
引数oが2のときは、後述する一般名称IDが書き込まれる。
引数oが3のときは、組み合わせを示すフラグが書き込まれる。
tango[n,o]は、初期状態では単語が記録される以外、引数oが1及び2の値にはそれぞれ「0」が、引数oが3の値には論理の「偽」を表す「0」が書き込まれる。
ここでは、配列変数506の名称として、tango[n,o]というものが設けられているとする。
引数nは、1から始まる、コメント内に出現する単語の順番である。
引数oは、0,1,2,3の値が与えられる。
引数oが0のときは、単語そのものが書き込まれる。
引数oが1のときは、後述する企業IDが書き込まれる。
引数oが2のときは、後述する一般名称IDが書き込まれる。
引数oが3のときは、組み合わせを示すフラグが書き込まれる。
tango[n,o]は、初期状態では単語が記録される以外、引数oが1及び2の値にはそれぞれ「0」が、引数oが3の値には論理の「偽」を表す「0」が書き込まれる。
商品リンク埋め込み部507は、商品名マスタ407を参照しながら配列変数506内の単語を照会して、当該単語が商品名であるか否かを判断する。配列変数506内のある単語が商品名であれば、入力バッファ502の該当箇所に、商品に該当するリンクを埋め込む。
企業名・一般名称チェック部508は、企業名マスタ408及び一般名称マスタ409を参照しながら配列変数506内の単語を照会して、当該単語が企業名であるか、一般名称であるか、否かを判断する。
配列変数506内のある単語が企業名であれば、tango[n,1]に企業IDを書き込む。
配列変数506内のある単語が一般名称であれば、tango[n,2]に一般名称IDを書き込む。
配列変数506内のある単語が企業名であれば、tango[n,1]に企業IDを書き込む。
配列変数506内のある単語が一般名称であれば、tango[n,2]に一般名称IDを書き込む。
複合リンク埋め込み部509は、商品名マスタ407を参照しながら、企業名と一般名称の組み合わせよりなる文字列パターンが存在するか否かをチェックする。その際、企業名の単語と一般名称の単語との間の文字列が所定の文字列パターンに合致しているか否かを、正規表現パターン510を参照して確認する。
配列変数506内のある単語とある単語が、企業名と一般名称の組み合わせよりなる文字列パターンの条件を充足している場合は、tango[n,3]にそれぞれ論理の「真」を示す「1」を書き込む。
そして、当該パターンに該当する入力バッファ502の該当箇所に、商品に該当するリンクを埋め込む。
配列変数506内のある単語とある単語が、企業名と一般名称の組み合わせよりなる文字列パターンの条件を充足している場合は、tango[n,3]にそれぞれ論理の「真」を示す「1」を書き込む。
そして、当該パターンに該当する入力バッファ502の該当箇所に、商品に該当するリンクを埋め込む。
企業名・一般名称リンク埋め込み部511は、企業名マスタ408及び一般名称マスタ409を参照しながら配列変数506内の単語を照会して、当該単語が企業名或は一般名称で、且つtango[n,3]が「0」である単語を見つけて、当該パターンに該当する入力バッファ502の該当箇所に、企業名或は一般名称に該当するリンクを埋め込む。
以上、商品リンク埋め込み部507、複合リンク埋め込み部509、企業名・一般名称リンク埋め込み部511によってリンクを埋め込まれた入力バッファ502内のコメントデータは、トピックテーブル405に書き込まれる。
図6(a)、(b)、(c)及び(d)は、各種テーブルの概略図である。各テーブルには、フィールド名とサンプルレコードを示す。
図6(a)は企業名マスタ408である。
「企業ID」フィールドは、企業をユニークに識別するIDが格納される。
「企業名」フィールドは、企業の名称が格納される。
「リンクURL」フィールドは、企業のホームページのURLが格納される。
図6(a)は企業名マスタ408である。
「企業ID」フィールドは、企業をユニークに識別するIDが格納される。
「企業名」フィールドは、企業の名称が格納される。
「リンクURL」フィールドは、企業のホームページのURLが格納される。
図6(b)は一般名称マスタ409である。
「一般名称ID」フィールドは、一般名称をユニークに識別するIDが格納される。
「一般名称」フィールドは、一般名称そのものが格納される。
「説明文」フィールドは、一般名称の内容を説明する説明文が格納される。
「一般名称ID」フィールドは、一般名称をユニークに識別するIDが格納される。
「一般名称」フィールドは、一般名称そのものが格納される。
「説明文」フィールドは、一般名称の内容を説明する説明文が格納される。
図6(c)は商品名マスタ407である。
「商品名」フィールドは商品名が格納される。
「リンクURL」フィールドは、商品の広告などが記されるホームページのURLが格納される。
「企業ID」フィールドは、企業名マスタ408のそれと同じである。
「一般名称ID」フィールドは、一般名称マスタ409のそれと同じである。
「商品名」フィールドは商品名が格納される。
「リンクURL」フィールドは、商品の広告などが記されるホームページのURLが格納される。
「企業ID」フィールドは、企業名マスタ408のそれと同じである。
「一般名称ID」フィールドは、一般名称マスタ409のそれと同じである。
図6(d)はトピックテーブル405である。
「ユーザID」フィールドは、コメントを書き込んだユーザ103のユーザIDである。
「投稿日時」フィールドは、ユーザ103がコメントを書き込んだ日時である。
「コメント文」フィールドは、コメントの文章そのものである。
「ユーザID」フィールドは、コメントを書き込んだユーザ103のユーザIDである。
「投稿日時」フィールドは、ユーザ103がコメントを書き込んだ日時である。
「コメント文」フィールドは、コメントの文章そのものである。
図7(a)、(b)、(c)、(d)、(e)、(f)、(g)、(h)及び(i)は、企業名と一般名称の組み合わせの一例と、正規表現パターンを示す図である。
図7(a)、(b)、(c)、(d)、(e)及び(f)は、企業名と一般名称の組み合わせの一例を示す。
図7(g)は、図7(a)に示す、企業名と一般名称の間の文字列に合致する正規表現パターンである。
図7(h)は、図7(b)、(c)、(d)、(e)及び(f)に示す、企業名と一般名称の間の文字列に合致する正規表現パターンである。
図7(i)は、図7(g)及び(h)を同時に表現する正規表現パターンである。
正規表現とは、周知の文字列一致規則であり、またその機能を指す。なお、この図7(g)、(h)及び(i)で示す正規表現は、Perl(http://www.perl.org/)、Python(http://www.python.org/)、Ruby(http://www.ruby-lang.org/ja/)等で使用される拡張正規表現を採用している。
”()”(丸括弧)は文字列をグループ化する。但し、”\”(半角円マーク或はバックスラッシュ。正規表現では「エスケープ文字」という。)を直前に置くことで、グループ化の機能を無効にし、丸括弧の文字自体を表現する。
丸括弧中の”|”(縦棒)は、この演算子で区切られる文字列のどれか一つに合致することを示す、論理和を示す。「選言演算子」ともいう。
”{m,n}”(中括弧に囲まれた整数mと整数n)は、直前の文字或はブロックのm回以上n回以下の繰り返しに合致することを示す。ここでは便宜的に「繰り返し演算子」と呼ぶこととする。
図7(a)、(b)、(c)、(d)、(e)及び(f)は、企業名と一般名称の組み合わせの一例を示す。
図7(g)は、図7(a)に示す、企業名と一般名称の間の文字列に合致する正規表現パターンである。
図7(h)は、図7(b)、(c)、(d)、(e)及び(f)に示す、企業名と一般名称の間の文字列に合致する正規表現パターンである。
図7(i)は、図7(g)及び(h)を同時に表現する正規表現パターンである。
正規表現とは、周知の文字列一致規則であり、またその機能を指す。なお、この図7(g)、(h)及び(i)で示す正規表現は、Perl(http://www.perl.org/)、Python(http://www.python.org/)、Ruby(http://www.ruby-lang.org/ja/)等で使用される拡張正規表現を採用している。
”()”(丸括弧)は文字列をグループ化する。但し、”\”(半角円マーク或はバックスラッシュ。正規表現では「エスケープ文字」という。)を直前に置くことで、グループ化の機能を無効にし、丸括弧の文字自体を表現する。
丸括弧中の”|”(縦棒)は、この演算子で区切られる文字列のどれか一つに合致することを示す、論理和を示す。「選言演算子」ともいう。
”{m,n}”(中括弧に囲まれた整数mと整数n)は、直前の文字或はブロックのm回以上n回以下の繰り返しに合致することを示す。ここでは便宜的に「繰り返し演算子」と呼ぶこととする。
図7(a)の場合は、文字列の末尾が「の」で統一されている。そして、「の」の直前が、何もない場合、「株式会社」の場合、「(株)」の場合、「社」の場合、そして「社製」の場合と、5パターン存在する。そこで、丸括弧内に4パターンの文字列を選言演算子で区切って並べ、繰り返し演算子で「0回以上1回以下」を指定する。これで、「の」の直前に文字列が何もない場合を含め、5パターンを表現できる。
図7(b)の場合は、文字列の末尾が「が開発した」で統一されている。
図7(c)の場合は、文字列の末尾が「が販売する」で統一されている。
図7(d)の場合は、文字列の末尾が「が販売している」で統一されている。
図7(e)の場合は、文字列の末尾が「で販売している」で統一されている。
図7(f)の場合は、文字列の末尾が「が製造した」で統一されている。
そこで、これらを包含するべく記述した正規表現が、
(が|で)((開発|製造)した|販売(する|している))
である。
以上のような手順で作成した正規表現パターンが、図7(i)である。
図7(b)の場合は、文字列の末尾が「が開発した」で統一されている。
図7(c)の場合は、文字列の末尾が「が販売する」で統一されている。
図7(d)の場合は、文字列の末尾が「が販売している」で統一されている。
図7(e)の場合は、文字列の末尾が「で販売している」で統一されている。
図7(f)の場合は、文字列の末尾が「が製造した」で統一されている。
そこで、これらを包含するべく記述した正規表現が、
(が|で)((開発|製造)した|販売(する|している))
である。
以上のような手順で作成した正規表現パターンが、図7(i)である。
図8は、クライアントPC102の表示部205に表示される、トピック表示画面である。
図9(a)及び(b)は、クライアントPC102の表示部205に表示される、コメント投稿確認画面及びコメント投稿完了画面である。
図10は、クライアントPC102の表示部205に表示される画面に基づいた、状態遷移図である。
図9(a)及び(b)は、クライアントPC102の表示部205に表示される、コメント投稿確認画面及びコメント投稿完了画面である。
図10は、クライアントPC102の表示部205に表示される画面に基づいた、状態遷移図である。
ユーザ103はクライアントPC102の表示部205にフォーラムメニューを表示させている状態から、所定の操作を行うことで、所望のトピックを選択する。すると、その操作情報が操作部206から入出力制御部203によってトピック表示cgi402に送信される。
トピック表示cgi402は、ユーザ103によって選択されたトピックに該当するトピックテーブル405を、トピックデータベース310から選び出して読み出し、トピック表示html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、トピック表示html文書を受信すると、これを表示部205に表示する。これが図8のトピック表示画面802である。
トピック表示cgi402は、ユーザ103によって選択されたトピックに該当するトピックテーブル405を、トピックデータベース310から選び出して読み出し、トピック表示html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、トピック表示html文書を受信すると、これを表示部205に表示する。これが図8のトピック表示画面802である。
これより図8のトピック表示画面802の詳細を説明する。これは図10に示す状態遷移図の、トピック表示状態P1002に該当する。
フォーラム名803は表示されているトピックが属するフォーラムの名称である。
タイトル804は、このトピックを作成したユーザ103が記入する、トピックの表題である。
これらはフォーラムデータベース308に記録されている。
画面左側の欄は、投稿者欄805である。
画面右側の欄の先頭にある文章は、オリジナルポスト806という。
画面右側の欄の二番目以降の文章は、コメント807という。
オリジナルポスト806及びコメント807の上側には、投稿日時808が表示されている。
これらはトピックテーブル405に記録されている。
フォーラム名803は表示されているトピックが属するフォーラムの名称である。
タイトル804は、このトピックを作成したユーザ103が記入する、トピックの表題である。
これらはフォーラムデータベース308に記録されている。
画面左側の欄は、投稿者欄805である。
画面右側の欄の先頭にある文章は、オリジナルポスト806という。
画面右側の欄の二番目以降の文章は、コメント807という。
オリジナルポスト806及びコメント807の上側には、投稿日時808が表示されている。
これらはトピックテーブル405に記録されている。
表示範囲リンク808は、コメント807を表示する番号とその範囲を指定するリンクである。
全表示リンク809は、トピックの全てのコメント807の表示を指定するリンクである。
最新表示リンク810は、トピックの直近20件のコメント807の表示を指定するリンクである。
これら表示範囲リンク808、全表示リンク809及び最新表示リンク810は、トピック表示cgi402へのリンクが埋め込まれている。
これら表示範囲リンク808、全表示リンク809及び最新表示リンク810を押す行為は、図10のステップS1003の「メッセージ表示範囲変更」に該当する。
全表示リンク809は、トピックの全てのコメント807の表示を指定するリンクである。
最新表示リンク810は、トピックの直近20件のコメント807の表示を指定するリンクである。
これら表示範囲リンク808、全表示リンク809及び最新表示リンク810は、トピック表示cgi402へのリンクが埋め込まれている。
これら表示範囲リンク808、全表示リンク809及び最新表示リンク810を押す行為は、図10のステップS1003の「メッセージ表示範囲変更」に該当する。
コメント入力フォーム811は、コメント807を書き込む入力欄である。
「確認」ボタン812は、コメント入力フォーム811にコメント807を書き込んだ後、コメント807をサービス提供サーバ104に送信するためのボタンである。この「確認」ボタン812は、コメント投稿確認cgi403へのリンクが埋め込まれている。
「確認」ボタン812を押す行為は、図10のステップS1004に該当する。
「確認」ボタン812は、コメント入力フォーム811にコメント807を書き込んだ後、コメント807をサービス提供サーバ104に送信するためのボタンである。この「確認」ボタン812は、コメント投稿確認cgi403へのリンクが埋め込まれている。
「確認」ボタン812を押す行為は、図10のステップS1004に該当する。
ユーザ103は、クライアントPC102の表示部205にトピック表示画面802が表示されている状態で、コメント入力フォーム811にコメント807を書き込んだ後、「確認」ボタン812を押すと、その操作情報及びコメント807を構成する文字列データが、入出力制御部203によってコメント投稿確認cgi403に送信される。
コメント投稿確認cgi403は、受信したコメント807の文字列データを一時ファイル406に書き出した後、コメント807の文字列データを含むコメント投稿確認html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、コメント投稿確認html文書を受信すると、これを表示部205に表示する。これが図9(a)のコメント投稿確認画面902である。
コメント投稿確認cgi403は、受信したコメント807の文字列データを一時ファイル406に書き出した後、コメント807の文字列データを含むコメント投稿確認html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、コメント投稿確認html文書を受信すると、これを表示部205に表示する。これが図9(a)のコメント投稿確認画面902である。
これより図9(a)のコメント投稿確認画面902の詳細を説明する。これは図10に示す状態遷移図の、コメント投稿確認状態P1005に該当する。
コメント表示欄903は、ユーザ103が書き込んだコメント807の文章が表示される領域である。
ユーザ103はこれを見て、投稿するか、改めてコメント807の文章を書き直すかを選択する。
「投稿」ボタン904は、コメント表示欄903に表示されたコメント807をそのままサービス提供サーバ104に送信し、投稿するためのボタンである。この「投稿」ボタン904は、コメント書き込みcgi404へのリンクが埋め込まれている。
「投稿」ボタン904を押す行為は、図10のステップS1006に該当する。
「中止」ボタン905は、コメント表示欄903に表示されたコメント807を再度編集し直すためのボタンである。この「中止」ボタン905は、トピック表示cgi402へのリンクが埋め込まれている。
「中止」ボタン905を押す行為は、図10のステップS1007に該当する。
コメント表示欄903は、ユーザ103が書き込んだコメント807の文章が表示される領域である。
ユーザ103はこれを見て、投稿するか、改めてコメント807の文章を書き直すかを選択する。
「投稿」ボタン904は、コメント表示欄903に表示されたコメント807をそのままサービス提供サーバ104に送信し、投稿するためのボタンである。この「投稿」ボタン904は、コメント書き込みcgi404へのリンクが埋め込まれている。
「投稿」ボタン904を押す行為は、図10のステップS1006に該当する。
「中止」ボタン905は、コメント表示欄903に表示されたコメント807を再度編集し直すためのボタンである。この「中止」ボタン905は、トピック表示cgi402へのリンクが埋め込まれている。
「中止」ボタン905を押す行為は、図10のステップS1007に該当する。
ユーザ103は、クライアントPC102の表示部205にコメント投稿確認画面902が表示されている状態で、「投稿」ボタン904を押すと、その操作情報及びコメント表示欄903に表示されているコメント807を構成する文字列データが、入出力制御部203によってコメント書き込みcgi404に送信される。
コメント書き込みcgi404は、受信したコメント807の文字列データをトピックテーブル405に書き込んだ後、コメント807投稿完了html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、コメント807投稿完了html文書を受信すると、これを表示部205に表示する。これが図9(b)のコメント投稿完了画面906である。
コメント書き込みcgi404は、受信したコメント807の文字列データをトピックテーブル405に書き込んだ後、コメント807投稿完了html文書を作成し、クライアントPC102へ送信する。
クライアントPC102のwebブラウザ202は、コメント807投稿完了html文書を受信すると、これを表示部205に表示する。これが図9(b)のコメント投稿完了画面906である。
これより図9(b)のコメント投稿完了画面906の詳細を説明する。これは図10に示す状態遷移図の、コメント投稿完了状態P1008に該当する。
「戻る」ボタン907は、図8のトピック表示画面802に戻るためのボタンである。この「戻る」ボタン907は、トピック表示cgi402へのリンクが埋め込まれている。
「戻る」ボタン907を押す行為は、図10のステップS1009に該当する。
「戻る」ボタン907は、図8のトピック表示画面802に戻るためのボタンである。この「戻る」ボタン907は、トピック表示cgi402へのリンクが埋め込まれている。
「戻る」ボタン907を押す行為は、図10のステップS1009に該当する。
図11は、クライアントPC102の表示部205に表示される、トピック表示画面802である。図8とは別のトピックを表示させた状態を示す。
コメント807中、「戊社の体温計」という文字列に、アンダーバーが記されている。この、「企業名+一般名称」の組み合わせに埋め込まれているリンクが、複合名リンク1102である。
この複合名リンク1102にマウスカーソルを置くと、フキダシ1103が表示される。フキダシ1103には比較的短い商品の宣伝文が記され、更に詳細な内容を知りたいユーザ103のために、宣伝リンク1104が埋め込まれている。このフキダシ1103は、周知のAjax(Asynchronous JavaScript(登録商標) + XML:webページのリロードを伴わずに、webサーバとXML形式のデータの送受信を行って処理を進めていく、対話型webアプリケ-ションの実装形態。)にて実現される。
宣伝リンク1104には、当該商品の詳細を示すホームページのURLが埋め込まれており、クリックすると当該ホームページにアクセスする。
なお、複合名リンク1102自身も宣伝リンク1104に埋め込まれているリンク先のURLが埋め込まれており、クリックすると、同様に当該ホームページにアクセスする。
コメント807中、「戊社の体温計」という文字列に、アンダーバーが記されている。この、「企業名+一般名称」の組み合わせに埋め込まれているリンクが、複合名リンク1102である。
この複合名リンク1102にマウスカーソルを置くと、フキダシ1103が表示される。フキダシ1103には比較的短い商品の宣伝文が記され、更に詳細な内容を知りたいユーザ103のために、宣伝リンク1104が埋め込まれている。このフキダシ1103は、周知のAjax(Asynchronous JavaScript(登録商標) + XML:webページのリロードを伴わずに、webサーバとXML形式のデータの送受信を行って処理を進めていく、対話型webアプリケ-ションの実装形態。)にて実現される。
宣伝リンク1104には、当該商品の詳細を示すホームページのURLが埋め込まれており、クリックすると当該ホームページにアクセスする。
なお、複合名リンク1102自身も宣伝リンク1104に埋め込まれているリンク先のURLが埋め込まれており、クリックすると、同様に当該ホームページにアクセスする。
図12(a)、(b)及び(c)は、それぞれトピック表示画面802の一部拡大図である。これらは企業名リンク、一般名称リンク及び商品名リンクを示す図である。
図12(a)は、企業名リンクを示す。
コメント807中に「戊社について」というような、「企業名+一般名称」の組み合わせでない、企業名が単独で記されている場合は、企業名に当該企業のホームページへのリンクが埋め込まれる。これ以降、このリンクを企業名リンク1202と呼ぶ。この場合、フキダシ1103は表示されない。
同様に、図12(b)、は、一般名称リンクを示す。
コメント807中に「体温計について」というような、「企業名+一般名称」の組み合わせでない、一般名称が単独で記されている場合は、一般名称にリンクが埋め込まれる。このリンクにマウスカーソルを置くと、当該一般名称を説明する短い文章が記されるフキダシ1103が表示される。これ以降、このリンクを一般名称リンク1203と呼ぶ。
図12(a)は、企業名リンクを示す。
コメント807中に「戊社について」というような、「企業名+一般名称」の組み合わせでない、企業名が単独で記されている場合は、企業名に当該企業のホームページへのリンクが埋め込まれる。これ以降、このリンクを企業名リンク1202と呼ぶ。この場合、フキダシ1103は表示されない。
同様に、図12(b)、は、一般名称リンクを示す。
コメント807中に「体温計について」というような、「企業名+一般名称」の組み合わせでない、一般名称が単独で記されている場合は、一般名称にリンクが埋め込まれる。このリンクにマウスカーソルを置くと、当該一般名称を説明する短い文章が記されるフキダシ1103が表示される。これ以降、このリンクを一般名称リンク1203と呼ぶ。
また同様に、図示はしていないが、コメント807中に「メディサーモについて」というような、「商品名」そのものが記されている場合は、複合名リンク1102と同じリンクを埋め込む。したがって、マウスカーソルを置くとフキダシ1103が表示され、フキダシ1103内の宣伝リンク1104をクリックすると当該商品の詳細を示すホームページが表示される。これ以降、このリンクを商品名リンクと呼ぶ。
上述の複合名リンク1102、企業名リンク1202、そして一般名称リンク1203をコメント807内に埋め込む作業は、コメント書き込みcgi404内で行われる。
図13は、コメント書き込みcgi404の、コメント書き込みの際の処理の流れを示すフローチャートである。
コメント書き込みcgi404は、クライアントPC102からコメント807のテキストデータを受信すると、処理を開始する(S1301)。最初に前処理として、コメント807のテキストデータは、一旦入力バッファ502に蓄積される。その後、評価用バッファ503にコピーされた後、整形処理部504に入力される。
整形処理部504は、入力されたコメント807のテキストデータに対し、改行、スペース及び記号等を除去する(S1302)。
次に、整形処理されたコメント807のテキストデータは、分かち書き処理部505で分かち書き処理が行われ、単語に分解される。分解された単語は配列変数506に格納される(S1303)。
コメント書き込みcgi404は、クライアントPC102からコメント807のテキストデータを受信すると、処理を開始する(S1301)。最初に前処理として、コメント807のテキストデータは、一旦入力バッファ502に蓄積される。その後、評価用バッファ503にコピーされた後、整形処理部504に入力される。
整形処理部504は、入力されたコメント807のテキストデータに対し、改行、スペース及び記号等を除去する(S1302)。
次に、整形処理されたコメント807のテキストデータは、分かち書き処理部505で分かち書き処理が行われ、単語に分解される。分解された単語は配列変数506に格納される(S1303)。
次に、商品リンク埋め込み部507は商品名マスタ407を参照しながら配列変数506内の商品名を探索し、あれば商品名リンクを入力バッファ502内のコメント807のテキストデータに埋め込む(S1304)。
そして、企業名・一般名称チェック部508、複合リンク埋め込み部509、企業名・一般名称リンク1203埋め込み部511による、企業名+一般名称リンク埋め込み処理を行う(S1305)。
最後に、リンクが埋め込まれた入力バッファ502中のコメント807のテキストデータは、トピックテーブル405に格納されて(S1306)、処理を終了する(S1307)。
図14、図15及び図16は、企業名+一般名称リンク埋め込み処理の詳細を示すフローチャートである。
処理を開始すると(S1401)、最初にカウンタ変数iを1に初期化する(S1402)。
次に、企業名・一般名称チェック部508は、配列変数tango[i,0]、つまりi番目の単語が企業名であるか否かを、企業名マスタ408と照合しつつ検証する(S1403)。もし、企業名であるならば(S1403のY)、配列変数tango[i,1]、つまり企業IDを格納するフィールドに、当該企業名の企業IDを代入する(S1404)。
処理を開始すると(S1401)、最初にカウンタ変数iを1に初期化する(S1402)。
次に、企業名・一般名称チェック部508は、配列変数tango[i,0]、つまりi番目の単語が企業名であるか否かを、企業名マスタ408と照合しつつ検証する(S1403)。もし、企業名であるならば(S1403のY)、配列変数tango[i,1]、つまり企業IDを格納するフィールドに、当該企業名の企業IDを代入する(S1404)。
ステップS1403で、企業名でないならば(S1403のN)、企業名・一般名称チェック部508は、配列変数tango[i,0]、つまりi番目の単語が一般名称であるか否かを、一般名称マスタ409と照合しつつ検証する(S1405)。もし、一般名称であるならば(S1405のY)、配列変数tango[i,2]、つまり一般名称IDを格納するフィールドに、当該一般名称の一般名称IDを代入する(S1406)。
ステップS1405で、一般名称でないならば(S1405のN)、配列変数tangoに対する操作は行わない。
ステップS1405で、一般名称でないならば(S1405のN)、配列変数tangoに対する操作は行わない。
ステップS1404、ステップS1406、ステップS1405のNの後は、カウンタ変数iをインクリメントする(S1407)。そして、i番目の単語の有無を検証し(S1408)、あれば(S1408のN)再度ステップS1403から繰り返す。なければ(S1408のY)、次のステップに移行する。
図15を参照して、フローチャートの続きを説明する。
先ず、カウンタ変数iを1に初期化する(S1509)。
次に、複合リンク埋め込み部509は、配列変数tango[i,1]が0でない、つまりi番目の単語に企業IDが記入されているか否かを検証する(S1510)。配列変数tango[i,1]に企業IDが入っていなければ初期値の「0」のままである。
企業IDが入っていれば(S1510のY)、次にカウンタ変数jを1に初期化する(S1511)。
次に、複合リンク埋め込み部509は、配列変数tango[i+j,2]が0でない、つまりi+j番目の単語に一般名称IDが記入されているか否かを検証する(S1512)。配列変数tango[i+j,2]に一般名称IDが入っていなければ初期値の「0」のままである。もし、初期値「0」のままであれば(S1512のN)、カウンタ変数jをインクリメントする(S1513)。そして、カウンタ変数jが最大3になるまで(S1514のN)、処理を繰り返す(S1512)。
ステップS1512で一般名称IDが入っていれば(S1512のY)、この時点で
・tango[i,0]は企業名で、tango[i,1]には企業IDが格納されていると共に、
・tango[i+j,0]は一般名称で、tango[i+j,2]には一般名称IDが格納されており、
・tango[i+1,0]とtango[i+j−1,0]は1語以上3語以下である
ことが判る。つまり、「企業名+一般名称」の、複合名リンク1102の条件に合致する可能性がある。
そこで、次に複合リンク埋め込み部509は、tango[i+1,0]からtango[i+j−1,0]までの単語の集合体が、正規表現パターン510に合致するか否か、検証する(S1515)。
正規表現パターン510に合致したら(S1515のY)、tango[i,3]とtango[i+j,3]に、複合名リンク1102に該当することを示すフラグとして、論理値の「真」(「1」)を代入する(S1516)。なお、正規表現パターン510に合致しなかったら(S1515のN)、フラグ操作は行わない。
先ず、カウンタ変数iを1に初期化する(S1509)。
次に、複合リンク埋め込み部509は、配列変数tango[i,1]が0でない、つまりi番目の単語に企業IDが記入されているか否かを検証する(S1510)。配列変数tango[i,1]に企業IDが入っていなければ初期値の「0」のままである。
企業IDが入っていれば(S1510のY)、次にカウンタ変数jを1に初期化する(S1511)。
次に、複合リンク埋め込み部509は、配列変数tango[i+j,2]が0でない、つまりi+j番目の単語に一般名称IDが記入されているか否かを検証する(S1512)。配列変数tango[i+j,2]に一般名称IDが入っていなければ初期値の「0」のままである。もし、初期値「0」のままであれば(S1512のN)、カウンタ変数jをインクリメントする(S1513)。そして、カウンタ変数jが最大3になるまで(S1514のN)、処理を繰り返す(S1512)。
ステップS1512で一般名称IDが入っていれば(S1512のY)、この時点で
・tango[i,0]は企業名で、tango[i,1]には企業IDが格納されていると共に、
・tango[i+j,0]は一般名称で、tango[i+j,2]には一般名称IDが格納されており、
・tango[i+1,0]とtango[i+j−1,0]は1語以上3語以下である
ことが判る。つまり、「企業名+一般名称」の、複合名リンク1102の条件に合致する可能性がある。
そこで、次に複合リンク埋め込み部509は、tango[i+1,0]からtango[i+j−1,0]までの単語の集合体が、正規表現パターン510に合致するか否か、検証する(S1515)。
正規表現パターン510に合致したら(S1515のY)、tango[i,3]とtango[i+j,3]に、複合名リンク1102に該当することを示すフラグとして、論理値の「真」(「1」)を代入する(S1516)。なお、正規表現パターン510に合致しなかったら(S1515のN)、フラグ操作は行わない。
複合名リンク1102に該当した文字列は検証作業が済んだので、カウンタ変数iはj+1増加させる(S1517)。逆に、複合名リンク1102に該当していない単語は、その次の単語の検証をしなければならないので、カウンタ変数iをインクリメントする(S1518)。
こうして、i番目の単語がなくなるまでは(S1519のN)、単語の検証及びフラグ付与作業を繰り返す。
こうして、i番目の単語がなくなるまでは(S1519のN)、単語の検証及びフラグ付与作業を繰り返す。
i番目の単語がなくなったら(S1519のY)、次の処理に入る。
図16を参照して、フローチャートの続きを説明する。
先ず、カウンタ変数iを1に初期化する(S1620)。
次に、複合リンク埋め込み部509は、配列変数tango[i,1]が0でない、つまりi番目の単語に企業IDが記入されているか否かを検証する(S1621)。配列変数tango[i,1]に企業IDが入っていなければ初期値の「0」のままである。
企業IDが入っていれば(S1621のY)、次に配列変数tango[i,3]が論理の「真」(「1」)であるか、つまり複合名リンク1102に該当するか否かを検証する(S1622)。
当該単語に複合名リンク1102のフラグが立っていれば(S1622のY)、それは企業IDの複合名リンク1102であるので、対になる一般名称の単語がすぐ後に必ずある。そこで、カウンタ変数jを1に初期化して(S1623)、配列変数tango[i+j,3]が論理の「真」であるか否か確認する(S1624)。なければ(S1624のN)、カウンタ変数jをインクリメントして(S1625)、見つかるまで探す。
見つかったら(S1624のY)、複合名リンク1102を埋め込む処理を行う(S1626)。そして、当該文字列のリンク埋め込み処理は終わったので、カウンタ変数iはj+1だけ進める(S1627)。
図16を参照して、フローチャートの続きを説明する。
先ず、カウンタ変数iを1に初期化する(S1620)。
次に、複合リンク埋め込み部509は、配列変数tango[i,1]が0でない、つまりi番目の単語に企業IDが記入されているか否かを検証する(S1621)。配列変数tango[i,1]に企業IDが入っていなければ初期値の「0」のままである。
企業IDが入っていれば(S1621のY)、次に配列変数tango[i,3]が論理の「真」(「1」)であるか、つまり複合名リンク1102に該当するか否かを検証する(S1622)。
当該単語に複合名リンク1102のフラグが立っていれば(S1622のY)、それは企業IDの複合名リンク1102であるので、対になる一般名称の単語がすぐ後に必ずある。そこで、カウンタ変数jを1に初期化して(S1623)、配列変数tango[i+j,3]が論理の「真」であるか否か確認する(S1624)。なければ(S1624のN)、カウンタ変数jをインクリメントして(S1625)、見つかるまで探す。
見つかったら(S1624のY)、複合名リンク1102を埋め込む処理を行う(S1626)。そして、当該文字列のリンク埋め込み処理は終わったので、カウンタ変数iはj+1だけ進める(S1627)。
ステップS1621で、当該単語が企業名でなければ(S1621のN)、次に配列変数tango[i,2]が0でない、つまりi番目の単語が一般名称であるか否かを検証する(S1628)。一般名称であれば(S1628のY)、一般名称にリンクを埋め込む処理を行う(S1629)。
一般名称でなければ(S1628のN)、リンクを埋め込む処理は行わない。
一般名称でなければ(S1628のN)、リンクを埋め込む処理は行わない。
ステップS1622で、当該単語が企業名であるが複合名リンク1102のフラグが立っていない場合(S1622のN)は、企業名にリンクを埋め込む処理を行う(S1630)。
ステップS1628のN、ステップS1629及びステップS1630の後は、カウンタ変数iをインクリメントする(S1631)。
こうして、配列変数506の中に含まれている単語に対して、適切にリンクを埋め込む処理を最初から最後まで満遍なく行う(S1632のN)。単語の検証が終わったら(S1632のY)、処理を終了する(S1633)。
こうして、配列変数506の中に含まれている単語に対して、適切にリンクを埋め込む処理を最初から最後まで満遍なく行う(S1632のN)。単語の検証が終わったら(S1632のY)、処理を終了する(S1633)。
改めて図14、図15及び図16に示した、企業名+一般名称リンク埋め込み処理を説明する。
企業名+一般名称リンク埋め込み処理は、配列変数tangoに対し、三回のループ処理を行う。
最初のループ処理は、図14のステップS1402からステップS1408までの間で実行する、配列変数tangoに含まれる各単語の中から、企業名と一般名称を見つけて、それぞれフラグを立てる処理である。
二度目のループ処理は、図15のステップS1509からステップS1519までの間で実行する、配列変数tangoに含まれる各単語のうち、複合名リンクの条件に合致する単語の組み合わせを見つけて、あれば複合名リンクのフラグを立てる処理である。
三度目のループ処理は、図16のステップS1620からステップS1632までの間で実行する、配列変数tangoに含まれる各単語のうち、複合名リンクのフラグが立っている単語の組み合わせを見つけたら商品リンクを埋め込み、複合名リンクのフラグが立っていない企業名リンクの単語を見つけたら企業名リンクを埋め込み、複合名リンクのフラグが立っていない一般名称リンクの単語を見つけたら一般名称リンクを埋め込む処理である。
企業名+一般名称リンク埋め込み処理は、配列変数tangoに対し、三回のループ処理を行う。
最初のループ処理は、図14のステップS1402からステップS1408までの間で実行する、配列変数tangoに含まれる各単語の中から、企業名と一般名称を見つけて、それぞれフラグを立てる処理である。
二度目のループ処理は、図15のステップS1509からステップS1519までの間で実行する、配列変数tangoに含まれる各単語のうち、複合名リンクの条件に合致する単語の組み合わせを見つけて、あれば複合名リンクのフラグを立てる処理である。
三度目のループ処理は、図16のステップS1620からステップS1632までの間で実行する、配列変数tangoに含まれる各単語のうち、複合名リンクのフラグが立っている単語の組み合わせを見つけたら商品リンクを埋め込み、複合名リンクのフラグが立っていない企業名リンクの単語を見つけたら企業名リンクを埋め込み、複合名リンクのフラグが立っていない一般名称リンクの単語を見つけたら一般名称リンクを埋め込む処理である。
本実施形態には、以下のような応用例が考えられる。
(1)前述の企業名+一般名称リンク埋め込み処理では、予め分かち書き処理で単語に分解した後、複合名リンクの条件を満たす文字列を探すために、単語が企業名或は一般名称であるか否かを、企業名マスタ及び一般名称マスタを用いて検証した。
分かち書き処理は、単語の検証作業を高速に行うための処理である。
この分かち書き処理を行わなくても、正規表現による文字列一致の検証を所定の条件下で繰り返すことで、同様の処理を実現することができる。以下、POSIX(Portable Operating System Interface for UNIX(登録商標))系OS等で周知のawk(http://www.opengroup.org/onlinepubs/009695399/utilities/awk.html http://www.kt.rim.or.jp/%7Ekbk/gawk-30/gawk_toc.html)を用いる例を示す。
・先ず、複合名リンクを探すための文字列整形処理として、クライアントPC102から入力されたコメント(文章=文字列データ)から改行を除去した後、句読点毎に改行する。
・次に、入力された文字列に対し、awkのmatch関数で企業名を探索する。企業名がヒットすれば、awkの組み込み変数RSTARTに文字列中の位置が、RLENGTHに文字列の長さが格納される。
・ヒットしたら、入力された文字列を変数RSTART以降に切り詰めて、複合名リンクの有無を確認する。一般名称が存在するか、企業名と一般名称の組み合わせは商品名マスタに存在するか、企業名と一般名称の間の文字列は正規表現で定義した文字列であるか、の三点の条件を全て充足するか、検証する。
・複合名リンクの条件を充足していれば、商品名マスタを参照して複合名リンクを埋め込む。充足していなければ、企業名マスタを参照して企業名リンクを埋め込む。
・リンクを埋め込んだ部分文字列を入力された文字列から除外して、match関数を用いた探索処理を繰り返す。
awkのmatch関数は、Perl等の他の言語でも同様の動作を得ることができる。したがって、上記の処理内容を記述する言語はawkに限られない。
(1)前述の企業名+一般名称リンク埋め込み処理では、予め分かち書き処理で単語に分解した後、複合名リンクの条件を満たす文字列を探すために、単語が企業名或は一般名称であるか否かを、企業名マスタ及び一般名称マスタを用いて検証した。
分かち書き処理は、単語の検証作業を高速に行うための処理である。
この分かち書き処理を行わなくても、正規表現による文字列一致の検証を所定の条件下で繰り返すことで、同様の処理を実現することができる。以下、POSIX(Portable Operating System Interface for UNIX(登録商標))系OS等で周知のawk(http://www.opengroup.org/onlinepubs/009695399/utilities/awk.html http://www.kt.rim.or.jp/%7Ekbk/gawk-30/gawk_toc.html)を用いる例を示す。
・先ず、複合名リンクを探すための文字列整形処理として、クライアントPC102から入力されたコメント(文章=文字列データ)から改行を除去した後、句読点毎に改行する。
・次に、入力された文字列に対し、awkのmatch関数で企業名を探索する。企業名がヒットすれば、awkの組み込み変数RSTARTに文字列中の位置が、RLENGTHに文字列の長さが格納される。
・ヒットしたら、入力された文字列を変数RSTART以降に切り詰めて、複合名リンクの有無を確認する。一般名称が存在するか、企業名と一般名称の組み合わせは商品名マスタに存在するか、企業名と一般名称の間の文字列は正規表現で定義した文字列であるか、の三点の条件を全て充足するか、検証する。
・複合名リンクの条件を充足していれば、商品名マスタを参照して複合名リンクを埋め込む。充足していなければ、企業名マスタを参照して企業名リンクを埋め込む。
・リンクを埋め込んだ部分文字列を入力された文字列から除外して、match関数を用いた探索処理を繰り返す。
awkのmatch関数は、Perl等の他の言語でも同様の動作を得ることができる。したがって、上記の処理内容を記述する言語はawkに限られない。
(2)上述の実施形態はSNSで実現するものとして説明したが、一般的なwebベースの電子掲示板システムに適用してもよい。この場合、ユーザが投稿するコメントを保持する形式はトピックテーブルのようなテーブルに限る必要はなく、またユーザ認証等の機能も必ずしも必要ではない。
本実施形態では、サービス提供システムを開示した。
いわゆる電子掲示板の機能を提供するwebサーバで、ユーザが投稿したコメントの文字列中、商品名ではないが商品名を想起できるに足りる、企業名と一般名称の組み合わせよりなる部分文字列を探索し、商品名とその宣伝を記すwebページのURLを埋め込む。これを実現するために、予め企業名マスタ、一般名称マスタ、商品名マスタを用意する。商品名マスタには、企業名と一般名称の組み合わせを商品名と紐付けてレコードに記述する。これらを参照して、部分文字列を探索する。
以上の処理により、電子掲示板システム上で商品名をユーザに周知させると共に、商品の宣伝を効果的に実現できる。
いわゆる電子掲示板の機能を提供するwebサーバで、ユーザが投稿したコメントの文字列中、商品名ではないが商品名を想起できるに足りる、企業名と一般名称の組み合わせよりなる部分文字列を探索し、商品名とその宣伝を記すwebページのURLを埋め込む。これを実現するために、予め企業名マスタ、一般名称マスタ、商品名マスタを用意する。商品名マスタには、企業名と一般名称の組み合わせを商品名と紐付けてレコードに記述する。これらを参照して、部分文字列を探索する。
以上の処理により、電子掲示板システム上で商品名をユーザに周知させると共に、商品の宣伝を効果的に実現できる。
以上、本発明の実施形態例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含む。
101…サービス提供システム、102…クライアントPC、104…サービス提供サーバ、106…インターネット、205…表示部、206…操作部、202…webブラウザ、203…入出力制御部、204…表示制御部、302…webサーバプログラム、303…ログイン画面htmlファイル、304…ログインcgi、305…ユーザマスタ、306…メインメニューcgi、307…フォーラムメニュー表示部、308…フォーラムデータベース、309…トピック表示部、310…トピックデータベース、402…トピック表示cgi、403…コメント投稿確認cgi、404…コメント書き込みcgi、405…トピックテーブル、406…一時ファイル、407…商品名マスタ、408…企業名マスタ、409…一般名称マスタ、502…入力バッファ、503…評価用バッファ、504…整形処理部、505…分かち書き処理部、506…配列変数、507…商品リンク埋め込み部、508…企業名・一般名称チェック部、509…複合リンク埋め込み部、510…正規表現パターン、511…企業名・一般名称リンク埋め込み部、802…トピック表示画面、803…フォーラム名、804…タイトル、805…投稿者欄、806…オリジナルポスト、807…コメント、808…投稿日時、809…全表示リンク、810…最新表示リンク、811…コメント入力フォーム、812…「確認」ボタン、902…コメント投稿確認画面、903…コメント表示欄、904…「投稿」ボタン、905…「中止」ボタン、906…コメント投稿完了画面、907…「戻る」ボタン、1102…複合名リンク、1103…フキダシ、1104…宣伝リンク、1202…企業名リンク、1203…一般名称リンク
Claims (4)
- 企業をユニークに識別する企業IDが記録される企業IDフィールドと、前記企業の企業名が記録される企業名フィールドとを備える企業名マスタと、
一般名称をユニークに識別する一般名称IDが記録される一般名称IDフィールドと、前記一般名称が記録される一般名称フィールドとを備える一般名称マスタと、
商品の商品名が記録される商品名フィールドと、前記商品に関係するwebサイトのURLが記録されるリンクURLフィールドと、前記商品に関係する企業の企業IDが記録される企業IDフィールドと、前記商品が該当する一般名称の一般名称IDが記録される一般名称IDフィールドとを備える商品名マスタと、
クライアントから送信される文字列データよりなるコメントを受信し、前記コメントに前記商品名マスタの各レコードに記録される前記企業IDと前記一般名称IDの組み合わせに合致する前記企業名と前記一般名称の組み合わせよりなる文字列を検出し、前記文字列に前記URLを埋め込む処理を行うコメント書き込み部と
を備えるサービス提供装置。 - 前記コメント書き込み部は、前記コメントに前記商品名の文字列を検出し、前記文字列に前記URLを埋め込む処理を行う請求項1記載のサービス提供装置。
- 前記コメント書き込み部は、前記企業名と前記一般名称との間に一定の文字列出現規則に従う文字列が存在することを検証する請求項2記載のサービス提供装置。
- 所定の操作情報を出力する操作部と、所定の情報を表示する表示部と、入力された情報に基づいて前記表示部を制御する表示制御部と、前記操作部から入力された前記情報を送信するとともに、所定の情報を受信して前記表示制御部に渡す入出力制御部とよりなるクライアントと、
企業をユニークに識別する企業IDが記録される企業IDフィールドと、前記企業の企業名が記録される企業名フィールドとを備える企業名マスタと、一般名称をユニークに識別する一般名称IDが記録される一般名称IDフィールドと、前記一般名称が記録される一般名称フィールドとを備える一般名称マスタと、商品の商品名が記録される商品名フィールドと、前記商品に関係するwebサイトのURLが記録されるリンクURLフィールドと、前記商品に関係する企業の企業IDが記録される企業IDフィールドと、前記商品が該当する一般名称の一般名称IDが記録される一般名称IDフィールドとを備える商品名マスタと、前記クライアントから送信される文字列データよりなるコメントを受信し、前記コメントに前記商品名マスタの各レコードに記録される前記企業IDと前記一般名称IDの組み合わせに合致する前記企業名と前記一般名称の組み合わせよりなる文字列を検出し、前記文字列に前記URLを埋め込む処理を行うコメント書き込み部とよりなるサービス提供サーバと
を備えるサービス提供システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008255448A JP2010086331A (ja) | 2008-09-30 | 2008-09-30 | サービス提供装置およびサービス提供システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008255448A JP2010086331A (ja) | 2008-09-30 | 2008-09-30 | サービス提供装置およびサービス提供システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010086331A true JP2010086331A (ja) | 2010-04-15 |
Family
ID=42250220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008255448A Pending JP2010086331A (ja) | 2008-09-30 | 2008-09-30 | サービス提供装置およびサービス提供システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010086331A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012141849A (ja) * | 2011-01-04 | 2012-07-26 | Rakuten Inc | コメント投稿支援システム、コメント投稿支援システムの制御方法、プログラム及び記録媒体 |
JP2012164273A (ja) * | 2011-02-09 | 2012-08-30 | Rakuten Inc | コメント投稿支援システム、コメント投稿支援システムの制御方法、プログラム及び記録媒体 |
JP2013528844A (ja) * | 2010-08-24 | 2013-07-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | 転送メッセージを提示するための方法およびシステム |
JP2017016672A (ja) * | 2011-06-24 | 2017-01-19 | フェイスブック,インク. | ソーシャル・コンテキストを用いたソーシャル・ネットワーキング・システムの通信からのトピックの推論法 |
-
2008
- 2008-09-30 JP JP2008255448A patent/JP2010086331A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013528844A (ja) * | 2010-08-24 | 2013-07-11 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | 転送メッセージを提示するための方法およびシステム |
JP2012141849A (ja) * | 2011-01-04 | 2012-07-26 | Rakuten Inc | コメント投稿支援システム、コメント投稿支援システムの制御方法、プログラム及び記録媒体 |
JP2012164273A (ja) * | 2011-02-09 | 2012-08-30 | Rakuten Inc | コメント投稿支援システム、コメント投稿支援システムの制御方法、プログラム及び記録媒体 |
JP2017016672A (ja) * | 2011-06-24 | 2017-01-19 | フェイスブック,インク. | ソーシャル・コンテキストを用いたソーシャル・ネットワーキング・システムの通信からのトピックの推論法 |
US9773283B2 (en) | 2011-06-24 | 2017-09-26 | Facebook, Inc. | Inferring topics from social networking system communications using social context |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11372935B2 (en) | Automatically generating a website specific to an industry | |
Bonzanini | Mastering social media mining with Python | |
CN104428764B (zh) | 基于计算机的系统和提供引用推荐的计算机实现的方法 | |
US9582503B2 (en) | Interactive addition of semantic concepts to a document | |
CN102902738B (zh) | 使用内联上下文查询的搜索系统及方法 | |
Yee | Pro Web 2.0 mashups: remixing data and web services | |
US20050210009A1 (en) | Systems and methods for intellectual property management | |
CN106462555A (zh) | 用于web内容生成的方法和系统 | |
Khalili et al. | The rdfa content editor-from wysiwyg to wysiwym | |
US20140032529A1 (en) | Information resource identification system | |
TW201202972A (en) | Collecting community feedback for collaborative document development | |
KR20090005097A (ko) | 웹 커뮤니티 및 웹 애플리케이션에 대해 데이터를 변환하는시스템 및 방법 | |
CN104395871A (zh) | 用于赞同推荐内容的用户界面 | |
EP2054812A2 (en) | Persistent saving portal | |
TW201118620A (en) | Systems and methods for providing advanced search result page content | |
CN104252521A (zh) | 使用预定项目模板的Web内容管理的方法和系统 | |
JPWO2009025193A1 (ja) | 情報共有システム、情報共有方法、および情報共有プログラム | |
US20170109442A1 (en) | Customizing a website string content specific to an industry | |
JP2008107904A (ja) | テキスト及びアニメーションサービス装置及びコンピュータプログラム | |
KR102132931B1 (ko) | 사용자 맞춤식 가치 정보 검색 및 소셜 네트워크 구성 시스템 및 그 방법 | |
JP2010086331A (ja) | サービス提供装置およびサービス提供システム | |
JP4152334B2 (ja) | 情報提供システム、情報提供方法、及び情報提供処理プログラム | |
JP5438603B2 (ja) | 感性辞書編集支援システム及びプログラム | |
JP2007233695A (ja) | 注釈管理装置、ウェブ表示端末、注釈管理方法およびウェブ表示方法 | |
US20190258666A1 (en) | Resource accessibility services |