IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社LegalForceの特許一覧

特開2024-127307情報処理方法、情報処理システム、及びプログラム
<>
  • 特開-情報処理方法、情報処理システム、及びプログラム 図1
  • 特開-情報処理方法、情報処理システム、及びプログラム 図2
  • 特開-情報処理方法、情報処理システム、及びプログラム 図3
  • 特開-情報処理方法、情報処理システム、及びプログラム 図4
  • 特開-情報処理方法、情報処理システム、及びプログラム 図5
  • 特開-情報処理方法、情報処理システム、及びプログラム 図6
  • 特開-情報処理方法、情報処理システム、及びプログラム 図7
  • 特開-情報処理方法、情報処理システム、及びプログラム 図8
  • 特開-情報処理方法、情報処理システム、及びプログラム 図9
  • 特開-情報処理方法、情報処理システム、及びプログラム 図10
  • 特開-情報処理方法、情報処理システム、及びプログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024127307
(43)【公開日】2024-09-20
(54)【発明の名称】情報処理方法、情報処理システム、及びプログラム
(51)【国際特許分類】
   G06Q 50/18 20120101AFI20240912BHJP
   G06F 40/177 20200101ALI20240912BHJP
   G06F 40/194 20200101ALI20240912BHJP
【FI】
G06Q50/18
G06F40/177
G06F40/194
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023036370
(22)【出願日】2023-03-09
【新規性喪失の例外の表示】特許法第30条第2項適用申請有り ウェブサイトへの掲載による公開、掲載日:令和5年1月26日、ウェブサイトのアドレス:https://app.legalforce-cloud.com/ ウェブサイトへの掲載による公開、掲載日:令和5年1月26日、ウェブサイトのアドレス:https://legalontech.jp/5727/ ウェブサイトへの掲載による公開、掲載日:令和5年1月26日、ウェブサイトのアドレス:https://prtimes.jp/main/html/rd/p/000000322.000036601.html
(71)【出願人】
【識別番号】717005132
【氏名又は名称】株式会社LegalOn Technologies
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】甲斐 貴彦
(72)【発明者】
【氏名】谷中 貴一
【テーマコード(参考)】
5B109
5L049
5L050
【Fターム(参考)】
5B109PB03
5B109RB32
5B109VC03
5L049CC11
5L049CC32
5L050CC11
5L050CC32
(57)【要約】
【課題】文書データに含まれる表形式の表データの相違点を特定することができる。
【解決手段】情報処理方法は、プロセッサにより実行される情報処理方法であって、第1表データを含む第1文書データ、及び第2表データを含む第2文書データを取得することと、セルに含まれる内容データの類似度に基づいて、第1表データに含まれる少なくとも1つの第1セルと、第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定することと、対応関係を特定することにより生成される対応関係データに基づいて、第1表データ及び第2表データの異なる部分を示す差分を特定することと、を含む。
【選択図】図1
【特許請求の範囲】
【請求項1】
プロセッサにより実行される情報処理方法であって、
第1表データを含む第1文書データ、及び第2表データを含む第2文書データを取得することと、
セルに含まれる内容データの類似度に基づいて、前記第1表データに含まれる少なくとも1つの第1セルと、前記第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定することと、
前記対応関係を特定することにより生成される対応関係データに基づいて、前記第1表データ及び前記第2表データの異なる部分を示す差分を特定することと、
を含む情報処理方法。
【請求項2】
ユーザのユーザ端末に、前記差分を強調表示して、前記第1表データ及び前記第2表データの少なくともいずれかを表示するための表示データを出力することをさらに含む、請求項1に記載の情報処理方法。
【請求項3】
前記出力することは、前記差分を強調表示して、前記第1表データ及び前記第2表データを並べて表示するための前記表示データを出力することを含む、請求項2に記載の情報処理方法。
【請求項4】
前記差分は、前記第1セルに含まれる第1内容データ及び前記第2セルに含まれる第2内容データの差分を含む、請求項1~3のいずれか一項に記載の情報処理方法。
【請求項5】
前記対応関係を特定することは、前記少なくとも1つの第1セル及び前記少なくとも1つの第2セルのうち、前記第1表データ及び前記第2表データの間で対応しない非対応セルを特定することを含み、
前記差分は、前記非対応セルに含まれる内容データを含む、請求項1~3のいずれか一項に記載の情報処理方法。
【請求項6】
前記対応関係を特定することは、
セルに含まれる内容データの類似度に基づいて、前記第1表データの所定の列に含まれる少なくとも1つの第1代表セル及び前記第2表データの所定の列に含まれる少なくとも1つの第2代表セルを対応付ける第1処理と、
セルに含まれる内容データの類似度に基づいて、前記少なくとも1つの第1代表セルの行に含まれる少なくとも1つの第1所属セル、及び前記少なくとも1つの第1代表セルに対応付けられた前記少なくとも1つの第2代表セルの行に含まれる少なくとも1つの第2所属セルを対応付ける第2処理と、
を含む、請求項1~3のいずれか一項に記載の情報処理方法。
【請求項7】
前記類似度は、セルに含まれる内容データにおけるレーベンシュタイン距離に応じた評価に基づく類似度である、請求項6に記載の情報処理方法。
【請求項8】
前記対応関係を特定することは、
前記少なくとも1つの第1代表セル及び前記少なくとも1つの第2代表セルのうち少なくともいずれかのセルが、複数の行にわたって縦に並んだセルを結合した縦結合セルである場合、前記複数の行の、前記縦結合セルよりも右に位置する複数のセルを含む表データを、前記第1表データ又は前記第2表データとみなして、前記第1処理及び前記第2処理を実行する第3処理、
をさらに含む、請求項6に記載の情報処理方法。
【請求項9】
前記対応関係を特定することは、
前記少なくとも1つの第1代表セル及び前記少なくとも1つの第2代表セルのうち少なくとも一方が、同一の内容データをセルに含む複数の同一内容セルを含む場合、前記複数の同一内容セルよりも右に位置する複数のセルを含む表データを、前記第1表データ又は前記第2表データとみなして、前記第1処理及び前記第2処理を実行する第3処理、
をさらに含む、請求項6に記載の情報処理方法。
【請求項10】
前記複数の同一内容セルは、内容データが空白である空白セルを含む、請求項9に記載の情報処理方法。
【請求項11】
前記第1文書データ及び前記第2文書データは、法的文書である、請求項1~3のいずれか一項に記載の情報処理方法。
【請求項12】
少なくとも1つのプロセッサを具備する情報処理システムであって、
前記少なくとも1つのプロセッサが、
第1表データを含む第1文書データ、及び第2表データを含む第2文書データを取得し、
セルに含まれる内容データの類似度に基づいて、前記第1表データに含まれる少なくとも1つの第1セルと、前記第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定し、
前記対応関係を特定することにより生成される対応関係データに基づいて、前記第1表データ及び前記第2表データの異なる部分を示す差分を特定する、
ように構成されている情報処理システム。
【請求項13】
プロセッサに、
第1表データを含む第1文書データ、及び第2表データを含む第2文書データを取得することと、
セルに含まれる内容データの類似度に基づいて、前記第1表データに含まれる少なくとも1つの第1セルと、前記第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定することと、
前記対応関係を特定することにより生成される対応関係データに基づいて、前記第1表データ及び前記第2表データの異なる部分を示す差分を特定することと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、情報処理システム、及びプログラムに関する。
【背景技術】
【0002】
従来、コンピュータ処理により、2つの文書の差分を特定する技術が知られている。
【0003】
例えば、特許文献1に記載されている文書差分表示プログラムは、指定された連続する複数のバージョンの構造化文書情報(例えば、XML(Extensible Markup Language)形式の文書情報)を取得し、構造化文書情報の互いに前後するバージョン間の差分を抽出する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2015―204076号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載されている文書差分表示プログラムでは、例えば、文書が表形式の表データを含む場合に適切に相違点を抽出することについて言及がない。
【0006】
そこで、本発明の一実施形態は、文書データに含まれる表形式の表データの相違点を特定することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一実施形態に係る情報処理方法は、プロセッサにより実行される情報処理方法であって、第1表データを含む第1文書データ、及び第2表データを含む第2文書データを取得することと、セルに含まれる内容データの類似度に基づいて、第1表データに含まれる少なくとも1つの第1セルと、第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定することと、対応関係を特定することにより生成される対応関係データに基づいて、第1表データ及び第2表データの異なる部分を示す差分を特定することと、を含む。
【発明の効果】
【0008】
本発明の一実施形態によれば、文書データに含まれる表形式の表データの相違点を特定することができる。
【図面の簡単な説明】
【0009】
図1】本発明の一実施形態である情報処理システム100の構成を示す図である。
図2】記憶部110に記憶される文書データの例を示す図である。
図3】対応関係特定処理の対象となる表データの例を示す。
図4】少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルの対応関係を示す図である。
図5】少なくとも1つの第1所属セル及び少なくとも1つの第2所属セルの対応関係を示す図である。
図6】縦結合セルを含む場合の対応関係特定処理の例を示す図である。
図7】複数の同一内容セルを含む場合の対応関係特定処理の例を示す図である。
図8】記憶部110に記憶される対応関係データの例を示す図である。
図9】ユーザ端末200に表示される表示データの例を示す図である。
図10】情報処理システム100における処理の例を示すフローチャートである。
図11】コンピュータ1100のハードウェア構成の例を示す図である。
【発明を実施するための形態】
【0010】
添付図面を参照して、本発明の一実施形態について説明する。図1は、本発明の一実施形態である情報処理システム100の構成を示す図である。情報処理システム100は、ユーザ端末200とインターネット等のネットワークを介して通信可能に接続される。
【0011】
情報処理システム100は、第1表データを含む第1文書データ及び第2表データを含む第2文書データを取得して、セルに含まれる内容データの類似度に基づいて、第1表データに含まれるセルと、第2表データに含まれるセルとの対応関係を特定し、第1表データ及び第2表データの異なる部分を示す差分を特定する情報処理システムである。また、情報処理システム100は、差分を強調表示して、第1表データ及び第2表データの少なくともいずれかを表示するための表示データを出力する。情報処理システム100の詳細については、後述する。
【0012】
ユーザ端末200は、ユーザが利用するコンピュータであり、スマートフォン、タブレット端末、パーソナルコンピュータ等である。
【0013】
ユーザ端末200は、ユーザの操作に応じて、情報処理システム100に対し、第1文書データ及び第2文書データを提供する。また、ユーザ端末200は、ユーザの操作に応じて、情報処理システム100から表示データを取得して、差分を強調表示して、第1表データ及び第2表データの少なくともいずれかを表示する。
【0014】
なお、図1において、1つのユーザ端末200が示されているが、複数のユーザ端末200であってもよい。
【0015】
続いて、情報処理システム100の詳細について説明する。情報処理システム100は、記憶部110、文書取得部120、対応関係特定部130、差分特定部140、出力部150を備える。図1に示す各部は、例えば、記憶領域を用いたり、記憶領域に格納されたプログラムをプロセッサが実行したりすることにより実現することができる。
【0016】
本実施形態の記憶部110は、情報処理システム100において処理される情報を記憶する。記憶部110は、例えば、後述する、文書データ、対応関係データを記憶することができる。
【0017】
本実施形態の文書取得部120は、第1表データを含む第1文書データ及び第2表データを含む第2文書データを取得し、第1文書データ及び第2文書データを記憶部110に格納する。
【0018】
文書データ(例えば、第1文書データ及び第2文書データ)は、情報処理システム100が処理する、少なくとも表形式の表データを含む、文書に関するデータである。
【0019】
第2文書データは、例えば、第1文書データに基づいて生成された文書データであってもよい。すなわち、第2文書データは、第1文書データを編集して生成された文書データであってもよく、また、第1文書データを編集して生成された文書データをさらに編集して生成された文書データであってもよい。
【0020】
また、文書データは、法的文書であってもよい。ここで、法的文書は、例えば、規約又は契約書であってもよい。規約又は契約書は、例えば、所定の電子文書作成ソフトによって作成された電子文書、又は、紙媒体の契約書を所定の画像解析技術(例えば、OCR(Optical Character Recognition)技術)を用いて電子化した電子文書であり、例えば、条項を含み、所定の法的効果を発生させる文書であり、申込書、覚書等も含む。
【0021】
規約又は契約書は、双方が合意した文書のみならず、双方が確認中の文書(すなわち、規約又は契約書の案)、当事者間でやり取りされたものの合意には至らなかった文書、又は、他者との契約等に際して参照するために作成された雛形の文書を含む。本実施形態に関する説明において、規約又は契約書は、特に明示しない限り、双方が合意した文書のみならず、双方が確認中の文書(すなわち、規約又は契約書の案)、当事者間でやり取りされたものの合意には至らなかった文書、又は、他者との契約等に際して参照するために作成された雛形の文書を含む。
【0022】
表データ(例えば、第1表データ及び第2表データ)は、表に関するデータである。表データは、例えば、各セルと、各セルに含まれる内容データとを対応付けたデータであってもよい。
【0023】
表データは、例えば、文書データが発生させる法的効果の対象や範囲等を項目ごとに整理した表のデータであってもよい。すなわち、表データは、契約の詳細(例えば、契約開始日、契約終了日、契約金額)を項目別に整理した表データであってもよい。また、文書データが、不動産の売買又は賃貸借に関する契約書データである場合、表データは、例えば、物件及び契約の詳細(例えば、物件の住所、専有面積、賃貸借の開始日、賃貸借の終了日、賃料)を項目別に整理した表データであってもよい。また、文書データが、寄託契約に関する契約書データである場合、表データは、当該寄託契約の対象となる品目の一覧を整理した表データであってもよい。
【0024】
従来、表データの比較は、ユーザの目視の検査によりなされる場合があった。特に、法的文書に含まれる表データは、多岐にわたる項目が整理された表データである場合があり、また、内容の小さな差異が、大きな法的効果の変化につながる場合がある。そのため、ユーザの目視の検査には限界があった。そこで、情報処理システム100は、文書データ(特に例えば、法的文書の文書データ)に含まれる表データの差分を特定することにより、ユーザの検査の利便性を向上することができる。
【0025】
文書取得部120は、例えば、ユーザ端末200から、文書データを取得してもよい。また、文書取得部120は、例えば、ユーザ端末200を通じたユーザの指示に応じて、外部の情報処理システム(例えば、クラウド)から、文書データを取得してもよい。
【0026】
図2は、記憶部110に記憶される文書データの例を示す図である。記憶部110に記憶される文書データは、例えば、文書ID、表データを含む。表データは、さらに、例えば、表データID、セル内容情報を含む。
【0027】
文書IDは、記憶部110に記憶される文書データを識別する情報である。
【0028】
表データは、文書データに含まれる表データを識別する情報である。セル内容データは、表データに含まれる各セルに含まれる内容を示す情報である。セル内容データは、例えば、文字を示す文字データ又は画像を示す画像データであってもよく、また、表データをさらに含んでもよい。
【0029】
記憶部110に記憶される文書データは、さらに、文書内容情報を含んでもよい。文書内容情報は、例えば、表データ以外の部分に記載される内容を示すデータであり、例えば、文字データを含む。
【0030】
本実施形態の対応関係特定部130は、セルに含まれる内容データの類似度に基づいて、第1表データに含まれる少なくとも1つの第1セルと、第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定し、生成される対応関係データを記憶部110に格納する。
【0031】
また、対応関係特定部130が対応関係を特定することは、第1表データ及び第2表データに含まれるセルのうち、第1表データ及び第2表データの間で対応しない非対応セルを特定することを含む。言い換えれば、対応関係特定部130は、例えば、第1表データに含まれる全てのセルについて、対応する第2表データに含まれるセルを対応付けるか又は非対応セルと特定し、また、第2表データに含まれる全てのセルについて、対応する第1表データに含まれるセルを対応付けるか又は非対応セルと特定する。
【0032】
続いて、対応関係特定部130による対応関係特定処理について、具体的に説明する。
【0033】
まず、対応関係特定部130は、セルに含まれる内容データの類似度に基づいて、第1表データの所定の列に含まれる少なくとも1つの第1代表セル及び第2表データの所定の列に含まれる少なくとも1つの第2代表セルを対応付ける第1処理を実行する。
【0034】
ここで、所定の列は、例えば、左端の列であってもよい。すなわち、少なくとも1つの第1代表セルは、第1表データの左端の列に属するセルであってもよく、また、少なくとも1つの第2代表セルは、第2表データの左端の列に属するセルであってもよい。
【0035】
なお、第1表データにおける所定の列と、第2表データにおける所定の列とは、左端から数えて、それぞれ異なる序数の列であってもよい。すなわち、例えば、第1代表セルは左端の列に属し、第2代表セルは左から2番目の列に属してもよい。
【0036】
対応関係特定部130は、セルに含まれる内容データの類似度に基づいて、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルを対応付ける。
【0037】
具体的には、対応関係特定部130は、第1代表セルに含まれる内容データ(例えば、文字データ)と、第2代表セルに含まれる内容データ(例えば、文字データ)との類似度を評価し、最も高い類似度を備えるセルの組み合わせを、対応するセルとして対応付ける。
【0038】
なお、対応関係特定部130による内容データの類似度の評価は、例えば、レーベンシュタイン距離に応じた評価であってもよい。
【0039】
具体的に、図3及び図4を用いて説明する。
【0040】
図3は、対応関係特定処理の対象となる表データの例を示す。第1表データ301aは、第1文書に含まれる第1表データであり、第2表データ301bは、第2文書に含まれる第2表データである。
【0041】
図3に示すとおり、第1表データ301a及び第2表データ301bは、類似する表データであるが、一部相違する箇所がある。例えば、第2表データ301bには、名前「いちご」の行がある一方、第1表データ301aにはなく、表データの構造(例えば、行数、列数)が異なっている。また、個数列、金額列、備考列のセルの内容も、一部異なっている。対応関係特定部130は、第1表データ301a及び第2表データ301bのような、例えば、表データの構造が異なっている場合やセルの内容が異なっている場合であっても、2つの表データの各セルを対応付けることができる。
【0042】
まず、対応関係特定部130は、第1表データ301aの所定の列(例えば、左端の列)に含まれる少なくとも1つの第1代表セル及び第2表データ301bの所定の列に含まれる少なくとも1つの第2代表セルを対応付ける。
【0043】
具体的には、対応関係特定部130は、第1表データ301aの左端の列である第1列302aと、第2表データ301bの左端の列である第2列302bと、を比較して、セルに含まれる内容データの類似度に基づいて、第1列302aに含まれる少なくとも1つの第1代表セルと、第2列302bに含まれる少なくとも1つの第2代表セルとを対応付ける第1処理を実行する。
【0044】
この場合、少なくとも1つの第1代表セルは、第1列302aに含まれるセルであり、「名前」、「りんご」、「みかん」、「スイカ」、「メロン」である。また、少なくとも1つの第2代表セルは、第2列302bに含まれるセルであり、「名前」、「りんご」、「みかん」、「スイカ」、「いちご」、「メロン」である。
【0045】
対応関係特定部130は、少なくとも1つの第1代表セルごとに、総当たり方式で、少なくとも1つの第2代表セルに含まれる内容データとの類似度を算出する。すなわち、まず、対応関係特定部130は、第1代表セル「名前」について、複数の第2代表セル(「名前」、「りんご」、「みかん」、「スイカ」、「いちご」、「メロン」)に含まれる内容データとの類似度を算出する。そして、対応関係特定部130は、例えば、最も高い類似度を備える第2代表セルを、第1代表セル「名前」に対応するセルとして特定する。この場合、第2代表セル「名前」と内容データが一致しているため、類似度は100%となり、対応関係特定部130は、第1代表セル「名前」に対応するセルとして第2代表セル「名前」を特定する。続いて、同様に、対応関係特定部130は、その他の第1代表セル(例えば、「りんご」)に対応する第2代表セルを特定する。
【0046】
図4は、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルの対応関係を示す図である。例えば、矢印401が示すとおり、第1代表セル「名前」と第2代表セル「名前」とが対応付けられている。その他の第1代表セルについても同様である。また、第2代表セル「いちご」は、対応する第1代表セルがないため、非対応セルとなる。
【0047】
続いて、対応関係特定部130は、セルに含まれる内容データの類似度に基づいて、少なくとも1つの第1代表セルの行に含まれる少なくとも1つの第1所属セル、及び少なくとも1つの第1代表セルに対応付けられた少なくとも1つの第2代表セルの行に含まれる少なくとも1つの第2所属セルを対応付ける第2処理を実行する。
【0048】
具体的に、図5を用いて説明する。
【0049】
図5は、少なくとも1つの第1所属セル及び少なくとも1つの第2所属セルの対応関係を示す図である。例えば、矢印501が示すとおり、第1所属セル502a「かきくけこ」と第2所属セル502b「かきくけんこ」とが対応付けられている。その他の第1所属セルについても同様である。
【0050】
なお、対応付けられるセル(代表セル及び所属セル)の行番号又は列番号は、それぞれ異なる行番号又は列番号であってもよい。すなわち、対応関係特定部130は、セルの内容データに相違はなく、セルの位置関係に相違がある第1表データ及び第2表データであっても、互いに異なる位置にあるセル同士を、内容データに基づいて対応付けることができ、後述する差分特定部140がより適切に差分を特定することができる。
【0051】
また、対応関係特定部130は、所定のセルよりも右に位置する複数のセルを含む表データを第1表データ又は第2表データとみなして、第1処理及び第2処理を実行する第3処理を実行することができる。第3処理の具体例を、図6及び図7を用いて説明する。
【0052】
図6は、縦結合セルを含む場合の対応関係特定処理の例を示す図である。
【0053】
第1処理及び第2処理に際して、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルのうち少なくともいずれかのセルが、複数の行にわたって縦に並んだセルを結合した縦結合セルである場合、対応関係特定部130は、縦結合セルよりも右に位置する複数のセルを含む表データを、第1表データ又は第2表データとみなして、第1処理及び第2処理を実行する第3処理を実行する。
【0054】
図6に示すとおり、第1代表セル601a及び第2代表セル601bは縦結合セルである。
【0055】
まず、対応関係特定部130は、第1処理により、第1代表セル601a及び第2代表セル601bを対応付ける。
【0056】
続いて、対応関係特定部130は、縦結合セルよりも右に位置する複数のセル602a及び602bをそれぞれ第1表データ及び第2表データとみなして、第3処理を実行する。すなわち、対応関係特定部130は、まず、所定の列(例えば、左端の列)の「みかん」「オレンジ」を代表セルとして第1処理を行い、続いて、所属セルについて第2処理を行う。
【0057】
なお、対応関係特定部130は、第1処理及び第2処理を行った後に、第3処理を行ってもよい。すなわち、縦結合セルは、第1表データ及び第2表データの代表セルでなくてもよい。
【0058】
第3処理を行わない場合、例えば第1表データにおいて、セル「みかん」は縦結合セル「みかん系」の所属セルと認識されて処理されうるが、セル「オレンジ」は、縦結合セル「みかん系」の所属セルと認識されない場合があり、この場合、セル「オレンジ」は、非対応セルとなる。そして、この場合、第1表データにおけるセル「オレンジ」と第2表データにおけるセル「オレンジ」は互いに対応するセルであるにもかかわらず、両セルは非対応セルとして認識される。これは、例えば、縦結合セルの行番号が、縦に結合されたセルのうち、最も上にあるセルの行番号として管理される場合があるためである。そこで、対応関係特定部130が第3処理を実行することにより、第1表データにおけるセル「オレンジ」と第2表データにおけるセル「オレンジ」は互いに対応付けることができる。
【0059】
続いて、図7は、複数の同一内容セルを含む場合の対応関係特定処理の例を示す図である。
【0060】
第1処理及び第2処理に際して、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルのうち少なくとも一方が、同一の内容データをセルに含む複数の同一内容セルを含む場合、対応関係特定部130は、複数の同一内容セルよりも右に位置する複数のセルを含む表データを、第1表データ又は第2表データとみなして、第1処理及び第2処理を実行する第3処理を実行する。
【0061】
図7に示すとおり、「日付」列には、「1月31日」を内容とする複数の同一内容セルがある。そこで、対応関係特定部130は、複数の同一内容セルよりも右に位置する複数のセル602a及び602bをそれぞれ第1表データ及び第2表データとみなして、第1処理及び第2処理を行う。すなわち、対応関係特定部130は、所定の列(例えば、左端の列)の「にんじん」「トマト」「スイカ」を代表列とみなして、第1処理を行う。続いて、所属セルについて第2処理を行う。
【0062】
なお、対応関係特定部130は、第1処理及び第2処理を行った後に、第3処理を行ってもよい。複数の同一内容セルは、第1表データ及び第2表データの代表セルでなくてもよい。また、同一内容セルに含まれる内容データは、空白であってもよい。すなわち、複数の同一内容セルは、複数の空白セルであってもよい。
【0063】
第3処理を行わない場合、例えば第1表データにおいて、同一内容セルは、上から順番に対応付けられる場合がある。すなわち、この場合、第1処理により、第1表データにおける最初に現れるセル「1月31日」と、第2表データにおける最初に現れるセル「1月31日」とが対応付けられる。そして、この場合は、第2処理により、第1表データにおける最初に現れるセル「1月31日」の所属セル「にんじん」と、第2表データにおける最初に現れるセル「1月31日」の所属セル「スイカ」とが対応付けられる。もっとも、より適切に対応関係を特定するためには、第1表データにおける最初に現れるセル「1月31日」(「にんじん」を所属セルとするセル)と、第2表データにおける2番目に現れるセル「1月31日」(「にんじん」を所属セルとするセル)とを対応付けることが好ましい場合がある。そこで、対応関係特定部130が第3処理を実行することにより、第1表データにおける最初に現れるセル「1月31日」(「にんじん」を所属セルとするセル)と、第2表データにおける2番目に現れるセル「1月31日」(「にんじん」を所属セルとするセル)とを対応付けるこことができる。
【0064】
このように、対応関係特定部130は、互いに構造が異なる表データについて、第1処理、第2処理、及び第3処理により、セルを対応付けることができる。
【0065】
なお、対応関係特定部130は、互いに構造が同じ表データの場合、第1処理、第2処理、及び第3処理により、セルを対応付けてもよく、また、同じ行番号及び列番号を備えるセル同士を対応付けてもよい。
【0066】
また、対応関係特定部130は、互いに構造が異なる表データの場合、互いに構造が異なる表データである旨の情報を含む対応関係データを生成してもよい。これにより、後述する出力部150は、互いに構造が異なる表データである旨の情報をユーザ端末200に出力することができる。
【0067】
また、対応関係特定部130は、対応するセル同士の類似度を示す類似度データを含む対応関係データを生成してもよい。
【0068】
図8は、記憶部110に記憶される対応関係データの例を示す図である。記憶部110に記憶される対応関係データは、例えば、対応関係ID、第1表セル番号、第2表セル番号を含む。
【0069】
対応関係IDは、情報処理システム100において処理される対応関係データを識別する情報である。第1表セル番号及び第2表セル番号は、それぞれ、第1表データ及び第2表データにおけるセル番号を示す情報である。
【0070】
記憶部110に記憶される対応関係データは、さらに、互いに構造が異なる表データである旨の情報を含んでもよい。また、記憶部110に記憶される対応関係データは、さらに、類似度データを含んでもよい。
【0071】
本実施形態の差分特定部140は、対応関係データに基づいて、第1表データ及び第2表データの異なる部分を示す差分を特定する。
【0072】
ここで、差分は、例えば、第1内容データ及び第2内容データの差分であってもよい。すなわち、差分は、互いに対応する第1セル及び第2セルについて、第1内容データ及び第2内容データの相違点であってもよい。
【0073】
また、差分は、非対応セルに含まれる内容データであってもよい。
【0074】
本実施形態の出力部150は、ユーザ端末200に、差分を強調表示して、第1表データ及び第2表データの少なくともいずれかを表示するための表示データを出力する。
【0075】
また、出力部150は、ユーザ端末200に、差分を強調表示して、第1表データ及び第2表データを並べて表示するための表示データを出力することができる。
【0076】
図9は、ユーザ端末200に表示される表示データの例を示す図である。
【0077】
図9に示す画面は、第1文書データを表示する第1領域901a、第2文書データを第1文書データと並べて表示する第2領域901b、第1表データを表示する第3領域902a、第2表データを第1表データと並べて表示する第4領域902bを含む。
【0078】
図9に示すとおり、第1表データ及び第2表データは、互いに構造が異なっており、また、セルに記載されている内容にも相違点がある。
【0079】
対応関係特定部130が、第1表データ及び第2表データのセルの対応関係を特定し、例えば、セル903a「2023年3月15日」とセル903b「2023年4月1日」とを対応付ける。
【0080】
そして、差分特定部140が、セル903a「2023年3月15日」とセル903b「2023年4月1日」との差分を抽出する。この場合、セル903a「2023年3月15日」とセル903b「2023年4月1日」とは、年の数値に相違はないが、月日の数値に相違がある。出力部150は、当該差分を強調表示して表示するための表示データを、ユーザ端末200に出力する。
【0081】
そして、ユーザ端末200は、当該差分を強調表示する。このとき、ユーザ端末200は、出力部150が出力する表示データに基づいて、図9に示すような画面を表示することができる。すなわち、例えば、相違がある月日の数値が強調表示される。
【0082】
差分を強調表示することは、例えば、所定の色、所定の模様、又は所定の透明度等を備える矩形で差分を囲み強調表示すること、又は差分を所定の色で表示することを含む。また、差分の強調表示の態様は、第1表データ及び第2表データで同一の態様であってもよく、異なる態様(例えば、異なる色での表示)であってもよい。なお、差分を強調表示する態様は、図9及び上記の態様に限られない。
【0083】
また、出力部150は、第1文書データ及び第2文書データの両方を表示するための表示データを出力してもよく、また、第1文書データ及び第2文書データのいずれか一方を表示するための表示データを出力してもよい。
【0084】
また、出力部150は、ユーザ端末200におけるユーザの操作に応じて、差分の強調表示を非表示にすることができる表示データを出力してもよい。
【0085】
また、出力部150は、第1表データ及び第2表データの構造が互いに異なる場合に、第1表データ及び第2表データの構造が互いに異なる旨を表示する表示データを出力してもよい。これにより、ユーザは、第1表データ及び第2表データを比較して、互いに構造が異なるかどうかを検査しなくても、第1表データ及び第2表データの構造が互いに異なる旨の表示を参照した上で、必要に応じて第1表データ及び第2表データの具体的な相違点を比較することができ、ユーザの利便性が向上する。
【0086】
また、出力部150は、差分の内容に応じた強調表示をするための表示データを出力してもよい。すなわち、表データにおける重要な項目における差分は、より強調された強調表示をし、表データにおける重要でない項目の差分は、より簡略化された強調表示をするための表示データを出力してもよい。これにより、ユーザは、より簡易に、重要な項目の相違点を把握することができる。
【0087】
なお、この場合において、表データにおける重要な項目か否かの判定は、例えば、情報処理システム100の管理者において事前に定められる設定に基づいて、情報処理システム100が判断してもよい。このとき、情報処理システム100の管理者は、表データの性質、表データを含む文書データの性質に応じて、上記設定をしてもよい。すなわち、例えば、文書データが契約書であり、表データが契約の詳細を示す表データである場合、例えば「契約金額」が、重要な項目として設定されてもよい。
【0088】
また、出力部150は、差分の程度に応じた強調表示をするための表示データを出力してもよい。すなわち、出力部150は、差分に該当する文字数が一定数以上の場合には、より強調された強調表示をするための表示データを出力してもよい。これにより、ユーザは、より簡易に、大きな相違点を把握することができる。
【0089】
情報処理システム100(特に、文書取得部120、対応関係特定部130、差分特定部140、及び出力部150)における表データ関連処理について説明した。表データ関連処理は、例えば、第1文書データが雛形(例えば、ユーザ又は業界で一般的に用いられるフォーマット)の文書データであり、第2文書データが、当該雛形を編集した文書データである場合に、特に有利な効果を奏する。
【0090】
具体的には、情報処理システム100のユーザは、他者(例えば、当該ユーザと文書データをやり取りする、当該ユーザの契約相手)に、例えば、第1表データを含む第1文書データを提供する。当該他者は、第1文書データを編集する。このとき、当該他者は、例えば、第1表データの空欄に所定の内容を記載し、第1表データの構造やセルに記載されている内容を修正した第2表データを含む第2文書データを作成する。そして、当該他者は、第2文書データを情報処理システム100のユーザに提供する。当該ユーザは、情報処理システム100の表データ関連処理を通じて、第1表データ及び第2表データの差分を特定し、当該差分を確認する。これにより、ユーザは、当該他者において編集された内容、すなわち表データの相違点を視覚的に把握することができる。
【0091】
情報処理システム100は、文書データ(第1文書データ及び第2文書データ)が、例えば、契約書等の法的文書である場合、さらに、当該文書データに基づいて、契約類型判断処理、記載内容レビュー処理、及び表示処理を行ってもよい。なお、情報処理システム100は、文書データが法的文書でない場合には、文書の性質に応じて、文書類型判断処理、記載内容レビュー処理、及び表示処理を行ってもよい。
【0092】
具体的に、文書データが法的文書である場合の処理について説明する。
【0093】
情報処理システム100(例えば、特に類型判断処理部)は、文書データに基づいて、文書データが示す契約書の類型を判断し、契約書の類型を示す類型情報を出力する。契約類型は、例えば、「業務委託契約」、「秘密保持契約」、「賃貸借契約」、「寄託契約」であってもよい。情報処理システム100は、例えば、文書データに記載されている内容に基づいて類型情報を出力してもよく、また、文書データに含まれる表データの有無、表データの構造、表データに記載されている内容、若しくは差分特定部140によって特定された差分に基づいて類型情報を出力してもよい。具体的には、例えば、情報処理システム100は、表データに「賃料」に関する項目が含まれている場合に、当該表データを含む文書データの類型を、「賃貸借契約」と判断してもよい。これにより、情報処理システム100は、表データの内容や差分に基づいて、文書データ(例えば、法的文書の文書データ)の類型を判断することができる。
【0094】
情報処理システム100(例えば、特にレビュー処理部)は、文書データに基づいて、文書データの記載内容に対するレビュー処理を行い、レビュー結果を示すレビュー結果情報を出力する。ここで、レビュー処理は、例えば、文書データを含まれている文言(例えば、条項)の内容に対する評価及び修正提案、並びに文書データを含まれていない文言(例えば、条項)の提案であってもよい。また、レビュー処理の基準は、情報処理システム100の管理者において事前に設定された基準(例えば、一般的若しくは理想的な契約書の雛形)、情報処理システム100のユーザが事前に設定した基準(例えば、ユーザが所属する企業や業界における契約書の雛形(いわば、自社基準契約書))、又はそれらの組み合わせであってもよい。
【0095】
情報処理システム100は、例えば、文書データに記載されている内容に基づいてレビュー処理を行ってもよく、また、文書データにおける表データの有無、表データの構造、データに記載されている内容、若しくは差分特定部140によって特定された差分に基づいてレビュー処理を行ってもよい。具体的には、情報処理システム100は、第1表データにおける「賃料」項目が「50,000円/月」であり、第2表データにおける「賃料」項目が「5,000円/月」となっている場合に、「賃料」項目の差分に関して、当該差分がユーザのミスである旨の評価をするレビュー処理、及び、当該ミスを是正することを提案するレビュー処理を行ってもよい。これにより、情報処理システム100は、表データの内容や差分に基づいて、文書データ(例えば、法的文書の文書データ)のレビュー処理を行うことができる。
【0096】
情報処理システム100(例えば、特に表示処理部)は、契約類型判断処理及び記載内容レビュー処理の結果に基づいて、文書データをユーザ端末200に表示する。このとき、情報処理システム100は、文書データと、契約類型判断処理及び記載内容レビュー処理の結果とを同時に表示してもよい。これにより、ユーザは、契約類型判断処理及び記載内容レビュー処理の結果を参照することができる。
【0097】
なお、情報処理システム100における契約類型判断処理、記載内容レビュー処理、及び表示処理は、表データ関連処理とは独立の処理であってもよい。すなわち、契約類型判断処理、記載内容レビュー処理、及び表示処理は、表データ関連処理の前、途中、後に行われてもよく、また、表データ関連処理が行われない場合に行われてもよい。
【0098】
図10は、情報処理システム100における処理の例を示すフローチャートである。
【0099】
まず、文書取得部120が、第1表データを含む第1文書データ及び第2表データを含む第2文書データを取得する(S1001)。
【0100】
対応関係特定部130が、セルに含まれる内容データの類似度に基づいて、第1表データの所定の列に含まれる少なくとも1つの第1代表セル及び第2表データの所定の列に含まれる少なくとも1つの第2代表セルを対応付ける(S1002)。続いて、対応関係特定部130が、セルに含まれる内容データの類似度に基づいて、第1代表セルの行に含まれる少なくとも1つの第1所属セル及び第2代表セルの行に含まれる少なくとも1つの第2所属セルを対応付ける(S1003)。
【0101】
差分特定部140が、対応関係データに基づいて、第1表データ及び第2表データの異なる部分を示す差分を特定する(S1004)。出力部150が、ユーザ端末200に、差分を強調表示して、第1表データ及び第2表データの少なくともいずれかを表示するための表示データを出力する(S1005)。
【0102】
次に、図11を参照して、情報処理システム100をコンピュータ1100により実現する場合のハードウェア構成の一例について説明する。図11は、コンピュータ1100のハードウェア構成の例を示す図である。
【0103】
図11に示すように、コンピュータ1100は、例えば、プロセッサ1101、メモリ1102、記憶装置1103、入力I/F部1104、データI/F部1105、通信I/F部1106、及び表示装置1107を含む。
【0104】
コンピュータ1100は、例えば、サーバコンピュータ、パーソナルコンピュータ(例えば、デスクトップ、ラップトップ、タブレット等)、メディアコンピュータプラットホーム(例えば、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ等)、ハンドヘルドコンピュータデバイス(例えば、PDA、電子メールクライアント等)、あるいは他種のコンピュータ、またはコミュニケーションプラットホームであってもよい。
【0105】
プロセッサ1101は、メモリ1102に記憶されているプログラムを実行することによりコンピュータ1100における各種の処理を制御する制御部である。
【0106】
メモリ1102は、例えばRAM(Random Access Memory)等の記憶媒体である。メモリ1102は、プロセッサ1101によって実行されるプログラムのプログラムコードや、プログラムの実行時に必要となるデータを一時的に記憶する。
【0107】
記憶装置1103は、例えばハードディスクドライブ(HDD)やフラッシュメモリ等の不揮発性の記憶媒体である。記憶装置1103は、オペレーティングシステムや、上記各構成を実現するための各種プログラムを記憶する。
【0108】
入力I/F部1104は、ユーザからの入力を受け付けるためのデバイスである。入力I/F部1104は、例えば、キーボードやマウス、タッチパネル、各種センサ、ウェアラブル・デバイス等である。入力I/F部1104は、例えばUSB(Universal Serial Bus)等のインターフェースを介してコンピュータ1100に接続されてもよい。
【0109】
データI/F部1105は、コンピュータ1100の外部からデータを入力するためのデバイスである。データI/F部1105は、例えば、各種記憶媒体に記憶されているデータを読み取るためのドライブ装置等である。データI/F部1105は、コンピュータ1100の外部に設けられてもよい。データI/F部1105がコンピュータ1100の外部に設けられる場合、データI/F部1105は、例えば、USB等のインターフェースを介してコンピュータ1100に接続される。
【0110】
通信I/F部1106は、コンピュータ1100の外部の装置と有線又は無線により、インターネット等のネットワークを介したデータ通信を行うためのデバイスである。通信I/F部1106は、コンピュータ1100の外部に設けられてもよい。通信I/F部1106がコンピュータ1100の外部に設けられる場合、通信I/F部1106は、例えば、USB等のインターフェースを介してコンピュータ1100に接続される。
【0111】
表示装置1107は、各種情報を表示するためのデバイスである。表示装置1107は、例えば、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ、ウェアラブル・デバイスのディスプレイ等である。表示装置1107は、コンピュータ1100の外部に設けられてもよい。表示装置1107がコンピュータ1100の外部に設けられる場合、表示装置1107は、例えば、ディスプレイケーブル等を介してコンピュータ1100に接続される。また、入力I/F部1104としてタッチパネルが採用される場合には、表示装置1107は、入力I/F部1104と一体化して構成されてもよい。
【0112】
以上、本発明の一実施形態について説明した。情報処理システム100は、第1表データを含む第1文書データ及び第2表データを含む第2文書データを取得し、第1表データに含まれる少なくとも1つの第1セルと、第2表データに含まれる少なくとも1つの第2セルとの対応関係を特定し、第1表データ及び第2表データの差分を特定することができる。これにより、情報処理システム100は、表形式の表データの相違点を特定することができる。
【0113】
また、情報処理システム100は、ユーザ端末200に、差分を強調表示して、第1表データ及び第2表データの少なくともいずれかを表示するための表示データを出力することができる。また、情報処理システム100は、ユーザ端末200に、差分を強調表示して、第1表データ及び第2表データを並べて表示するための表示データを出力することができる。これにより、ユーザは、第1表データ及び第2表データの相違点を視覚的に把握することができる。
【0114】
また、情報処理システム100は、対応関係特定処理として、第1表データ及び第2表データの間で対応しない非対応セルを特定し、非対応セルに含まれる内容データを差分として特定することができる。これにより、情報処理システム100は、非対応セルを相違点として特定することができ、ユーザは、当該非対応セルを相違点として把握することができる。
【0115】
また、情報処理システム100は、第1表データの所定の列に含まれる少なくとも1つの第1代表セル及び第2表データの所定の列に含まれる少なくとも1つの第2代表セルを対応付ける第1処理と、第1代表セルの行に含まれる少なくとも1つの第1所属セル、及び第2代表セルの行に含まれる少なくとも1つの第2所属セルを対応付ける第2処理をすることができる。これにより、情報処理システム100は、第1表データ及び第2表データが互いに構造が異なる表データである場合であっても、セルを対応付けることができる。
【0116】
また、情報処理システム100は、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルのうち少なくともいずれかが複数の行にわたる縦結合セルである場合、当該複数の行の、当該縦結合セルよりも右に位置する複数のセルを含む表データを、第1表データ又は第2表データとみなして、第1処理及び第2処理をする第3処理をすることができる。これにより、情報処理システム100は、第1表データ及び第2表データの少なくともいずれかが縦結合セルを含む表データである場合であっても、セルを対応付けることができる。
【0117】
また、情報処理システム100は、少なくとも1つの第1代表セル及び少なくとも1つの第2代表セルのうち少なくともいずれかが複数の同一内容セルを含む場合、当該複数の同一内容セルよりも右に位置する複数のセルを含む表データを、第1表データ又は第2表データとみなして、第1処理及び第2処理をする第3処理をすることができる。これにより、情報処理システム100は、第1表データ及び第2表データの少なくともいずれかが同一内容セル(例えば、同一の文字列又は空白セル)である場合であっても、セルを対応付けることができる。
【0118】
なお、本発明において、「部」とは、単に物理的手段を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」又は装置が有する機能が2つ以上の物理的手段、装置、又はソフトウェアにより実現されても、2つ以上の「部」又は装置の機能が1つの物理的手段、装置、又はソフトウェアにより実現されてもよい。
【0119】
また、本実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更/改良され得るととともに、本発明にはその等価物も含まれる。
【符号の説明】
【0120】
100 情報処理システム、110 記憶部、120 文書取得部、130 対応関係特定部、140 差分特定部、150 出力部、200 ユーザ端末、1100 コンピュータ、1101 プロセッサ、1102 メモリ、1103 記憶装置、1104 入力I/F部、1105 データI/F部、1106 通信I/F部、1107 表示装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11