図1に、本発明の実施形態に係るテンプレート管理システムの一例を示す。本実施形態に係るテンプレート管理システムは、一例として、テンプレート管理装置10、提供者用端末装置70及び利用者用端末装置72を含む。本実施形態に係るテンプレート管理装置10は、例えば、ネットワーク等の通信経路Nを介して、提供者用端末装置70及び利用者用端末装置72に接続されている。図1に示す例では、1つの提供者用端末装置70及び1つの利用者用端末装置72が通信経路Nを介してテンプレート管理装置10に接続されているが、複数の提供者用端末装置70及び複数の利用者用端末装置72が通信経路Nを介してテンプレート管理装置10に接続されてもよい。
テンプレート管理装置10は、提供者用端末装置70及び利用者用端末装置72との間でデータの送受信を行う機能を備えている。テンプレート管理装置10は、文書を作成するためのテンプレート(テンプレートデータ)を記憶しており、要求に応じてテンプレートを提供する機能を備えている。
提供者用端末装置70は、テンプレートを提供する提供者によって使用される端末装置である。提供者用端末装置70は、テンプレート管理装置10との間でデータの送受信を行う機能を備えている。テンプレートは提供者によって作成され、提供者用端末装置70からテンプレート管理装置10に送信されてテンプレート管理装置10に記憶される。
利用者用端末装置72は、テンプレートを編集して文書を作成する利用者によって使用される端末装置である。利用者用端末装置72は、テンプレート管理装置10との間でデータの送受信を行う機能を備えている。テンプレートがテンプレート管理装置10から利用者用端末装置72に送信され、利用者用端末装置72に表示される。そして、利用者によってテンプレートが編集される。
提供者用端末装置70及び利用者用端末装置72は、例えば、パーソナルコンピュータ、タブレットPC、スマートフォン又は携帯電話等の装置であり、キーボードやマウス等の操作部、ディスプレイとして機能する表示部、ネットワークインターフェースとして機能する通信部、及び、CPUを含む制御部を備えている。なお、提供者用端末装置70及び利用者用端末装置72は、テンプレート管理装置10に組み込まれていてもよい。
本実施形態に係るテンプレート管理システムにおいては、一例として、提供者用端末装置70からテンプレート管理装置10にテンプレートが送信され、テンプレート管理装置10にテンプレートが登録される。そして、利用者の要求に応じて、テンプレートがテンプレート管理装置10から利用者用端末装置72に送信される。利用者用端末装置72では、利用者の操作によってテンプレートが編集される。
以下、テンプレート管理装置10について説明する。
通信部12はネットワークインターフェースである。通信部12は、提供者用端末装置70及び利用者用端末装置72との間でデータの送受信を行う機能を備えている。例えば、通信部12は、通信経路Nを介して提供者用端末装置70からテンプレートを受信する。また、通信部12は、通信経路Nを介して利用者用端末装置72にテンプレートを送信する。
テンプレート登録部14は、テンプレート及びサンプル情報を提供者用端末装置70から受け、テンプレート及びサンプル情報をテンプレート管理装置10に登録する。例えば、テンプレート登録部14は、テンプレートを識別するためのテンプレート識別情報(例えばテンプレートID)を生成してテンプレートに付与する。テンプレートは、例えば、チラシ、広告、ダイレクトメール(DM)、ポスター、はがき又はカタログ等の文書を作成するための雛型のデータである。サンプル情報は、サンプルとして作成された文字列(以下、「サンプル文字列」と称する)を示す情報であり、テンプレートに含まれる情報である。サンプル文字列は、利用者による編集が許可された情報である。テンプレート及びサンプル情報については、後で詳述する。
テンプレート管理部16は、テンプレートの追加、削除、編集及び表示処理を行う機能を備えている。例えば、テンプレート管理部16は、テンプレート及びサンプル情報をテンプレートDB(テンプレートデータベース)20に記憶させる。また、テンプレート管理部16は、テンプレートを提供者用端末装置70や利用者用端末装置72等の端末装置に表示させる機能を備えている。例えば、テンプレート管理部16は、テンプレートのサムネイル画像(縮小画像)を端末装置に表示させる機能、検索されたテンプレート又はそのサムネイル画像を端末装置に表示させる機能、及び、指定されたテンプレートを端末装置に表示させる機能等を備えている。
サムネイル作成部18は、サンプル情報を含むテンプレートのサムネイル画像を作成する。なお、画像の縮小率は、予め決定されていてもよいし、テンプレートの提供者によって決定されてもよい。
テンプレートDB20には、テンプレートの実データ(テンプレートデータ)、サンプル情報及びサムネイル画像のデータが記憶されている。例えば、デザインが異なる複数種類のテンプレートの実データ、各テンプレートのサンプル情報、及び、各テンプレートのサムネイル画像のデータが、テンプレートDB20に記憶されている。テンプレートの実データ、当該テンプレートのサンプル情報及び当該テンプレートのサムネイル画像は、互いに対応付けられてテンプレートDB20に記憶されている。
テンプレート情報抽出部22は、テンプレート、サンプル情報及びサムネイル画像をテンプレートDB20から取得する。
判定部24は、定型判定部26及び可読判定部28を含む。
定型判定部26は、各テンプレートに含まれる各サンプル文字列が、定型の文字列か否かを判定し、各サンプル文字列を定型文字列又は非定型文字列に分類する。例えば、定型判定部26は、定型語DB30に記憶されている定型語辞書情報を用いて、サンプル文字列を定型文字列又は非定型文字列に分類する。具体例を挙げて説明すると、サンプル文字列が電話番号、住所、年月日等の表現形式で表現されている場合、そのサンプル文字列は定型文字列に分類される。その定型の表現形式で表現されていないサンプル文字列は、非定型文字列に分類される。
可読判定部28は、各テンプレートのサムネイル画像に表されている各サンプル文字列が可読か否かを判定し、各サンプル文字列を可読文字列又は非可読文字列に分類する。ここで、可読とは、利用者によって視認され得ることを意味し、可読なサンプル文字列とは、利用者によって視認され得る程度のフォントサイズを有する文字列を意味する。例えば、可読判定部28は、テンプレートのサムネイル画像に対してOCR処理を施す。サムネイル画像に表されたサンプル文字列がOCR処理によって文字列として認識された場合、可読判定部28は、当該サンプル文字列を可読文字列に分類する。一方、サムネイル画像に表されたサンプル文字列がOCR処理によって文字列として認識されなかった場合、可読判定部28は、当該サンプル文字列を非可読文字列に分類する。別の例として、サンプル文字列のフォントサイズ(例えばサムネイル画像作成前におけるフォントサイズ)が基準フォントサイズ以上の場合、可読判定部28は、当該サンプル文字列を可読文字列に分類してもよい。フォントサイズが基準フォントサイズ未満の場合、可読判定部28は、当該サンプル文字列を非可読文字列に分類する。基準フォントサイズは、予め決定された値であり、テンプレートの提供者によって変更されてもよい。
定型判定部26及び可読判定部28の処理によって、各テンプレートの各サンプル文字列は、可読かつ定型の文字列(以下、「可読定型文字列」と称する)、可読かつ非定型の文字列(以下、「可読非定型文字列」と称する)、非可読かつ定型の文字列(以下、「非可読定型文字列」と称する)、又は、非可読かつ非定型の文字列(以下、「非可読非定型文字列」)のいずれかに分類される。
非定型グループ分類部32は、可読非定型文字列に分類されたサンプル文字列を、サンプル文字列の内容(サンプル文字列が示す意味)に応じた非定型文字列グループに分類する。例えば、非定型グループ分類部32は、類語DB34に記憶されている類語辞書情報を用いて、可読非定型文字列に分類されたサンプル文字列を、意味毎に異なる非定型文字列グループに分類する。これにより、同じ意味を有するサンプル文字列が、同一の非定型文字列グループに分類される。非定型グループ分類部32は、各テンプレートの各可読非定型文字列を、意味毎に異なる非定型文字列グループに分類する。
定型グループ分類部36は、可読定型文字列に分類されたサンプル文字列を、サンプル文字列の表現形式に応じた定型文字列グループに分類する。例えば、定型グループ分類部36は、可読定型文字列に分類されたサンプル文字列を、サンプル文字列の属性(種類)毎に異なる定型文字列グループに分類する。これにより、同じ属性のサンプル文字列が、同一の定型文字列グループに分類される。サンプル文字列の属性には、例えば、電話番号、住所及び年月日等がある。電話番号を示すサンプル文字列は、電話番号の定型文字列グループに分類され、住所を示すサンプル文字列は、住所の定型文字列グループに分類され、年月日を示すサンプル文字列は、年月日の定型文字列グループに分類される。定型グループ分類部36は、各テンプレートの各可読定型文字列を、属性毎に異なる定型文字列グループに分類する。
対応語管理部38は、非定型文字列グループに対する置換用文字列候補(以下、「置換用非定型文字列候補」と称する)を示す情報と、定型文字列グループに対する置換用文字列候補(以下、「置換用定型文字列候補」と称する)を示す情報と、を受け付ける。置換用非定型文字列候補は、非定型文字列グループに属するサンプル文字列(可読非定型文字列)の置換用の文字列の候補である。置換用定型文字列候補は、定型文字列グループに属するサンプル文字列(可読定型文字列)の置換用の文字列の候補である。置換用非定型文字列候補は、非定型文字列グループに属するサンプル文字列とは異なる言語で表現された文字列である。置換用定型文字列候補は、定型文字列グループに属するサンプル文字列と同じ表現形式で表現された文字列である。複数の非定型文字列グループが存在する場合、対応語管理部38は、個々の非定型文字列グループに対する置換用非定型文字列候補を示す情報を受け付ける。同様に、複数の定型文字列グループが存在する場合、対応語管理部38は、個々の定型文字列グループに対する置換用定型文字列候補を示す情報を受け付ける。置換用非定型文字列候補及び置換用定型文字列候補は、例えば、提供者用端末装置70を使用して提供者によって入力される。1つの非定型文字列グループに対して複数の置換用非定型文字列候補が入力されてもよい。また、1つの定型文字列グループに対して複数の置換用定型文字列候補が入力されてもよい。なお、置換用定型文字列候補を示す情報は、テンプレート管理装置10に予め記憶されていてもよい。
非定型グループ対応語管理部40は、非定型文字列グループとその非定型文字列グループに対する置換用非定型文字列候補とを対応付ける。これにより、非定型文字列グループに属するサンプル文字列(可読非定型文字列)と、そのサンプル文字列とは異なる言語で表現された置換用非定型文字列候補とが対応付けられる。1つの非定型文字列グループに対して複数の置換用非定型文字列候補が受け付けられた場合、その非定型文字列グループには複数の置換用非定型文字列候補が対応付けられる。なお、置換用非定型文字列候補の言語がサンプル文字列(可読非定型文字列)の言語と同じ場合、翻訳部42は、その置換用非定型文字列候補を、可読非定型文字列とは異なる言語(例えば、テンプレートの提供者によって指定された言語)で表現された文字列に翻訳する。例えば、可読非定型文字列及び置換用非定型文字列候補が日本語で表現されている場合、翻訳部42は、置換用非定型文字列候補を日本語以外の言語(例えば英語)に翻訳する。非定型グループ対応語管理部40は、翻訳された置換用非定型文字列候補と非定型文字列グループとを対応付ける。
定型グループ対応語管理部44は、定型文字列グループとその定型文字列グループに対する置換用定型文字列候補とを対応付ける。これにより、定型文字列グループに属するサンプル文字列(可読定型文字列)と置換用定型文字列候補とが対応付けられる。1つの定型文字列グループに対して複数の置換用定型文字列候補が受け付けられた場合、その定型文字列グループには複数の置換用定型文字列候補が対応付けられる。
対応語選択部46は、非定型文字列グループに対応付けられた置換用非定型文字列候補から置換用非定型文字列を選択する。例えば、対応語選択部46は、置換用非定型文字列候補の文字数に基づいて置換用非定型文字列を選択する。複数の置換用非定型文字列候補が非定型文字列グループに対応付けられている場合、対応語選択部46は、複数の置換用非定型文字列候補の中から置換用非定型文字列を選択する。また、対応語選択部46は、定型文字列グループに対応付けられた置換用定型文字列候補から置換用定型文字列を選択する。例えば、対応語選択部46は、置換用定型文字列候補の文字数に基づいて置換用定型文字列を選択する。複数の置換用定型文字列候補が定型文字列グループに対応付けられている場合、対応語選択部46は、複数の置換用定型文字列候補の中から置換用定型文字列を選択する。
サンプル情報置換部48は、各テンプレートにおいて、定型文字列グループに分類されたサンプル文字列(可読定型文字列)を、当該定型文字列グループに対応付けられた置換用定型文字列であって当該サンプル文字列に対応する表現形式で表現された置換用定型文字列に置換する。また、サンプル情報置換部48は、各テンプレートにおいて、非定型文字列グループに分類されたサンプル文字列(可読非定型文字列)を、当該非定型文字列グループに対応付けられた置換用非定型文字列であって当該サンプル文字列とは異なる言語で表現された置換用非定型文字列に置換する。
サムネイル作成部18は、置換処理後のテンプレートのサムネイル画像を作成する。このサムネイル画像は、例えば、テンプレートDB20に記憶されてもよいし、外部装置に出力されてもよい。
なお、テンプレート管理装置10は、テンプレートの編集機能を備えていてもよい。この場合、テンプレート管理装置10は、利用者用端末装置72からの編集指示に応じて、利用者によって指定されたテンプレートを編集する。
上述したテンプレート管理装置10は、一例としてハードウェア資源とソフトウェアとの協働により実現される。具体的には、テンプレート管理装置10は、図示しないCPU等のプロセッサを備えている。当該プロセッサが、図示しない記憶装置に記憶されたプログラムを読み出して実行することにより、テンプレート管理装置10の各部の機能が実現される。上記プログラムは、CDやDVD等の記憶媒体を経由して、又は、ネットワーク等の通信経路を経由して、記憶装置に記憶される。または、テンプレート管理装置10の各部は、回路等のハードウェア資源により実現されてもよい。
次に、テンプレートについて説明する。テンプレートは、一例として、1又は複数のデザイン部品(デザイン部品データ、オブジェクト)によって構成されている。デザイン部品としては、例えば、文字部品、画像部品及び図形部品等がある。文字部品は文字列で構成されており、文字部品には、例えば、表題(タイトル)の文字部品や、本文の文字部品等がある。画像部品は、例えば、ビットマップ形式の画像データである。図形部品は、例えば、ベクター形式で表された図形データである。テンプレートは、一例として、文字部品を示すテキストデータ、画像部品を示す画像データ、図形部品を示す図形データ、各データのデータ容量情報及び各デザイン部品の配置位置情報等を含むデータである。
テンプレートに予め含まれている各デザイン部品は、予め作成されたサンプルとしてのデザイン部品である。サンプルとしてのデザイン部品は、例えば、テンプレートの提供者によって予め作成されたデータである。サンプルとしてのデザイン部品が利用者によって編集されることにより新たなサンプル部品が作成され、これにより、テンプレートに依拠したデザインの文書が作成される。なお、テンプレートには、利用者による編集が許可されたデザイン部品の他、利用者による編集が禁止されたデザイン部品が含まれていてもよい。例えば、文字部品(テキスト)は、利用者による編集が許可されたデザイン部品であり、画像部品は、利用者による編集が禁止されたデザイン部品であってもよい。勿論、画像部品についても、利用者による編集が許可されてもよい。
テンプレートの編集時には、利用者が利用者用端末装置72を使用することにより、個々のデザイン部品の内容が編集される。なお、編集には、デザイン部品の内容の加工及び変更が含まれる。例えば、表題の文字部品や本文の文字部品については、文字列、フォントの種類、フォントサイズ、文字の色、文字の配置位置等が、利用者によって編集される。画像部品については、画像のデザイン、画像の種類、画像の大きさ、画像の配置位置等が、利用者によって編集される。図形部品については、図形の色、図形の透明度(影の度合い)、図形の大きさ、図形の配置位置等が、利用者によって編集される。このように、サンプルとしてのデザイン部品が利用者によって編集されることにより新たなデザイン部品が作成され、これにより、テンプレートに依拠したデザインの文書が作成される。
図2にテンプレートの一例を示す。テンプレート100は、一例として、利用者による編集が禁止された画像部品110(画像データ)と、利用者による編集が許可された文字列領域120〜128と、を含んで構成されている。図2に示す例では、文字列領域120〜128は文字部品に相当し、文字列領域120〜128には文字列が入力される。例えば、文字列領域120〜128には、サンプル文字列が予め入力されており、そのサンプル文字列が入力されたテンプレート200が、テンプレートDB20に記憶されている。文字列領域120〜128内の文字列が利用者によって編集されることにより、テンプレート200を基礎としたデザインの文書が作成されるようになっている。
図3にテンプレートの表示例を示す。例えば、利用者用端末装置72を使用して利用者がテンプレート管理装置10にログインすると、テンプレート管理部16は、複数のテンプレートのサムネイル画像を利用者用端末装置72に表示させる。具体的には、テンプレート管理部16は、サムネイル画像と表示用の情報とを通信部12によって利用者用端末装置72に送信する。利用者用端末装置72では、表示用の情報に従い、サムネイル画像が表示部に表示させる。一例として、利用者用端末装置72の表示部には、テンプレート200,・・・,300のサムネイル画像が表示される。
例えば、利用者が利用者用端末装置72の操作部を使用してテンプレート200,・・・,300の中から特定のテンプレートを指定し、表示指示を与えると、指定されたテンプレートのテンプレート識別情報と表示指示を示す情報とが、利用者用端末装置72からテンプレート管理装置10に送信される。テンプレート管理部16は、その表示指示に従って、指定されたテンプレートを利用者用端末装置72の表示部に拡大して表示させる。例えば、テンプレート200のサムネイル画像が利用者によって指定されると、テンプレート200が利用者用端末装置72の表示部に拡大して表示される。また、利用者が利用者用端末装置72の操作部を使用して編集対象のテンプレートを選択し、編集の指示を与えると、編集対象のテンプレートが利用者用端末装置72の表示部に表示され、利用者による編集が許可された状態となる。
図4にテンプレート管理テーブルの一例を示す。このテンプレート管理テーブルは、例えば、テンプレート管理部16によって作成されてテンプレートDB20に記憶される。テンプレート管理テーブルにおいては、例えば、テンプレートID、サンプル情報ID、サンプル文字列及びサムネイルIDが対応付けられている。テンプレートIDは、個々のテンプレートを識別するためのテンプレート識別情報の一例である。サンプル情報IDは、個々のサンプル情報(サンプル文字列)を識別するためのサンプル識別情報の一例である。また、サンプル情報IDは、個々のテンプレート内におけるサンプル文字列の位置を示していてもよい。サンプル文字列は、例えば、提供者用端末装置70を使用して提供者によって作成された情報である。サムネイルIDは、サンプル文字列を含むテンプレートのサムネイル画像を識別するためのサムネイル画像識別情報の一例である。サムネイルIDは、例えば、サムネイル作成部18によって作成される。このサムネイルIDによって、テンプレートDB20に記憶されているサムネイル画像が特定される。
図5に定型語辞書の一例を示す。この定型語辞書は定型語DB30に記憶されている。定型語辞書においては、例えば、定型語ID、属性(種類)及び表現形式が対応付けられている。定型語IDは、定型文字列を識別するための定型語識別情報の一例である。属性(種類)は、定型語の属性(種類)であり、一例として、電話番号、住所、年月日等がある。表現形式は、テンプレートに含まれる定型のサンプル文字列の表現形式である。例えば、属性が電話番号のサンプル文字列は、一般的に、「nnn−nnnn−nnnn」や「nn−nnnn−nnnn」等の表現形式でテンプレートに表されている。また、属性が住所のサンプル文字列は、一般的に、「東京都xxxxxx」等のように都道府県や市町村や郵便番号を含む文字列でテンプレートに表現されている。また、属性が年月日のサンプル文字列は、一般的に、「yyyy/mm/dd」等のように年月日を表す表現形式でテンプレートに表現されている。
ここで、図5を参照して、定型判定部26の処理の詳細について説明する。定型判定部26は、定型語辞書に規定されている複数の表現形式の中から、テンプレートに含まれているサンプル文字列の表現形式に一致する表現形式を特定し、特定された表現形式に対応する属性を特定する。定型語辞書に規定されている複数の表現形式の中に、サンプル文字列の表現形式に一致する表現形式が存在する場合、当該サンプル文字列は定型文字列に分類される。一方、定型語辞書に規定されている複数の表現形式の中に、サンプル文字列の表現形式に一致する表現形式が存在しない場合、当該サンプル文字列は非定型文字列に分類される。例えば、サンプル文字列「080−0000−0000」は、電話番号の表現形式に一致するため、当該サンプル文字列「080−0000−0000」は定型文字列に分類され、その属性は電話番号である。このようにして、各テンプレートに含まれる各サンプル文字列が、定型文字列又は非定型文字列に分類される。定型文字列に分類されたサンプル文字列については、文字列の属性も特定される。定型文字列に分類されたサンプル文字列には、属性を示す属性情報が対応付けられる。
次に、図6に示すフローチャートを参照して、定型判定部26及び可読判定部28の処理の詳細について説明する。
まず、テンプレート情報抽出部22は、テンプレートDB20からテンプレートIDを1つ取得する(S01)。図4に示す例で説明すると、テンプレート情報抽出部22は、テンプレートID「1021」を取得する。テンプレート情報抽出部22は、テンプレートIDに対応付けられているサムネイルIDを特定し、そのサムネイルIDが対応付けられているサムネイル画像をテンプレートDB20から取得する(S02)。また、テンプレート情報抽出部22は、テンプレートIDに対応付けられているサンプル文字列をテンプレートDB20から取得する(S03)。例えば、テンプレート情報抽出部22は、テンプレートID「1021」に対応付けられている複数のサンプル文字列の中から、サンプル情報IDが「1」のサンプル文字列を取得する。このとき、テンプレート情報抽出部22は、当該サンプル文字列が入力されている文字列領域の位置を示す情報、文字列領域のサイズを示す情報、及び、文字列領域の傾きを示す情報、をテンプレートから取得する(S04)。テンプレート情報抽出部22によって取得された情報は、判定部24に出力される。
可読判定部28は、サムネイル画像において上記のサンプル文字列に対してOCR処理を施す(S05)。例えば、可読判定部28は、テンプレートID「1021」に対応するサンプル文字列であってサンプル情報IDが「1」のサンプル文字列に対してOCR処理を施す。OCR処理によって当該サンプル文字列が文字列として認識された場合、つまり、当該サンプル文字列が可読であると判定された場合(S06,Yes)、可読判定部28は、当該サンプル文字列に可読フラグを設定する(S07)。一方、OCR処理によって当該サンプル文字列が文字列として認識されなかった場合、つまり、当該サンプル文字列が非可読であると判定された場合(S06,No)、処理はステップS10に移行する。別の例として、サンプル文字列のフォントサイズ(例えば、サムネイル画像生成前のフォントサイズ)が基準フォントサイズ以上となる場合、可読判定部28は、当該サンプル文字列に可読フラグを設定してもよい。
定型判定部26は、図5に示されている定型語辞書を参照し、可読と判定されたサンプル文字列(可読文字列)が定型文字列であるか否かを判定する。サンプル文字列が定型文字列に該当する場合(S08,Yes)、定型判定部26は、当該サンプル文字列に、定型文字列の属性(種類)を示す属性情報を対応付ける(S09)。このサンプル文字列が、可読定型文字列に該当する。一方、サンプル文字列が定型文字列に該当しない場合(S08,No)、処理はステップS10に移行する。このサンプル文字列が、可読非定型文字列に該当する。処理対象となっているテンプレートにおいて、可読判定処理が行われていないサンプル文字列が存在する場合(S10,No)、処理はステップS03に戻り、他のサンプル文字列を対象にして可読判定処理及び定型判定処理が実行される。図4に示す例で説明すると、サンプル情報IDが「2」のサンプル文字列を対象にして、可読判定処理及び定型判定処理が実行される。そして、処理対象となっているテンプレートの全サンプル文字列に対して可読判定処理が実行された場合(S10,Yes)、処理はステップS11に移行する。ステップS01〜S10までの処理が行われていないテンプレートがテンプレートDB20に記憶されている場合、処理はステップS01に戻り、そのテンプレートを対象にしてステップS01〜S10までの処理が実行される。図4に示す例で説明すると、テンプレートIDが「1022」のテンプレートを対象にして、ステップS01〜S10までの処理が実行される。そして、全テンプレートに対してステップS01〜S10までの処理が行われた場合(S11,Yes)、定型判定部26及び可読判定部28の処理は終了する。なお、可読判定処理の前に定型判定処理を実行してもよいし、両方の処理を並行して実行してもよい。
次に、図7に示すフローチャートを参照して、非定型グループ分類部32の処理の詳細について説明する。
まず、非定型グループ分類部32は、サンプル文字列(可読非定型文字列)を判定部24から取得する(S20)。非定型グループ分類部32は、例えば、可読非定型文字列に対して形態素解析等の言語解析を施す(S21)。この解析により、可読非定型文字列が文章として認識された場合(S22,Yes)、非定型グループ分類部32は、その可読非定型文字列を文章に分類する(S23)。非定型グループ分類部32による処理が行われていない可読非定型文字列が存在する場合(S24,No)、処理はステップS20に戻り、他の可読非定型文字列を対象にして処理が実行される。一方、可読非定型文字列が文章として認識されなかった場合(S22,No)、非定型グループ分類部32は、その可読非定型文字列が単語であるか否かを判定する。その可読非定型文字列が単語に該当する場合(S25、Yes)、非定型グループ分類部32は、類語DB34に記憶されている類語辞書の中から可読非定型文字列を検索し(S26)、検索された類語のグループ(非定型文字列グループ)に、その可読非定型文字列を分類する(S27)。一方、可読非定型文字列が単語に該当しない場合(S25,No)、非定型グループ分類部32は、その可読非定型文字列の中から特徴語(例えば名詞)を抽出する(S28)。そして、非定型グループ分類部32は、類語辞書の中から特徴語を検索し(S26)、検索された類語のグループ(非定型文字列グループ)に、その特徴語を有する可読非定型文字列を分類する(S27)。このようにして、可読非定型文字列が、その可読非定型文字列と同一の意味を有する文字列の集合である非定型文字列グループに分類される。非定型グループ分類部32は、各テンプレートの各可読非定型文字列を対象にしてステップS20〜S28の処理を実行する。これにより、各テンプレートの各可読非定型文字列が、互いに同一の意味を有する文字列の集合である非定型文字列グループ、又は、文章に分類される。
なお、図6を参照して説明したように、可読定型文字列には、当該可読定型文字列の属性(種類)を示す属性情報が対応付けられている。定型グループ分類部36は、同一の属性情報が対応付けられている可読定型文字列を、同一の定型文字列グループに分類する。このようにして、同じ属性を有する可読定型文字列が、同一の定型文字列グループに分類される。定型グループ分類部36は、各テンプレートの各可読定型文字列を、互いに同一の属性を有する文字列の集合である定型文字列グループに分類する。
次に、図8に示されている具体例を挙げて、定型判定部26、可読判定部28、非定型グループ分類部32及び定型グループ分類部36の処理の詳細について説明する。一例として、2つのテンプレート200,300を対象にした処理について説明するが、テンプレートの数はこの例に限定されるものではない。1又は複数のテンプレートが処理対象となっていればよい。
テンプレート200には、文字列領域120〜128が予め含まれている。テンプレート300には、文字列領域300〜328が予め含められている。文字列領域120〜128,320〜328のそれぞれは、一例として、矩形状の形状を有する。この形状は一例であり、文字列領域の形状は円や楕円であってもよい。また、文字列領域120〜128,320〜328のそれぞれのサイズ(領域の大きさ)は予め決定されている。文字列領域120〜128,320〜328には、サンプル文字列が予め入力されている。各サンプル文字列のフォントサイズ及びフォントの種類は予め決定されている。同一の文字列領域内において、サンプル文字列中の各文字のフォントサイズは一定であってもよいし、文字毎にフォントサイズが異なっていてもよい。サンプル文字列が入力されたテンプレート200,300、テンプレート200のサムネイル画像及びテンプレート300のサムネイル画像は、テンプレートDB20に記憶されている。
定型判定部26は、図5に示されている定型語辞書を参照し、文字列領域120〜128,320〜328のそれぞれに入力されているサンプル文字列を、定型文字列又は非定型文字列に分類する。
例えば、文字列領域124のサンプル文字列「2月14日」、文字列領域126のサンプル文字列「電話:03−1234−5678」、文字列領域324のサンプル文字列「電話・FAX:(045)−123−5678」、及び、文字列領域326のサンプル文字列「3/17(金)10:00」は、定型語辞書に規定されている表現形式で表現されており、それらは定型文字列に分類されている。文字列領域124,326のサンプル文字列の属性は「年月日」であり、文字列領域126,324サンプル文字列の属性は「電話番号」である。この属性も、定型判定部26によって特定される。
一方、文字列領域120のサンプル文字列「オープン!!」、文字列領域122のサンプル文字列「美味しいピザ」、文字列領域128のサンプル文字列、文字列領域320のサンプル文字列「新装開店」、文字列領域322のサンプル文字列「素敵なケーキを用意してお待ちしております」、及び、文字列領域328のサンプル文字列「・・・」は、定型語辞書に規定されている表現形式で表現されておらず、それらは非定型文字列に分類されている。
また、可読判定部28は、文字列領域120〜128,320〜328のそれぞれのサンプル文字列を、可読文字列又は非可読文字列に分類する。例えば、可読判定部28は、テンプレート200,300のそれぞれのサムネイル画像に対してOCR処理を施し、文字列として認識されたサンプル文字列を可読文字列に分類する。可読判定部28は、OCR処理によって認識された文字の数が予め決定された閾値以上となるサンプル文字列を、可読文字列に分類してもよい。別の例として、可読判定部28は、文字列領域120〜128,320〜328のサンプル文字列の中で、フォントサイズが基準フォントサイズ以上となるサンプル文字列を、可読文字列に分類してもよい。可読判定部28は、基準フォントサイズ以上のフォントサイズを有する文字の数が予め決定された閾値以上となるサンプル文字列を、可読文字列に分類してもよい。
例えば、文字列領域120,122,124,126,320,322,324,326が、可読文字列に分類され、サンプル文字列128,328が、非可読文字列に分類されている。
以上のように、定型判定部26及び可読判定部28の処理によって、文字列領域124,126,324,326のサンプル文字列が、可読定型文字列に分類され、文字列領域120,122,320,322のサンプル文字列が、可読非定型文字列に分類され、文字列領域128,328のサンプル文字列が、非可読非定型文字列に分類される。
文字列領域124,326のサンプル文字列の属性は「年月日」であるため、それらのサンプル文字列には、定型判定部26によって、「年月日」を示す属性情報が対応付けられる。そして、文字列領域124,326のサンプル文字列は、定型グループ分類部36によって、同一の定型文字列グループA(属性が「年月日」のグループ)に分類される。
文字列領域126,324のサンプル文字列の属性は「電話番号」であるため、それらのサンプル文字列には、定型判定部26によって、「電話番号」を示す属性情報が対応付けられる。そして、文字列領域126,324のサンプル文字列は、定型グループ分類部36によって、同一の定型文字列グループB(属性が「電話番号」のグループ)に分類される。
文字列領域120のサンプル文字列は「オープン!!」であり、文字列領域320のサンプル文字列は「新装開店」であるため、それらのサンプル文字列は同一の意味を有し、互いに同義語である。従って、文字列領域120,320のサンプル文字列は、非定型グループ分類部32によって、同一の非定型文字列グループCに分類される。
文字列領域122のサンプル文字列は単語に該当せず、そのサンプル文字列の特徴語(例えば名詞「ピザ」)に応じた非定型文字列グループに分類される。文字列領域322のサンプル文字列は文章であるため、いずれのグループにも分類されない。文字列領域128,328のサンプル文字列は非可読であるため、いずれのグループにも分類されない。
定型グループ分類部36は、定型文字列グループA,Bのそれぞれに対して、グループを識別するためのグループ識別情報(例えばグループID)を対応付ける。同様に、非定型グループ分類部32は、非定型文字列グループCに対して、グループを識別するためのグループ識別情報(例えばグループID)を対応付ける。
以上のようにして、テンプレート200,300に含まれる複数のサンプル文字列が、可読定型文字列、可読非定型文字列、非可読定型文字列、又は、非可読非定型文字列のいずれかに分類される。さらに、可読定型文字列は、同一の属性を有する文字列の集合である定型文字列グループに分類され、可読非定型文字列は、同一の意味を有する文字列の集合である非定型文字列グループに分類される。図8に示す例では、定型文字列グループA,B及び非定型文字列グループCが作成される。なお、この例では、1つの非定型文字列グループCが作成されているが、意味が異なる複数の可読非定型文字列が存在する場合、複数の非定型文字列グループが作成されることになる。また、可読定型文字列が存在しない場合、定型文字列グループは作成されず、可読非定型文字列が存在しない場合、非定型文字列グループは作成されない。
図8に示す例では、2つのテンプレート200,300が処理対象であるが、3つ以上のテンプレートが処理対象であってもよい。この場合も、上記と同じ処理により、複数のテンプレートに含まれる複数のサンプル文字列が、可読定型文字列、可読非定型文字列、非可読定型文字列、又は、非可読非定型文字列のいずれかに分類される。さらに、可読定型文字列は定型文字列グループに分類され、可読非定型文字列は非定型文字列グループに分類される。
以上のようにして、1又は複数の可読定型文字列が1又は複数の定型文字列グループに分類されると、各定型文字列グループに対して置換用定型文字列候補が対応付けられる。同様に、1又は複数の可読非定型文字列が1又は複数の非定型文字列グループに分類されると、各非定型文字列グループに対して置換用非定型文字列候補が対応付けられる。例えば、置換用非定型文字列候補は、テンプレートの提供者によって入力され、置換用定型文字列候補は、予めテンプレート管理装置10に記憶されている。なお、置換用定型文字列候補も、提供者によって入力されてもよい。
次に、置換用文字列候補を設定するための処理について説明する。ここでは、非定型文字列グループに対して置換用非定型文字列候補を設定するための処理について説明する。まず、非定型文字列グループが作成されると、その非定型文字列グループのグループIDが、提供者用端末装置70の表示部に表示される。例えば、テンプレート管理部16が、非定型文字列グループのグループIDと表示用の情報とを、通信部12によって提供者用端末装置70に送信し、グループIDを提供者用端末装置70の表示部に表示させる。一例として、提供者用端末装置70の表示部に、複数のグループIDが一覧表示される。そして、提供者が提供者用端末装置70の操作部を使用して、置換対象の非定型文字列グループを指定すると、指定された非定型文字列グループのグループIDが、提供者用端末装置70からテンプレート管理装置10に送信される。例えば、提供者は、複数のグループIDの中から、置換対象の非定型文字列グループのグループIDを指定すればよい。テンプレート管理部16は、指定された非定型文字列グループに対する置換用文字列候補を入力するための入力画面情報を、通信部12によって提供者用端末装置70に送信し、入力画面を提供者用端末装置70の表示部に表示させる。このとき、テンプレート管理部16は、指定された非定型文字列グループに属する可読非定型文字列(サンプル文字列)を、提供者用端末装置70の表示部に表示させてもよい。
図9に、置換用非定型文字列候補の入力画面の一例を示す。図9に示されている入力画面は、一例として、非定型文字列グループCに対して置換用非定型文字列候補を設定するための画面である。この入力画面には、非定型文字列グループCに分類されたサンプル文字列「新装開店」及び「オープン!!」が表示されている。これらのサンプル文字列は、可読非定型文字列に該当する。また、入力画面には、置換用非定型文字列候補(例えば候補1〜5)を入力するための入力欄が設けられている。この入力欄には、提供者によって置換用非定型文字列候補が入力される。例えば、サンプル文字列とは異なる言語(例えば英語)で表現された置換用非定型文字列候補が入力される。具体例を挙げて説明すると、サンプル文字列が「新装開店」及び「オープン!!」であるため、「Open」、「New Open」、「Grand、Open」、「Renewal Open」等の文字列が、置換用非定型文字列候補として入力される。これらの文字列は一例であり、置換用非定型文字列候補は提供者が決定すればよい。非定型文字列グループC以外の非定型文字列グループについても、提供者が、その非定型文字列グループに対する置換用非定型文字列候補を入力すればよい。なお、サンプル文字列(可読非定型文字列)と同じ言語(例えば日本語)で表現された置換用非定型文字列候補が入力された場合、翻訳部42によって、その候補が別の言語(例えば英語)に翻訳される。
上記のようにして入力された置換用非定型文字列候補を示す情報は、提供者用端末装置70からテンプレート管理装置10に送信される。そして、非定型グループ対応語管理部40は、非定型文字列グループと、その非定型文字列グループに対して入力された置換用非定型文字列候補と、を対応付ける。上記の例では、非定型文字列グループCと、「Open」、「New Open」、「Grand、Open」、「Renewal Open」等の置換用非定型文字列候補と、が対応付けられる。翻訳部42によって置換用非定型文字列候補が翻訳された場合、その翻訳された候補と非定型文字列グループとが対応付けられる。
なお、置換用定型文字列候補は、予めテンプレート管理装置10に記憶されている。例えば、電話番号の定型文字列グループに対する置換用定型文字列候補は、電話番号の形式(例えば「XXX−XXXX−XXXX」)で表現された文字列である。住所の定型文字列グループに対する置換用定型文字列候補は、住所の形式で表現された文字列である。年月日の定型文字列グループに対する置換用定型文字列候補は、年月日の形式(例えば「yyyy/mm/dd」)で表現された文字列である。電話番号や年月日の置換用定型文字列候補は、主に数字で表現されている。住所の置換用定型文字列候補は、例えば、可読定型文字列とは異なる言語(例えば英語)で表現された文字列である。可読定型文字列は定型の文字列であるため、各属性に対応する置換用の候補を予め用意しておけば、その可読定型文字列に対応する置換用の候補を提供者が入力せずに済む。各属性について複数の置換用定型文字列候補が予めテンプレート管理装置10に記憶されていてもよい。定型グループ対応語管理部44は、定型文字列グループと、その定型文字列グループに対する1又は複数の置換用定型文字列候補と、を対応付ける。なお、置換用定型文字列候補についても、置換用非定型文字列候補と同様に、入力画面を用いて提供者によって入力されてもよい。
次に、図10に示されているフローチャートを参照して、対応語選択部46及びサンプル情報置換部48による置換処理の詳細について説明する。ここでは、図8に示されているテンプレート200,300を対象にして置換処理を行う場合について説明する。
まず、対応語選択部46は、処理対象となっているテンプレートに含まれるサンプル文字列のサンプル情報IDをテンプレートDB20から取得する(S30)。例えば、対応語選択部46は、テンプレート200に含まれる文字列領域120に入力されたサンプル文字列「オープン!!」のサンプル情報IDを取得する。このサンプル文字列「オープン!!」は可読非定型文字列である。また、対応語選択部46は、テンプレート200における文字列領域120の位置を示す情報、文字列領域120のサイズを示す情報、及び、文字列領域120の傾きを示す情報を、テンプレート200から取得する(S31)。
そして、対応語選択部46は、サンプル文字列「オープン!!」が属する可読非定型グループCに対応付けられた置換用非定型文字列候補を、非定型グループ対応語管理部40から取得する(S32)。図8に示す例では、サンプル文字列「オープン!!」は非定型文字列グループCに分類されており、その非定型文字列グループCには、置換用非定型文字列候補として、「Open」、「New Open」、「Grand、Open」、「Renewal Open」等の文字列が対応付けられている。対応語選択部46は、それらの候補の中から1つの候補を選択する。例えば、候補1〜5の順位を付けて複数の候補が入力されている場合、対応語選択部46は、その順位に従って候補を選択する。一例として、対応語選択部46は、候補1「Open」を選択したものとする。
次に、対応語選択部46は、候補1「Open」が文字列領域120に適合するか否かを判定する。以下、この判定処理を「マッチング処理」と称する。例えば、対応語選択部46は、候補1「Open」のフォントサイズを、文字列領域120に元々入力されていたサンプル文字列「オープン!!」のフォントサイズと同一にして、候補1「Open」を文字列領域120に入力する。このとき、文字列領域120の全幅のうち予め決定された割合(例えば90〜100%)の幅が候補1「Open」によって占められた場合、候補1「Open」は文字列領域120に適合していると判定される(S33,Yes)。一方、割合が100%を超える場合、つまり、候補1「Open」の文字数が文字列領域120との関係で多すぎて、候補1「Open」の文字列が文字列領域120に入りきらず、文字列領域120からはみ出している場合、候補1「Open」は文字列領域120に適合していないと判定される(S33,No)。また、割合が90%未満となる場合、つまり、候補1「Open」の文字数が文字列領域120との関係で少なすぎる場合、候補1「Open」は文字列領域120に適合していないと判定される(S33,No)。すなわち、候補1「Open」の文字列長が、文字列領域120の幅の90〜100%の範囲に含まれる場合、候補1「Open」は、文字列領域120に適合していると判定される。文字列領域に適合していると判定された候補が、置換用非定型文字列として採用される。なお、割合(90〜100%)は一例であり、例えば、提供者によって変更されてもよい。
候補1「Open」が文字列領域120に適合している場合(S33,Yes)、サンプル情報置換部48は、文字列領域120に入力されていたサンプル文字列「オープン!!」を、候補1「Open」に置き換える(S34)。これにより、文字列領域120のサンプル文字列が、英語で表現された文字列(置換用非定型文字列)に置換される。
テンプレート200において定型文字列グループに属する全サンプル文字列及び非定型文字列グループに属する全サンプル文字列のうち、置換処理が行われていないサンプル文字列が存在する場合(S35,No)、処理はステップS30に戻り、置換処理が行われていないサンプル文字列を対象にして置換処理が行われる。
一方、候補1「Open」が文字列領域120に適合していない場合(S33,No)、処理はステップS36に移行する。非定型文字列グループCに対応付けられたすべての置換用非定型文字列候補(例えば候補1〜5)について、ステップS33のマッチング処理が実行されている場合(S36,Yes)、処理はステップS37に移行する。非定型文字列グループCに対応付けられたすべての置換用非定型文字列候補(候補1〜5)のうち、ステップS33のマッチング処理が実行されていない候補が存在する場合(S36,No)、処理はステップS32に移行する。この場合、対応語選択部46は、非定型文字列グループCに対応付けられた置換用非定型文字列候補(候補1〜5)の中から、次の順位の候補(例えば候補2(「New Open」)を取得し(S32)、マッチング処理を行う(S33)。そして、候補2(「New Open」)が文字列領域120に適合している場合(S33,Yes)、サンプル情報置換部48は、文字列領域120のサンプル文字列「オープン!!」を候補2「New Open」に置き換える(S34)。一方、候補2(「New Open」)が文字列領域120に適合していない場合(S33,No)、処理はステップS36に移行する。そして、候補1〜5の中で文字列領域120に適合する候補が存在しない場合、すなわち、全候補についてマッチング処理が実行済みの場合(S36,Yes)、処理はステップS37に移行する。
そして、非定型文字列グループCに対応付けられたすべての置換用非定型文字列候補(候補1〜5)の中に、文字列領域120に対して文字数が過多となる候補が存在しない場合、つまり、割合が100%を超えて、文字列が文字列領域120からはみ出る候補が存在しない場合(S37,No)、処理はステップS38に移行する。この場合、すべての置換用非定型文字列候補の文字数が、文字列領域120に対して過少(割合が90%未満)となっている。ステップS38では、対応語選択部46は、候補1〜5の中で文字列領域120に対して文字数が過少となっている候補群の中から、文字数が最多となる候補を選択する。サンプル情報置換部48は、文字列領域120のサンプル文字列「オープン!!」を、その候補に置換する。そして、処理はステップS35に移行する。ステップS38の処理により、文字列領域120からはみ出ることのない文字列であって、候補1〜5の中で置換前のサンプル文字列のサイズに最も近いサイズの文字列によって、サンプル文字列が置換される。これにより、置換の前後で、サンプル文字列のサイズに関する印象の変化が抑制される。
一方、非定型文字列グループCに対応付けられたすべての置換用非定型文字列候補(候補1〜5)の中に、文字列領域120に対して文字数が過多となる候補が存在する場合、つまり、割合が100%を超えて、文字列が文字列領域120からはみ出る候補が存在する場合(S37,Yes)、処理はステップS39に移行する。ステップS39では、対応語選択部46は、候補1〜5の中で文字列領域120に対して文字数が過多となる候補群の中から、文字数が最少となる候補(例えば候補1「Open」)を選択し、サンプル情報置換部48は、その候補1「Open」のフォントサイズを縮小する。このとき、サンプル情報置換部48は、候補1「Open」が文字列領域120に適合するサイズまで、候補1「Open」のフォントサイズを縮小する。例えば、文字列領域120の幅に対する候補1「Open」の割合が90〜100%になるように、サンプル情報置換部48は、候補1「Open」のフォントサイズを縮小する。そして、サンプル情報置換部48は、文字列領域120のサンプル文字列「オープン!!」を、フォントサイズが縮小された候補1「Open」に置換する(S40)。ステップS39,S40の処理により、文字列領域120からはみ出ることのない文字列であって、候補1〜5の中で置換前のサンプル文字列のサイズに最も近いサイズの文字列によって、サンプル文字列が置換される。これにより、置換の前後で、サンプル文字列のサイズに関する印象の変化が抑制される。
そして、フォントサイズが縮小された候補1「Open」が、可読か否かが判定される(S41)。この可読判定は、可読判定部28によって実行される。上述したように、OCR処理を利用することにより、可読判定が行われる。または、縮小された候補1のフォントサイズとフォントサイズ基準値との比較によって、可読判定が行われる。可読であると判定された場合(S41,Yes)、処理はステップS35に移行する。一方、非可読であると判定された場合(S41,No)、処理はステップS38に移行する。この場合、対応語選択部46は、候補1〜5の中で文字列領域120に対して文字数が過少となる候補群の中から、文字数が最多となる候補を選択する。サンプル情報置換部48は、文字列領域120のサンプル文字列「オープン!!」を、その候補に置換する。そして、処理はステップS35に移行する。ステップS41,S38の処理により、可読な置換用非定型文字列によってサンプル文字列が置換される。
そして、ステップS30〜S41を繰り返して実行することにより、テンプレート200において定型文字列グループに属する全サンプル文字列及び非定型文字列グループに属する全サンプル文字列に対して置換処理が実行される。
上述した例では、非定型文字列グループに属するサンプル文字列の置換処理について説明したが、定型文字列グループに属するサンプル文字列についてもステップS30〜S41の処理が実行される。すなわち、対応語選択部46及びサンプル情報置換部48は、定型文字列グループに分類されたサンプル文字列を対象として、上記のステップS30〜S41の処理を実行する。例えば、文字列領域124のサンプル文字列「2月14日」を対象とした置換処理を行う場合、対応語選択部46は、サンプル文字列「2月14日」が属する可読定型グループAに対応付けられた置換用定型文字列候補(例えば、文字列「2/14」)を、定型グループ対応語管理部44から取得する。そして、置換用定型文字列候補「2/14」が文字列領域124に適合する場合、サンプル情報置換部48は、文字列領域124に入力されているサンプル文字列「2月14日」を、候補「2/14」に置き換える。これにより、文字列領域140のサンプル文字列が置換用定型文字列に置換される。
そして、テンプレート200において定型文字列グループに属する全サンプル文字列及び非定型文字列グループに属する全サンプル文字列について置換処理が行われた場合(S35,Yes)、テンプレート200に対する置換処理は終了する。この場合、テンプレート300を対象にして、ステップS30〜S35の処理が実行される。テンプレート200,300に対する置換処理が終了すると、本実施形態の置換処理は終了する。
なお、可読非定型文字列であっても、可読非定型グループに分類されていないサンプル文字列が存在する場合がある。図8に示す例では、文字列領域322に入力されているサンプル文字列は、可読非定型グループに分類されておらず、文章に属する。本実施形態では、このようなサンプル文字列を対象にして置換処理を行ってもよいし、置換処理を行わなくてもよい。置換処理を行う場合、提供者が、文字領域322用の置換用非定型文字列を入力すればよい。置換処理を行わない場合、置換処理後のテンプレートにおいて、文字列領域322のサンプル文字列は、元の言語(例えば日本語)で表現されることになる。
以上のように、本実施形態では、サンプル文字列を可読定型グループ又は可読非定型グループのいずれかのグループに分類し、サンプル文字列を、そのサンプル文字列が属するグループに対応付けられた置換用文字列に置換する。例えば、複数のテンプレートに含まれる各サンプル文字列を翻訳する場合であっても、本実施形態によると、当該複数のテンプレートに含まれる各サンプル文字列は可読定型グループ又は可読非定型グループに分類され、各サンプル文字列は、自身が属するグループに対応付けられた置換用文字列に置換される。グループ毎に置換用文字列を設定すれば置換処理が行われるため、個々のサンプル文字列毎に置換用文字列を設定する場合と比べて、置換用文字列を設定するための作業が簡便になり、作業者の手間が軽減される。例えば、多数のテンプレートについて翻訳を行わなければならない場合であっても、個々のテンプレートの個々のサンプル文字列毎に翻訳する必要がなく、グループ単位で置換用文字列を設定すればよいため、翻訳のための作業が簡便になる。
本実施形態では、定型文字列は、表現形式が同一又は似ている置換用定型文字列に置換される。従って、定型文字列については、置換前の見た目が維持又はその変化が抑制される。また、互いに同義の複数の非定型文字列は、同一の可読非定型グループに分類されて、可読非定型グループに対応付けられた置換用非定型文字列に置換される。従って、互いに同義の複数の非定型文字列は、同一又は同義の置換用非定型文字列に置換される。サンプル文字列は、あくまでサンプルとしての文字列であるため、置換の前後において、文字列の厳密な意味が維持されていなくてもよい。つまり、定型文字列であれば、その見た目が似ている文字列によって置換されればよいし、非定型文字列であれば、同義の文字列によって置換されればよい。このような置換によっても、置換後の文字列は、サンプル文字列としての役割を果たす。
なお、非可読文字列は、サムネイル画像上において利用者によって認識し得ない文字列であるため、非可読文字列に対する置換処理は実行されない。
上記の例では、置換文字列が英語で表現されている場合について説明したが、置換用文字列は、英語以外の言語(例えば、中国語、韓国語、ドイツ語、フランス語、イタリア語、ポルトガル語、スペイン語、ロシア語等)で表現されてもよい。英語以外の言語で表現された置換用文字列が入力された場合、元のサンプル文字列は、英語以外の言語で表現された置換用文字列によって置換される。また、元のサンプル文字列が日本語以外の言語で表現され、置換用文字列が日本語で表現されていてもよい。この場合、元のサンプル文字列は、日本語で表現された置換用文字列に置換される。
置換処理後のテンプレートは、テンプレートDB20に記憶されてもよいし、外部装置に出力されてもよい。例えば、置換処理前のテンプレート(例えば日本語で表現されたテンプレート)と置換処理語のテンプレート(例えば英語で表現されたテンプレート)とが、テンプレートDB20に記憶されてもよい。そして、利用者が利用者用端末装置72にて使用言語を指定した場合、テンプレート管理部16は、指定された使用言語で表現されたテンプレートを、利用者用端末装置72に送信するようにしてもよい。