(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024096560
(43)【公開日】2024-07-17
(54)【発明の名称】文書作成方法、当該方法をコンピュータに実行させるプログラム、および文書作成装置
(51)【国際特許分類】
G06F 40/157 20200101AFI20240709BHJP
G06F 40/129 20200101ALI20240709BHJP
【FI】
G06F40/157
G06F40/129
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023000113
(22)【出願日】2023-01-04
(71)【出願人】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】望月 孝俊
【テーマコード(参考)】
5B109
【Fターム(参考)】
5B109MA11
5B109QB14
5B109QB15
5B109TA11
(57)【要約】
【課題】マスキング漏れを防ぎつつもマスキングの作業効率を向上させることができる技術を提供する。
【解決手段】コンピュータシステム100は、文字列判定部22として、個人情報に関連付けられた関連文字列を個人情報関連文字DB30から取得する。コンピュータシステム100は、文字列判定部22として、判定対象となる対象文字列の中に関連文字列が含まれるか否かを判定する。コンピュータシステム100は、マスキング処理部23として、文字列判定部22によって対象文字列の中に関連文字列が含まれると判定されたときに、関連文字列の近傍の文字列をマスキングする。
【選択図】
図2
【特許請求の範囲】
【請求項1】
プロセッサが、個人情報に関連付けられた関連文字列をデータベースから取得するステップと、
前記プロセッサが、判定対象となる対象文字列の中に前記関連文字列が含まれるか否かを判定するステップと、
前記プロセッサが、前記判定するステップによって前記対象文字列の中に前記関連文字列が含まれると判定されたときに、前記関連文字列の近傍の文字列をマスキングするステップとを含む、文書作成方法。
【請求項2】
前記関連文字列は、固有名詞とともに用いられる単語を含む、請求項1に記載の文書作成方法。
【請求項3】
前関連文字列は、会社、大学、高校、学校、さん、くん、君、様、殿、氏、県、市、町、区、村、および、病院を含む、請求項1に記載の文書作成方法。
【請求項4】
入力装置から入力された入力文字列を受付けるステップと、
前記プロセッサが、前記入力文字列のうち、指定された文字列の変換候補を生成するステップと、
前記変換候補を表示するステップとをさらに含み、
前記判定するステップは、前記変換候補を前記対象文字列として設定するステップを含み、
前記表示するステップは、前記変換候補に加えて、前記マスキングするステップによって前記関連文字列の近傍の文字列がマスキングされた処理済文字列を、新たな変換候補として表示するステップを含む、請求項1に記載の文書作成方法。
【請求項5】
前記プロセッサが、前記変換候補に加えて、前記処理済文字列を前記新たな変換候補として表示するか否かを設定するステップをさらに含む、請求項4に記載の文書作成方法。
【請求項6】
前記プロセッサが、前記処理済文字列において、マスキングする文字列の範囲を変更するステップをさらに含む、請求項4に記載の文書作成方法。
【請求項7】
前記関連文字列は、前記近傍の文字列に含まれない、請求項1に記載の文書作成方法。
【請求項8】
請求項1~7のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラム。
【請求項9】
請求項1~7のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラムを格納したメモリと、
前記プログラムを実行するためのプロセッサとを備える、文書作成装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、文書作成方法、当該方法をコンピュータに実行させるプログラム、および文書作成装置に関する。
【背景技術】
【0002】
文書内に個人情報等が含まれる場合、この個人情報等を伏せるために、手作業またはデータ処理によりマスキングが行われることがある。データ処理によりマスキングを行う技術として、たとえば、特開2014-191778号公報(特許文献1)に開示された文書作成支援装置が挙げられる。
【0003】
上記文書作成支援装置においては、入力された文章を単語ごとに分解し、その単語がデータベース内の秘密ワードと前方一致した場合に置換対象候補として登録する。そして、検索した単語に続く単語と結合した文字列が、一時保存した置換対象候補の中にあるかどうかを判定して、一致するものがあれば、それをマスキング文字列として使用する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
文書が完成した後に、マスキング対象となる文字列を文書から検出および修正する場合、目視でこれを行うと、非常に手間がかかり、また、マスキング漏れが発生する可能性がある。一方、特許文献1に開示された文書作成支援装置においては、データベースに登録された単語をマスキングするものであるため、マスキングしたい単語を網羅的にデータベースに事前登録しておく必要がある。この場合、事前の登録作業に時間がかかるとともに、登録漏れによるマスキング漏れが発生する可能性がある。
【0006】
本開示は、上述の課題を解決するためになされたものであって、マスキング漏れを防ぎつつもマスキングの作業効率を向上させることができる技術を提供することである。
【課題を解決するための手段】
【0007】
本開示に基づく文書作成方法は、コンピュータによって実行される。この方法は、プロセッサが、個人情報に関連付けられた関連文字列をデータベースから取得するステップと、プロセッサが、判定対象となる対象文字列の中に関連文字列が含まれるか否かを判定するステップと、プロセッサが、判定するステップによって対象文字列の中に関連文字列が含まれると判定されたときに、関連文字列の近傍の文字列をマスキングするステップとを含む。
【0008】
好ましくは、関連文字列は、固有名詞とともに用いられる単語を含む。
好ましくは、関連文字列は、会社、大学、高校、学校、さん、くん、君、様、殿、氏、県、市、町、区、村、および、病院を含む。
【0009】
好ましくは、文書作成方法は、入力装置から入力された入力文字列を受付けるステップと、プロセッサが、入力文字列のうち、指定された文字列の変換候補を生成するステップと、変換候補を表示するステップとをさらに含む。判定するステップは、変換候補を対象文字列として設定するステップを含む。表示するステップは、変換候補に加えて、マスキングするステップによって関連文字列の近傍の文字列がマスキングされた処理済文字列を、新たな変換候補として表示するステップを含む。
【0010】
好ましくは、文書作成方法は、プロセッサが、変換候補に加えて、処理済文字列を新たな変換候補として表示するか否かを設定するステップをさらに含む。
【0011】
好ましくは、文書作成方法は、プロセッサが、処理済文字列において、マスキングする文字列の範囲を変更するステップをさらに含む。
【0012】
好ましくは、関連文字列は、近傍の文字列に含まれない。
本開示に基づくプログラムは、上記のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラムである。
【0013】
本開示に基づく文書作成装置は、上記のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラムを格納したメモリと、プログラムを実行するためのプロセッサとを備える。
【発明の効果】
【0014】
本開示によれば、マスキング漏れを防ぎつつもマスキング作業効率を向上させることができる。
【図面の簡単な説明】
【0015】
【
図1】コンピュータシステム100のハードウェア構成を表わすブロック図である。
【
図2】コンピュータシステム100を実現する構成の一例を表わす図である。
【
図3】コンピュータシステム100が実行する処理の一部を表わすフローチャートである。
【
図5】マスキングの一例を説明するための図である。
【
図6】マスキングの一例を説明するための図である。
【
図7】マスキングの一例を説明するための図である。
【
図8】変形例に係るコンピュータシステム100を実現する構成の一例を表わす図である。
【
図9】変形例に係るコンピュータシステム100が実行する処理の一部を表わすフローチャートである。
【発明を実施するための形態】
【0016】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0017】
図1を参照して、文書作成装置の一態様であるコンピュータシステム100の構成について説明する。
図1は、コンピュータシステム100のハードウェア構成を表わすブロック図である。
【0018】
コンピュータシステム100は、主たる構成要素として、プログラムを実行するCPU(Central Processing Unit)1と、コンピュータシステム100の使用者(操作者)による指示の入力を受けるマウス2およびキーボード3と、CPU1によるプログラムの実行により生成されたデータ、またはマウス2もしくはキーボード3を介して入力されたデータを揮発的に格納するRAM4と、データを不揮発的に格納するハードディスク5と、光ディスク駆動装置6と、通信インターフェイス(I/F)7と、モニタ8とを含む。各構成要素は、相互にデータバスによって接続されている。光ディスク駆動装置6には、CD-ROM(Compact Disc - Read Only Memory)9その他の光ディスクが装着される。
【0019】
コンピュータシステム100における処理は、各ハードウェアおよびCPU1により実行されるソフトウェアによって実現される。このようなソフトウェアは、ハードディスク5に予め記憶されている場合がある。また、ソフトウェアは、CD-ROM9その他の記録媒体に格納されて、コンピュータプログラムとして流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者によってダウンロード可能なアプリケーションプログラムとして提供される場合もある。このようなソフトウェアは、光ディスク駆動装置6その他の読取装置によりその記録媒体から読み取られて、あるいは、通信インターフェイス7を介してダウンロードされた後、ハードディスク5に一旦格納される。そのソフトウェアは、CPU1によってハードディスク5から読み出され、RAM4に実行可能なプログラムの形式で格納される。CPU1は、そのプログラムを実行する。
【0020】
図1に示されるコンピュータシステム100を構成する各構成要素は、一般的なものである。したがって、本開示に係る技術思想の本質的な部分の一つは、RAM4、ハードディスク5、CD-ROM9その他の記録媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。記録媒体は、一時的でない、コンピュータ読取可能なデータ記録媒体を含み得る。なお、コンピュータシステム100の各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。
【0021】
なお、記録媒体としては、CD-ROM、FD(Flexible Disk)、ハードディスクに限られず、SSD(Solid State Drive)、磁気テープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリーカードを含む)、光カード、マスクROM、EPROM(Electronically Programmable Read-Only Memory)、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する媒体でもよい。
【0022】
ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
【0023】
コンピュータシステム100は、たとえば、1台のパーソナルコンピュータによって実現されてもよいし、サーバ装置を含む複数台のコンピュータによって実現されてもよい。本実施の形態において実行されるプログラムは、パーソナルコンピュータ(端末装置)によって実行されてもよいし、サーバ装置によって実行されてもよい。
【0024】
図2は、コンピュータシステム100を実現する構成の一例を表わす図である。コンピュータシステム100は、入力受付部20と、変換候補生成部21と、文字列判定部22と、マスキング処理部23と、表示情報生成部24と、変換候補確定部25と、個人情報関連文字DB30とを備える。
【0025】
コンピュータシステム100が実行する処理は、コンピュータシステム100において実行される文字入力支援ソフトウェア(たとば、IME(Input Method Editor))の一機能、あるいは、IMEを含んだ機能として実行されるようにしてもよい。本例では、日本語の文字入力および文字変換について示す。
【0026】
たとえば、操作者が、キーボード3を用いて、ローマ字、カタカナあるいはひらがなの文字列(テキスト)を入力する。そして、コンピュータシステム100が実行するIMEは、入力した文字列の変換候補のリスト(漢字等を含んだ変換後の文字列)を表示する。操作者が、変換候補のリストからいずれかを選択すると選択した文字列に変換される。
【0027】
本実施の形態においては、このようなIMEが実行する処理に含まれる1つの機能(ソフトウェアのモジュールあるいはライブラリ)として実装されるプログラムについて開示する。具体的には、入力した文字列の変換候補のリストをIMEが表示する際に、マスキングされた文字列も変換候補に含めて表示する機能等を開示する。
【0028】
本実施の形態において実行されるプログラムは、IME内の1つのモジュールとして実行されるプログラムであってもよいし、IMEも含んだプログラムであってもよいし、文書作成ソフトウェアも含んだプログラムであってもよい。
【0029】
入力受付部20は、操作者から、文書作成のためのテキスト(以下、「文字列」とも記載する)の入力を受け付ける。たとえば、操作者は、キーボード3を操作して、「ひょうごけん」という文字列を入力する。なお、以下の説明において、「文字列」は、複数の文字によって構成されるもの限らず、1文字でもあってもよいものとする。
【0030】
変換候補生成部21は、入力受付部20が受け付けた入力文字列のうち、操作者により指定された文字列の変換候補を生成する。たとえば、上記の文字列「ひょうごけん」の例においては、操作者が文字列「ひょうごけん」を指定し、変換候補生成部21が変換候補として「兵庫県」、「ひょうご県」、「ヒョウゴケン」等を生成する。当該機能は、たとえば、IMEが実行する機能である。
【0031】
個人情報関連文字DB30は、関連文字列等を記憶するデータベースである。関連文字列は、個人情報に関連付けられた文字列であって、個人情報の近傍にあると思われる文字列である。詳しくは、
図4を用いて後述するが、たとえば、個人情報としては、個人の住所等が挙げられる。上記変換候補の「兵庫」あるいは「兵庫県」が個人情報に該当する。「兵庫県」のうち「県」は、個人情報である住所を示す「兵庫」に関連付けられた文字列である。文字列は、「県」のように、1文字であってもよい。
【0032】
文字列判定部22は、個人情報関連文字DB30から関連文字列等を取得する。そして、文字列判定部22は、変換候補を対象文字列として、対象文字列中に関連文字列が含まれているか否かを判定する。上述のように、対象文字列「兵庫県」には、関連文字列「県」が含まれる。
【0033】
マスキング処理部23は、関連文字列の近傍の文字列をマスキングした処理済文字列(マスキング済文字列)を生成する。たとえば、「兵庫県」において、「県」の近傍の文字列として「兵庫」をマスキングし、「**県」という文字列を生成する。詳しくは
図4を用いて後述するが、関連文字列「県」においては、関連文字列の前方の文字列(兵庫)がマスキング対象となる。さらに、マスキング処理部23は、処理済文字列を変換候補に加える。
【0034】
なお、本実施の形態において、マスキング対象となる文字は、図に示すように、黒く塗りつぶされた四角形の記号に置換される。ただし、本実施例の記載においては、この記号を「*」で表すものとする。マスキング対象となる文字は、その文字が視認不能となる態様であれば、どのような態様によってマスキングされるようにしてもよい。
【0035】
表示情報生成部24は、変換候補の表示設定を行う。これにより、新たに加えられた処理済文字列を含む変換候補を表示するための表示データが生成される。モニタ8は、生成された表示データを表示する。
【0036】
詳しくは、
図5以降の図を用いて説明するが、たとえば、「ひょうごけん」という文字列を変換した複数の変換候補「兵庫県」、「ひょうご県」等の中に、「**県」を含めて表示される。
【0037】
変換候補確定部25は、複数の変換候補の中から操作者が選択した候補を設定する。たとえば、操作者が、モニタ8に表示された変換候補のうち、「**県」を選択した場合、「ひょうごけん」の文字列が変換された「**県」が設定される(変換が確定する)。
【0038】
入力受付部20、変換候補生成部21、文字列判定部22、マスキング処理部23、表示情報生成部24および変換候補確定部25の各々は、各処理を実現するプログラムとプロセッサとの組み合わせとして、あるいは、各処理を実現するように構成された回路素子の組み合わせとして、実現され得る。入力受付部20は、入力装置(マウス2、キーボード3など)からの入力を受け付ける入力インターフェイスとして実現されてもよい。個人情報関連文字DB30は、ハードディスク、SSD(Solid State Drive)その他の不揮発性の記憶装置によって実現される。
【0039】
以下、フローチャートを用いて、コンピュータシステム100が実行する処理を説明する。
図3は、コンピュータシステム100が実行する処理の一部を表わすフローチャートである。
【0040】
たとえば、本処理は、コンピュータシステム100において実行される文字入力支援ソフトウェア(IME)の一機能、あるいは、IMEを含んだ機能として実行されるようにしてもよい。以下、具体的な処理について説明する。
【0041】
操作者は、キーボード3からの入力によりテキスト(文字列)を入力する。本処理が開始すると、コンピュータシステム100の入力受付部20は、S101において、操作者によって入力装置(キーボード3)から入力された入力文字列を受付ける。たとえば、後述する
図6の例において、入力文字列は、「ひょうごけん」あるいは「ひょうごけんりつこうべこうこうしゅっしんのちょしゃは」である。
【0042】
コンピュータシステム100は、変換候補生成部21として、S102において、入力文字列のうち、指定された文字列の変換候補を生成する。たとえば、操作者が上記入力文字列のうち、文字列「ひょうごけん」を指定し、その結果、「兵庫県」、「兵庫縣」等が変換候補として生成される。
【0043】
コンピュータシステム100は、文字列判定部22として、S103において、個人情報に関連付けられた関連文字列等を個人情報関連文字DB30から取得する。たとえば、個人情報関連文字DB30から関連文字列「県」等が取得される。関連文字列「県」のマスキング対象となるのは、「県」の前方にある文字列である。
【0044】
コンピュータシステム100は、文字列判定部22として、S104において、変換候補を対象文字列として設定するとともに、判定対象となる対象文字列(変換候補)の中に関連文字列が含まれるか否かを判定する。変換候補が複数ある場合は、それぞれの変換候補について、関連文字列が含まれるか否かが判定される。上記例では、対象文字列として設定された「兵庫県」の中に関連文字列「県」が含まれる。
【0045】
対象文字列の中に関連文字列が含まれる場合(S104でYES)、処理をS105に進める。対象文字列の中に関連文字列が含まれない場合(S104でNO)、S108に処理を進める。
【0046】
コンピュータシステム100は、マスキング処理部23として、S105において、関連文字列の近傍の文字列をマスキングし、処理済文字列(マスキング済文字列)として設定するとともに変換候補に追加する。上記例では、「兵庫県」のうち、「県」の前方の文字列である「兵庫」がマスキングされ、処理済文字列「**県」として設定される。「**県」は、変換候補に追加される。
【0047】
コンピュータシステム100は、表示情報生成部24として、S106において、変換候補を表示設定する。これにより、モニタ8は、変換候補を表示する。モニタ8は、変換候補に加えて、マスキング処理部23によって関連文字列の近傍の文字列がマスキングされた処理済文字列を、新たな変換候補として表示する。上記例では、「兵庫県」、「兵庫縣」等に「**県」(処理済文字列)を加えた変換候補が表示設定されて、これらの変換候補がモニタ8に表示される。
【0048】
コンピュータシステム100は、S107において、全ての関連文字列について実行したか否かを判定する。全ての関連文字列について実行された場合(S107でYES)は、S108に処理を進める。一方、全ての関連文字列について実行されていない場合(S107でNO)は、S103に処理を戻す。
【0049】
たとえば、後述する
図4に示すように、関連文字列には、「会社」、「大学」、「県」等が含まれる。S103においては、これらを順に1つずつ取得する。たとえば、S103において、「会社」を取得した場合は、変換候補に「会社」が含まれるかが判断される。上記例において、「兵庫県」、「兵庫縣」等には「会社」は含まれない(S104でNO)。S103において、「県」を取得した場合は、上述したように「兵庫県」に「県」が含まれる(S104でYES)ため、マスキング処理(S105)が行われる。
【0050】
コンピュータシステム100は、変換候補確定部25として、S108において、操作者によって選択された変換候補を変換後文字列として設定する。たとえば、操作者が
図6の画面51において、マウス2あるいはキーボード3の操作により変換候補「**県」を選択した場合、選択された「**県」が変換後文字列として設定される。つまり、入力した文字列「ひょうごけん」は、「**県」として変換が確定する。
【0051】
次に、個人情報関連文字DB30の具体例について説明する。
図4は、個人情報関連文字DB30の一例である。個人情報関連文字DB30は、複数の関連文字列が記憶されている。さらに、個人情報関連文字DB30は、複数の関連文字列の各々に対応付けられる「マスキング対象」を記憶している。マスキング対象は、関連文字列との関係においてマスキング対象となる文字列を示している。
【0052】
マスキング対象において、「前」とは、関連文字列の前にある文字列(テキスト)がマスキング対象であることを示している。マスキング対象の「前/後」は、関連文字列の前方あるいは後方にある文字列がマスキング対象であることを示している。
図4には例示しないが、マスキング対象の「後」は、関連文字列の後方にあるテキストがマスキング対象であることを示している。
【0053】
図4に示すように、関連文字列は、「会社」、「大学」、「高校」、「学校」、「さん」、「くん」、「君」、「様」、「殿」、「氏」、「県」、「市」、「町」、「区」、「村」および「病院」を含む。
【0054】
本例では、関連文字列が「会社」である場合、「会社」の前または後にある文字列がマスキング対象になる。関連文字列が「大学」である場合、「大学」の前にあるテキストがマスキング対象になる。関連文字列が「高校」である場合、「高校」の前にあるテキストがマスキング対象になる。上記例においては、その他の関連文字列において、当該関連文字の前にあるテキストがマスキング対象になっている。
【0055】
上述のように、関連文字列は、個人情報に関連付けられた文字列である。ここで、個人情報とは、個人の氏名、住所(地名)、所属する組織名等の情報を指す。個人情報は、人名、地名、組織名等の固有名詞を含む情報であるとも言える。関連文字列は、固有名詞とともに用いられる単語を含むものである。
【0056】
たとえば、判定対象となる文字列が「山田太郎さん」である場合、個人の氏名である「山田太郎」が個人情報(固有名詞)に相当する。個人情報「山田太郎」に関連付けられた文字列(関連文字列)は、「さん」である。「さん」は、固有名詞である「山田太郎」(氏名)とともに用いられる単語である。「さん」のマスキング対象は関連文字列の前方であるので、「さん」の前方の「山田太郎」がマスキング対象となる。
【0057】
同様に、判定対象となる文字列が「兵庫県」、「神戸市」(たとえば、個人の居所、勤務先住所等)である場合、「県」は「兵庫」とともに用いられる単語であり、「市」は「神戸」とともに用いられる単語である。「県」の前方の「兵庫」がマスキング対象となり、「市」の前方の「神戸」がマスキング対象となる。
【0058】
上記例において、「会社」、「大学」、「高校」、「学校」は、組織名とともに用いられる単語である。「さん」、「くん」、「君」、「様」、「殿」、「氏」は、人名とともに用いられる単語である。「県」、「市」、「町」、「区」、「村」は、地名とともに用いられる単語である。「病院」は、施設名とともに用いられる単語である。
【0059】
なお、関連文字列は、固有名詞に限らず、個人情報に関連付けられた文字列であればどのようなものであってもよい。たとえば、関連文字列は、「性別」、「電話番号」であってもよい。「性別:男」であれば、「性別:*」のようにマスキングしてもよい。「電話番号:0901234567X」であれば、「電話番号:***********」のようにマスキングしてもよい。また、「男」自体を関連文字列としてもよい。この場合、関連文字列である「男」そのものをマスキングして「*」としてもよい。
【0060】
上述のように、本実施の形態では、対象文字列の中に関連文字列が含まれると判定されたときに、関連文字列の近傍の文字列がマスキングされる。本実施の形態において、関連文字列の「近傍」の文字列とは、関連文字列の前方の文字列、関連文字列の後方の文字列、関連文字列の前方あるいは後方の文字列を例示している。この場合、関連文字列の近傍の文字列は、関連文字列そのものを含まない。
【0061】
しかし、これに限らず、関連文字列の近傍の文字列は、関連文字列の前方および後方の文字列を指すものであってもよいし、関連文字列の近傍の文字列は、関連文字列そのものを含んでも含まなくてもよい。たとえば、「ABCDE」という文字列において、「C」が関連文字列である場合、「**C**」とマスキングしてもよいし、「*****」とマスキングしてもよい。また、判定対象となる文字列の前方または後方の文字列全てをマスキングしてくてもよい。たとえば、上記例では、「A*C*D」あるいは「*BCD*」のようにマスキングしてもよい。
【0062】
関連文字列は、個人情報に関連付けられた文字列と定義しているが、個人情報以外の情報を含むものであってもよい。たとえば、個人に類するなんらかの情報であってもよいし、個人以外の組織の情報であってもよいし、秘匿すべき何らかの情報であってもよい。
【0063】
以下、具体例で説明する。
図5~
図7は、マスキングの一例を説明するための図である。
図5~
図7では、マスキング候補の作成および表示の例を示している。
【0064】
図5において、入力文字列「こうべし」を変換対象とした場合の変換例を示す。
図5に示すように、画面41には、文字列「こうべし」の変換候補として変換候補1~9が表示されている。
【0065】
まず、コンピュータシステム100のIMEは、「こうべし」の変換候補として、「神戸市」、「神戸氏」、「乞うべし」、「請うべし」、「こうべし」、「光部氏」、「広部氏」等を生成する。次に、コンピュータシステム100は、これらの変換候補の中に、個人情報関連文字DB30に記憶された関連文字列が含まれてないか検索する。上記変換候補中には、関連文字列「市」(マスキング対象は「前」)と関連文字列「氏」(マスキング対象は「前」)が含まれている。
【0066】
このため、入力文字列「こうべし」を変換した「神戸市」のうち「市」の前方にある文字列「神戸」がマスキング対象となる。このため、「神戸」がマスキングされて「**」に置き換えられ、これに関連文字列「市」を付加した文字列「**市」が新たな変換候補として生成される。
【0067】
また、入力文字列「こうべし」を変換した「神戸氏」のうち「氏」の前方にある文字列「神戸」がマスキング対象となる。このため、「神戸」がマスキングされて「**」となり、これに関連文字列「氏」を付加した文字列「**氏」が新たな変換候補として生成される。
【0068】
その結果、新たに「**市」、「**氏」が変換候補として加えられる。画面41には、変換候補1「神戸市」、変換候補2「神戸氏」、変換候補3「乞うべし」、変換候補4「請うべし」、変換候補5「こうべし」、変換候補6「**市」、変換候補7「**氏」、変換候補8「光部氏」、変換候補9「広部氏」が表示されている。
【0069】
たとえば、キーボード3の矢印キーの操作で変換候補を選択し、リターンキーの操作で選択した候補を確定する。
図5において、矢印キーの操作で、現在、「神戸氏」が選択された状態であることが示されている。操作者は、最終的に「**市」を選択し、リターンキーの操作により「**市」を変換後文字列として確定している。
【0070】
次に、
図6では、入力文字列が「ひょうごけんりつこうべこうこうしゅっしんのちょしゃは」である場合の変換例を示す。
図6に示すように、入力文字列のうち、「けん(県)」および「こうこう(高校)」の部分が関連文字列に相当する。
【0071】
本例において、操作者が「ひょうごけん」まで文字入力した段階で、「ひょうごけん」を変換対象に指定して、変換候補を表示させる操作(たとえば、スペースキーの操作)を行ったとする。
【0072】
これにより、まず、「ひょうごけん」の変換候補として、「兵庫県」、「ひょうご県」、「兵庫縣」、「ひょうご縣」、「ひょうごけん」、「ヒョウゴケン」が生成されたとする。
【0073】
上記変換候補中には、関連文字列「県」(マスキング対象は「前」)が含まれている。このため、文字列「ひょうごけん」を変換した「兵庫県」のうち、「県」の前方にある文字列「兵庫」がマスキング対象となる。このため、「兵庫」がマスキングされて「**」に置き換えられ、これに関連文字列「県」を付加した文字列「**県」が新たな変換候補として生成される。
【0074】
画面51には、文字列「ひょうごけん」の変換候補として、変換候補1「兵庫県」、変換候補2「ひょうご県」、変換候補3「兵庫縣」、変換候補4「ひょうご縣」、変換候補5「ひょうごけん」、変換候補6「ヒョウゴケン」、変換候補7「**県」が表示されている。なお、図示しないが、文字列「ひょうごけん」を変換した「ひょうご県」のうち「ひょうご」を「****」でマスキングした「****県」を変換候補として加えてもよい。
【0075】
画面51において、矢印キーの操作で、現在、「ひょうご県」が選択された状態であることが示されている。操作者は、最終的に「**県」を選択し、リターンキーの操作により「**県」で確定している。
【0076】
続いて、操作者は、「りつ」を入力し、これを「立」に変換している。さらに、操作者は、「こうべこうこう」と入力し、矢印キーの操作により「こうべこうこう」を変換対象に指定して、変換候補を表示させる操作(たとえば、スペースキーの操作)を行ったとする。これにより、まず、「こうべこうこう」の変換候補として、「こうべ高校」、「神戸高校」「頭高校」、「河邊高校」、「河辺高校」等が生成される。
【0077】
上記変換候補中には、関連文字列「高校」(マスキング対象は「前」)が含まれている。このため、文字列「こうべこうこう」を変換した「神戸高校」のうち、「高校」の前方にある文字列「神戸」がマスキング対象となる。このため、「神戸」がマスキングされて「**」に置き換えられ、これに関連文字列「高校」を付加した文字列「**高校」が新たな変換候補として生成される。
【0078】
画面52には、文字列「こうべこうこう」の変換候補として、変換候補1「こうべ高校」、変換候補2「神戸高校」、変換候補3「**高校」、変換候補4「頭高校」、変換候補5「河邊高校」、変換候補6「河辺高校」が表示されている。なお、図示しないが、文字列「頭高校」のうち「頭」を「*」でマスキングした「*高校」を変換候補として加えてもよい。
【0079】
画面52において、矢印キーの操作で、現在、「神戸高校」が選択された状態であることが示されている。画面52には、先に確定した「**県立」とともに選択された「神戸高校」が表示されている。操作者は、最終的に「**高校」を選択し、リターンキーの操作により「**高校」で確定している。
【0080】
さらに、操作者は、「しゅっしんのちょしゃは」を入力し、これを「出身の著者は」と変換している。以上の操作により、入力文字列「ひょうごけんりつこうべこうこうしゅっしんのちょしゃは」は、最終的に「**県立**高校出身の著者は」に変換されている。
【0081】
なお、上記の説明では、操作者が「ひょうごけん」を変換対象に指定することで、変換候補を表示するような構成にした。しかし、このような指定を行うことなく、文字入力中に自動的に変換候補およびマスキング済の変換候補を表示させるような構成としてもよい。
【0082】
図7では、入力文字列が「さんようかぶしきかいしゃはじてんしゃめーかーです。」である場合の変換例を示す。
図7に示すように、入力文字列のうち、「かいしゃ(会社)」が関連文字列に相当する。
【0083】
本例において、操作者が「さんようかぶしきかいしゃはじてんしゃめーかーです」と文字入力し、これを変換対象に指定して、変換候補を表示させる操作(スペースキーの操作)を行ったとする。
【0084】
これにより、まず、「さんようかぶしきかいしゃはじてんしゃめーかーです」の変換候補として、「サンヨウカブシキカイシャハジテンシャメーカーデス」、「三洋株式会社は自転車メーカーです」、「山洋株式会社は自転車メーカーです」、「山容株式会社は自転車メーカーです」、「さんようかぶしきかいしゃはじてんしゃめーかーです」等が生成される。
【0085】
上記変換候補中には、関連文字列「会社」(マスキング対象は「前」/「後」)が含まれている。このため、まず、文字列「三洋株式会社は自転車メーカーです」のうち、「会社」の前方にある文字列「三洋株式」がマスキング対象となる。このため、「三洋株式」がマスキングされて「****」に置き換えられ、これに関連文字列「会社」およびその後方の文字列を付加した文字列「****会社は自転車メーカーです」が新たな変換候補として生成される。
【0086】
さらに、文字列「三洋株式会社は自転車メーカーです」のうち、「会社」の後方にある文字列「は自転車メーカーです」がマスキング対象となる。このため、「は自転車メーカーです」がマスキングされて「**********」に置き換えられ、これに関連文字列「会社」およびその前方の文字列を付加した文字列「三洋株式会社**********」が新たな変換候補として生成される。
【0087】
画面61には、文字列「さんようかぶしきかいしゃはじてんしゃめーかーです」の変換候補として、変換候補1「サンヨウカブシキカイシャハジテンシャメーカーデス」、変換候補2「三洋株式会社は自転車メーカーです」、変換候補3「****会社は自転車メーカーです」、変換候補4「三洋株式会社**********」、変換候補5「山洋株式会社は自転車メーカーです」、変換候補6「山容株式会社は自転車メーカーです」、変換候補7「さんようかぶしきかいしゃはじてんしゃめーかーです」等が表示されている。なお、図示しないが、文字列「山容株式会社は自転車メーカーです」をマスキング対象とするなどしてもよい。
【0088】
画面61において、矢印キーの操作で、現在、「山洋株式会社は自転車メーカーです」が選択された状態であることが示されている。操作者は、最終的に「****会社は自転車メーカーです」を選択し、リターンキーの操作により「****会社は自転車メーカーです」で確定している。
【0089】
会社名の場合、「ABC株式会社」、「株式会社ABC」のように、固有名詞が前方に付加される場合と後方に付加される場合とがある。このため、上記のように、いずれのマスキング方法が適切であるのか、操作者自身が選択するようにしている。なお、「株式会社」、「合資会社」等の文字列を関連文字列として個人情報関連文字DB30に登録するようにしてもよい。この場合、「**株式会社は自転車メーカーです」とマスキングされる。
【0090】
以上説明したように、コンピュータシステム100は、文字列判定部22として、個人情報に関連付けられた関連文字列を個人情報関連文字DB30から取得する。コンピュータシステム100は、文字列判定部22として、判定対象となる対象文字列の中に関連文字列が含まれるか否かを判定する。コンピュータシステム100は、マスキング処理部23として、文字列判定部22によって対象文字列の中に関連文字列が含まれると判定されたときに、関連文字列の近傍の文字列をマスキングする。
【0091】
このように、個人情報関連文字DB30に登録されているのは、個人情報に関連付けられた関連文字列(県、様等)であるので、個人情報そのものを網羅的にDBに登録する方式に比べて、事前のDBへの登録作業の負担が低減される。また、関連文字列の近傍をマスキングするため、DBに登録された個人情報と一致する文字列をマスキングする方式に比べ、マスキング漏れが発生しにくい。さらに、文字入力の際に、入力文字列の変換候補にマスキング済の文字列が提示されるため、文書作成者が目視でマスキング箇所を確認しつつ、文書作成の時点で既にマスキングされた状態となる。これにより、マスキングを行う必要のある文字列のマスキング漏れを防ぎつつもマスキングの作業効率を向上(作業工数を低減)させることができる。
【0092】
関連文字列は、固有名詞とともに用いられる単語を含む。これにより、固有名詞を適切にマスキングすることができる。
【0093】
関連文字列は、会社、大学、高校、学校、さん、くん、君、様、殿、氏、県、市、町、区、村、および、病院を含む。これにより、組織名、個人名、地名等を適切にマスキングすることができる。
【0094】
入力受付部20は、入力装置(キーボード3)から入力された入力文字列を受付ける。コンピュータシステム100は、変換候補生成部21として、入力文字列のうち、指定された文字列の変換候補を生成する。モニタ8は、変換候補を表示する。文字列判定部22は、変換候補を対象文字列として設定する。モニタ8は、変換候補に加えて、マスキングするステップによって関連文字列の近傍の文字列がマスキングされた処理済文字列を、新たな変換候補として表示する。これにより、文字変換を行うタイミングでマスキングすることができるため、マスキング漏れを防ぐことができるとともに、マスキングの作業効率が向上する。
【0095】
関連文字列は、「近傍の文字列」に含まれない。これにより、関連文字列そのものをマスキングせずに、伏せたい情報のみをマスキングすることができる。なお、関連文字列そのものをマスキングするように構成してもよい。
【0096】
[変形例]
図8は、変形例に係るコンピュータシステム100を実現する構成の一例を表わす図である。変形例では、
図2で示したコンピュータシステム100に、さらに、表示設定部26および範囲変更部27を付加した構成となっている。
【0097】
図9は、変形例に係るコンピュータシステム100が実行する処理の一部を表わすフローチャートである。変形例では、
図3で示したフローチャートに、さらに、S200およびS207を付加した構成となっている。以下、上述した実施の形態との相違点について説明する。
【0098】
本変形例において、通常の変換候補に加えて、処理済文字列(マスキング済文字列)を新たな変換候補として表示するか否かを設定可能である(表示設定部26、S200)。また、処理済文字列において、マスキングする文字列の範囲を変更することが可能である(範囲変更部27、S207)。
【0099】
表示設定部26では、操作者が事前に、処理済文字列(マスキング済文字列)を新たな変換候補として表示するか否かを設定しておく。処理済文字列を新たな変換候補として表示すると設定した場合は、処理済文字列が変換候補に含まれて表示されるが、当該設定が行われなかった場合は、通常のIMEの変換候補の表示が行われる(処理済文字列が変換候補に含まれて表示されない)。
【0100】
本変形例の処理が開始すると、コンピュータシステム100は、表示設定部26として、S200において、通常の変換候補に加えて、処理済文字列(マスキング済文字列)を新たな変換候補として表示することが設定されているか否かを判定する。
【0101】
処理済文字列が新たな変換候補として表示することが設定されている場合(S200でYES)、処理をS201に進める。この場合、
図3のS101以降と同様の処理が実行される。処理済文字列が新たな変換候補として表示することが設定されていない場合(S200でNO)、本処理を終了する。この場合、通常のIMEの変換候補の表示処理が実行される。
【0102】
図9のS201~S209の処理は、範囲変更部27に相当するS207の処理が追加されている以外は、
図3のS101~S108の処理と同じである。
【0103】
コンピュータシステム100は、範囲変更部27として、S207において、処理済文字列において、操作者の操作に基づき、マスキングする文字列の範囲を変更する。以下具体例を用いて説明する。
【0104】
本例においては、
図7で説明した入力文字列「さんようかぶしきかいしゃはじてんしゃめーかーです」を例として説明する。表示設定部26において、処理済文字列が新たな変換候補として表示することが設定されてる場合(S200でYES)において、S201以降の処理が実行される。
【0105】
「さんようかぶしきかいしゃはじてんしゃめーかーです」の変換候補として、「サンヨウカブシキカイシャハジテンシャメーカーデス」、「三洋株式会社は自転車メーカーです」等が生成され(S202)、関連文字列として「会社」等が取得される(S203)。
【0106】
図7の説明と同様に、「三洋株式会社は自転車メーカーです」において、「会社」の前方がマスキングされた「****会社は自転車メーカーです」および「三洋株式会社**********」が新たな変換候補として追加される(S205)。
【0107】
これにより、モニタ8には、
図8で示したような画面が表示される。本変形例では、変換候補3「****会社は自転車メーカーです」または変換候補4「三洋株式会社**********」のマスキング範囲が変更可能である。
【0108】
たとえば、操作者が、矢印キーで変換候補3を選択し、マウス2あるいはキーボード操作により、マスキングされた「****」の範囲を変更することができる。本例では、操作者の操作により、マスキングされた4文字のうち、前方の2文字をマスキング状態とし、後方の2文字のマスキングが解除されるよう指定されたとする。
【0109】
これにより、範囲変更部27は、「****会社は自転車メーカーです」において、マスキングする文字列の範囲を変更する(S207)。具体的には、マスキングされた4文字のうち、後方の2文字のマスキングが解除されて、「**株式」に変更される。その結果、変換後文字列は、「**株式会社は自転車メーカーです」となる。
【0110】
以上説明したように、コンピュータシステム100は、表示設定部26として、変換候補に加えて、処理済文字列を新たな変換候補として表示するか否かを設定する。これにより、マスキングしたい文章を作成する場合のみにおいて、マスキング候補を表示させることができる。
【0111】
また、コンピュータシステム100は、範囲変更部27として、処理済文字列において、マスキングする文字列の範囲を変更する。これにより、自動的に設定されるマスキング範囲が不適切であった場合であっても、文書作成者の手によって適切なものに変更することができる。
【0112】
(付記)
以上のように、本実施の形態は以下のような開示を含む。
【0113】
[構成1]
プロセッサが、個人情報に関連付けられた関連文字列をデータベースから取得するステップと、
前記プロセッサが、判定対象となる対象文字列の中に前記関連文字列が含まれるか否かを判定するステップと、
前記プロセッサが、前記判定するステップによって前記対象文字列の中に前記関連文字列が含まれると判定されたときに、前記関連文字列の近傍の文字列をマスキングするステップとを含む、文書作成方法。
【0114】
[構成2]
前記関連文字列は、固有名詞とともに用いられる単語を含む、構成1に記載の文書作成方法。
【0115】
[構成3]
前関連文字列は、会社、大学、高校、学校、さん、くん、君、様、殿、氏、県、市、町、区、村、および、病院を含む、構成1または構成2に記載の文書作成方法。
【0116】
[構成4]
入力装置から入力された入力文字列を受付けるステップと、
前記プロセッサが、前記入力文字列のうち、指定された文字列の変換候補を生成するステップと、
前記変換候補を表示するステップとをさらに含み、
前記判定するステップは、前記変換候補を前記対象文字列として設定するステップを含み、
前記表示するステップは、前記変換候補に加えて、前記マスキングするステップによって前記関連文字列の近傍の文字列がマスキングされた処理済文字列を、新たな変換候補として表示するステップを含む、構成1~3のいずれかに記載の文書作成方法。
【0117】
[構成5]
前記プロセッサが、前記変換候補に加えて、前記処理済文字列を前記新たな変換候補として表示するか否かを設定するステップをさらに含む、構成4に記載の文書作成方法。
【0118】
[構成6]
前記プロセッサが、前記処理済文字列において、マスキングする文字列の範囲を変更するステップをさらに含む、構成4または構成5に記載の文書作成方法。
【0119】
[構成7]
前記関連文字列は、前記近傍の文字列に含まれない、構成1~6のいずれかに記載の文書作成方法。
【0120】
[構成8]
構成1~7のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラム。
【0121】
[構成9]
構成1~7のいずれかに記載の文書作成方法をコンピュータに実行させるためのプログラムを格納したメモリと、
前記プログラムを実行するためのプロセッサとを備える、文書作成装置。
【0122】
今回開示された実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0123】
1 CPU、2 マウス、3 キーボード、4 RAM、5 ハードディスク、6 光ディスク駆動装置、7 通信インターフェイス、8 モニタ、9 ROM、20 入力受付部、21 変換候補生成部、22 文字列判定部、23 マスキング処理部、24 表示情報生成部、25 変換候補確定部、26 表示設定部、27 範囲変更部、30 個人情報関連文字DB、41,51,52,61 画面。