JP5842437B2 - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP5842437B2
JP5842437B2 JP2011164019A JP2011164019A JP5842437B2 JP 5842437 B2 JP5842437 B2 JP 5842437B2 JP 2011164019 A JP2011164019 A JP 2011164019A JP 2011164019 A JP2011164019 A JP 2011164019A JP 5842437 B2 JP5842437 B2 JP 5842437B2
Authority
JP
Japan
Prior art keywords
module
selection
data
end point
information processing
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.)
Active
Application number
JP2011164019A
Other languages
English (en)
Other versions
JP2013029910A (ja
Inventor
真之 小林
真之 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2011164019A priority Critical patent/JP5842437B2/ja
Priority to US13/367,961 priority patent/US20130031114A1/en
Publication of JP2013029910A publication Critical patent/JP2013029910A/ja
Application granted granted Critical
Publication of JP5842437B2 publication Critical patent/JP5842437B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines

Description

本発明は、情報処理装置及び情報処理プログラムに関する。
木構造のデータ内の部分木のデータを他の木構造のデータ内に複写する技術がある。
これに関連する技術として、例えば、特許文献1には、構造化文書の編集処理を行う文書処理装置において、構造化文書の構造に対するコピー/ペースト処理を実現し、ユーザインタフェースに優れた文書処理装置を提供することを目的とし、入力部から文書のコピー範囲とコピー指示が入力されると、セレクション管理手段は前記コピー範囲の論理構造を特定し、コピー範囲決定手段は前記論理構造からコピー対象となる論理構造の範囲を決定し、論理構造格納手段は前記論理構造に関する情報をバッファ部に格納し、入力部からペースト位置とペースト指示が入力されると、ペースト位置決定手段は特定された文書の論理構造からペースト対象とすべき論理構造の位置を決定し、ペースト構造構築手段はバッファ部を参照してペーストする領域の完全な木構造を構築し、配置手段はペースト指示入力に対応して前記構築された木構造を前記ペースト位置に配置し、このとき、論理構造に矛盾が生じるような場合、再配置手段は論理構造に矛盾が無いように構造を再配置することが開示されている。
特開平06−110886号公報
本発明は、第1の要素と第2の要素以外の要素を選択することなしに、木構造のデータから部分木を抽出する範囲を指定できる情報処理装置及び情報処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する
請求項の発明は、木構造のデータから第1の要素を選択する第1の選択手段と、前記第1の選択手段によって選択された第1の要素に対応する第2の要素を選択する第2の選択手段と、前記第1の選択手段によって選択された第1の要素と前記第2の選択手段によって選択された第2の要素によって規定される部分木である木構造のデータを他の木構造のデータ内に複写するために抽出する抽出手段を具備し、前記第2の選択手段は、前記第1の選択手段によって選択された第1の要素に対応する第2の要素の候補を、前記木構造のデータ内から抽出し、該抽出した第2の要素の候補が複数ある場合は、操作者の操作に基づいて、前記第2の要素を選択することを特徴とする情報処理装置である。
請求項の発明は、前記第1の選択手段によって選択される第1の要素は、前記抽出手段によって抽出される木構造のデータにおける下位の要素であり、前記第2の選択手段によって選択される第2の要素は、前記抽出手段によって抽出される木構造のデータにおける上位の要素であることを特徴とする請求項1に記載の情報処理装置である。
請求項の発明は、前記第1の選択手段によって選択される第1の要素が複数ある場合、前記第2の選択手段は、該複数の第1の要素に対応する第2の要素の候補のうち、重複する要素を第2の要素の候補として抽出することを特徴とする請求項1又は2に記載の情報処理装置である。
請求項の発明は、前記第2の選択手段は、前記複数の第1の要素のうち、一方の第1の要素が他方の第1の要素の上位にあるか否かを判断し、一方の第1の要素が他方の第1の要素の上位にある場合は、該一方の第1の要素を第1の要素として扱わずに、第2の要素の候補を抽出することを特徴とする請求項に記載の情報処理装置である。
請求項の発明は、コンピュータを、木構造のデータから第1の要素を選択する第1の選択手段と、前記第1の選択手段によって選択された第1の要素に対応する第2の要素を選択する第2の選択手段と、前記第1の選択手段によって選択された第1の要素と前記第2の選択手段によって選択された第2の要素によって規定される部分木である木構造のデータを他の木構造のデータ内に複写するために抽出する抽出手段として機能させるための情報処理プログラムであって、前記第2の選択手段は、前記第1の選択手段によって選択された第1の要素に対応する第2の要素の候補を、前記木構造のデータ内から抽出し、該抽出した第2の要素の候補が複数ある場合は、操作者の操作に基づいて、前記第2の要素を選択するものである、情報処理プログラムである。
請求項1の情報処理装置によれば、第1の要素と第2の要素以外の要素を選択することなしに、木構造のデータから部分木を抽出する範囲を指定することができる。
さらに、請求項の情報処理装置によれば、第2の要素を選択する場合に、候補の要素の中から選択することができる。
請求項の情報処理装置によれば、第1の候補が上位、第2の候補が下位である場合に比較して、候補となる要素の数を減少させることができる。
請求項の情報処理装置によれば、複数の各第1の要素に対応する第2の要素を抽出する場合に比較して、分岐がある部分木を選択する場合に、候補の要素の数を減少させることができる。
請求項4の情報処理装置によれば、第1の要素を選択した場合であっても、第2の要素の候補を不足なく抽出することができる。
請求項の情報処理プログラムによれば、第1の要素と第2の要素意外の要素を選択することなしに、木構造のデータから部分木を抽出する範囲を指定することができる。さらに、第2の要素を選択する場合に、候補の要素の中から選択することができる。
本実施の形態の構成例についての概念的なモジュール構成図である。 本実施の形態の具体的な構成例を示すモジュール構成図である。 本実施の形態による処理例を示すフローチャートである。 本実施の形態による処理例を示すフローチャートである。 構造化文書の例を示す説明図である。 構造化文書の木構造の表示例を示す説明図である。 構造化文書の木構造内で選択された始点と終点の要素の例を示す説明図である。 終点を選択するためのユーザインタフェースの例を示す説明図である。 構造化文書の木構造内で選択された始点と終点の要素の例を示す説明図である。 終点を選択するためのユーザインタフェースの例を示す説明図である。 構造化文書の木構造内で選択された始点と終点の要素の例を示す説明図である。 終点を選択するためのユーザインタフェースの例を示す説明図である。 要素名が同じである場合の構造化文書の表示例を示す説明図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
以下、木構造のデータとして、構造化文書を主に例示して説明する。
本実施の形態である情報処理装置は、木構造のデータ内の部分木のデータを他の木構造のデータ内に複写するために、その部分木のデータを抽出するものであって、図1の例に示すように、選択(A)モジュール110、選択(B)モジュール120、抽出モジュール150、操作受付モジュール160を有している。選択(B)モジュール120は、選択候補抽出モジュール130、コピー範囲決定モジュール140を有している。
選択(A)モジュール110は、選択(B)モジュール120と接続されている。選択(A)モジュール110は、木構造のデータから第1の要素を選択する。木構造とは、情報を節データ(以下、ノードともいう。節とは、木構造のデータを構成する結節点である)として配置したデータ構造であって、ルート(根)ノード以外の各ノードには一つの親ノードがあり、かつ、ルートノードが一つしかないものをいう。木構造のデータとしては、例えば、木構造文書のデータ等が該当する。第1の要素とは、木構造のデータを構成しているノードをいい、操作者の操作によって選択されたコピーしようとしている部分木の端点となるノード(ルートノード又はリーフノード)をいう。なお、第1の要素が部分木におけるリーフノードの場合は、第1の要素の数は複数であってもよい。コピー対象となる部分木は1つであるので、第1の要素が部分木におけるルートノードの場合は1つである。第1の要素は、操作者の選択操作における始点となるノードである。
選択(B)モジュール120は、選択(A)モジュール110、抽出モジュール150と接続されている。選択(B)モジュール120は、選択(A)モジュール110によって選択された第1の要素に対応する第2の要素を選択する。第2の要素とは、第1の要素が含まれている木構造のデータを構成しているノードをいい、操作者の操作によって選択されたコピーしようとしている部分木の端点となるノード(ルートノード又はリーフノード)をいう。第1の要素が部分木におけるルートノードである場合は第2の要素は部分木におけるリーフノードとなり、第1の要素が部分木におけるリーフノードである場合は第2の要素は部分木におけるルートノードとなる。なお、第2の要素が部分木におけるリーフノードの場合は、第2の要素の数は複数であってもよい。コピー対象となる部分木は1つであるので、第2の要素が部分木におけるルートノードの場合は1つである。第2の要素は、操作者の選択操作における終点となるノードである。
選択候補抽出モジュール130は、選択(A)モジュール110によって選択された第1の要素に対応する第2の要素の候補を、木構造のデータ内から抽出する。
コピー範囲決定モジュール140は、その抽出した第2の要素の候補が複数ある場合は、操作者の操作に基づいて、第2の要素を選択する。この選択によって、コピー範囲である木構造のデータを決定したことになる。例えば、複数の第2の要素の候補を表示装置に表示し、その表示された第2の要素の候補のいずれかを選択させる。
選択候補抽出モジュール130によって抽出した第2の要素の候補が1つである場合は、操作者による第2の要素の選択が不要となる。したがって、操作者による第1の要素の選択操作なく、第1の要素を選択することとなる。ただし、その場合であっても、第2の要素の候補が複数ある場合と同様に、確認の意味で選択させるようにしてもよいし、その1つの第2の要素を提示し(部分木を提示することであってもよい)、そのノードを第2の要素として選択することになることを確認させるようにしてもよい。例えば、第1の要素として部分木のリーフノードを選択する場合にあっては、第2の要素の候補としてルートノードのみがある場合がある。つまり、第1の要素が全体の木構造のルートノードの直下のノードである場合又は第1の要素が全体の木構造のルートノードである場合である。また、第1の要素として部分木のルートノードを選択する場合にあっては、第2の要素の候補として全体の木構造のリーフノードのみがある場合がある。つまり、第1の要素が全体の木構造のリーフノードの直上のノードである場合又は第1の要素が全体の木構造のリーフノードである場合である。
選択(A)モジュール110によって選択される第1の要素は、抽出モジュール150によって抽出される木構造のデータにおける下位の要素であり、選択(B)モジュール120によって選択される第2の要素は、抽出モジュール150によって抽出される木構造のデータにおける上位の要素である。つまり、第1の要素が部分木におけるリーフノードであり、第2の要素は部分木におけるルートノードとなる場合である。
選択(A)モジュール110によって選択される第1の要素が複数ある場合、選択候補抽出モジュール130は、その複数の第1の要素に対応する第2の要素の候補のうち、重複する要素を第2の要素の候補として抽出する。重複する要素とは、一方の第1の要素に対応する要素であって、他方の第1の要素に対応する要素でもある要素をいう。当然のことながら、第1の要素が3つ以上である場合は、その3つ以上の第1の要素のいずれにも対応している要素のことである。
選択候補抽出モジュール130は、複数の第1の要素のうち、一方の第1の要素が他方の第1の要素の上位にあるか否かを判断し、一方の第1の要素が他方の第1の要素の上位にある場合は、その一方の第1の要素を第1の要素として扱わずに、第2の要素の候補を抽出する。ここで、「一方の第1の要素が他方の第1の要素の上位にある場合」とは、他方の第1の要素から上位方向へたどった場合に、分岐があった場合はいったん下位方向へ辿ることなしに、一方の第1の要素に行き着く場合のことをいう。つまり、他方の第1の要素から一方の第1の要素へ直線的に辿れることをいい、一方の第1の要素は、部分木においてリーフノードとはならない場合のことをいう。逆に、一方の第1の要素が位置的には他方の第1の要素の上位にある場合であっても、両者が部分木においてリーフノードである場合は、「一方の第1の要素が他方の第1の要素の上位にある場合」には含まれない。つまり、他方の第1の要素から上位方向へたどった場合に、分岐があった場合にいったん下位方向(リーフノード方向)へ辿り、いままで辿ってきた分岐のノードに戻ることなしに、一方の第1の要素に行き着く場合は、「一方の第1の要素が他方の第1の要素の上位にある場合」には含まれない。
抽出モジュール150は、選択(B)モジュール120と接続されている。抽出モジュール150は、選択(A)モジュール110によって選択された第1の要素と選択(B)モジュール120によって選択された第2の要素によって規定される部分木である木構造のデータを他の木構造のデータ内に複写するために抽出する。部分木とは、コピー元の木構造の一部分を構成しているものであり、コピー対象となる木構造のデータをいう。これは、第1の要素と第2の要素によって規定される。つまり、ルートノードとリーフノードによって規定される。また、リーフノードは複数あってもよい。
操作受付モジュール160は、本実施の形態である情報処理装置において操作者の操作を受け付け、選択(A)モジュール110、選択(B)モジュール120へその操作を渡す。操作受付モジュール160が受け付ける操作としては、少なくとも要素を選択する操作と、コピー操作が含まれる。例えば、コピー操作が指定された後に、木構造のデータから第1の要素と第2の要素が選択されるような一連の操作であってもよいし、木構造のデータから第1の要素と第2の要素が選択された後に、コピー操作が指定されるような一連の操作であってもよい。また、操作受付モジュール160が受け付ける操作として、第2の要素が複数あった場合に、そのいずれかを選択する操作であってもよい。具体的には、操作受付モジュール160は、マウス、キーボード、タッチパネル等に対して、操作者の操作が行われ、その操作を受け付ける。
図2は、本実施の形態の具体的な構成例を示すモジュール構成図である。
この具体的な構成例では、選択要素判定モジュール210、終点要素判定モジュール220、アプリケーションモジュール230、コピー操作受付モジュール240、コピー範囲決定モジュール250、バッファモジュール260を有している。例えば、構造化文書において、コピーの始点(開始要素)、終点(終了要素)を指定し、その始点、終点によって構成される部分木(始点、終点を結ぶ線上にある要素で構成される部分木)をコピー範囲として抽出する。なお、始点は複数あってもよい、その場合、複数の始点と終点によって構成される部分木がコピー対象となる。
選択要素判定モジュール210は、終点要素判定モジュール220と接続されている。選択要素判定モジュール210は、アプリケーション、システム上で、現在、操作者が選択している要素を判定する。その選択している要素が、前述した始点の要素になる。
終点要素判定モジュール220は、選択要素判定モジュール210、アプリケーションモジュール230と接続されている。終点要素判定モジュール220は、選択要素判定モジュール210で判定された、選択されている要素の上位要素を終点要素の候補として判定し、終点要素の候補をアプリケーションモジュール230に通知する。選択要素判定モジュール210で、要素が複数選択されていると判定された場合は、それらの要素の上位要素の共通要素を候補として判定する。
アプリケーションモジュール230は、終点要素判定モジュール220、コピー操作受付モジュール240と接続されている。アプリケーションモジュール230は、終点要素判定モジュール220から通知された終点要素の候補を表示装置に表示する。
コピー操作受付モジュール240は、アプリケーションモジュール230、コピー範囲決定モジュール250と接続されている。コピー操作受付モジュール240は、アプリケーション、システム上で、操作者によるコピー操作を受け付け、コピー範囲決定モジュール250にコピー範囲の決定を依頼する。その際には、操作者による操作によって終点要素が指定されている。つまり、終点要素を指定することがコピー操作となる。
コピー範囲決定モジュール250は、コピー操作受付モジュール240、バッファモジュール260と接続されている。コピー範囲決定モジュール250は、選択要素、終点要素からコピー範囲の部分木を生成する。
バッファモジュール260は、コピー範囲決定モジュール250と接続されている。バッファモジュール260は、コピー範囲決定モジュール250で生成された部分木をコピー内容として保存する。
選択要素判定モジュール210は図1に例示した選択(A)モジュール110に主に該当し、終点要素判定モジュール220は図1に例示した選択候補抽出モジュール130に主に該当し、アプリケーションモジュール230とコピー操作受付モジュール240は図1に例示した操作受付モジュール160に主に該当し、コピー範囲決定モジュール250は図1に例示したコピー範囲決定モジュール140と抽出モジュール150に主に該当する。また、バッファモジュール260は、図1に例示した抽出モジュール150が抽出した部分木を記憶する。
終点の候補を決定するまでのフローチャートと、その後、ユーザが指定した終点要素によってコピー範囲を決定するまでのフローチャートに分けて説明する。図3に終点の候補を決定するまでのフローチャートを示し、図4に指定された終点からコピー範囲を決定するまでのフローチャートを示す。なお、これらのフローチャートは、始点が下位(部分木におけるリーフノード)にあり、終点が上位(部分木におけるルートノード)にある場合を示しているが、逆の場合、つまり、始点が上位(部分木におけるルートノード)にあり、終点が下位(部分木におけるリーフノード)にある場合には、上位を下位と読み替えることによって対応できる。ただし、下位要素を抽出するとは、分岐がある場合があるが、その場合はその分岐をスタックに記憶して、下位要素を抽出するようにすればよい。
図3は、本実施の形態による処理例を示すフローチャートである。
ステップS302では、選択候補抽出モジュール130が、選択している要素は1個か否かを判断し、1個ならばステップS304へ進み、それ以外の場合はステップS306へ進む。
ステップS304では、選択候補抽出モジュール130が、選択されている要素の上位要素を終点の候補として抽出する。
ステップS306では、選択候補抽出モジュール130が、ステップS314までの処理を、選択している要素数の回数だけ行う。
ステップS308では、選択候補抽出モジュール130が、選択されている要素の上位要素を抽出する。ここで抽出する上位要素は、下位に辿ることなく、上方向(ルートノードの方向)へ辿った場合のノードである。
ステップS310では、選択候補抽出モジュール130が、他の選択している要素が含まれているか否かを判断し、含まれている場合はステップS312へ進み、それ以外の場合はステップS314へ進む。つまり、抽出した上位要素内に選択(A)モジュール110によって選択された要素が含まれている場合(言い換えると、その選択された要素がコピー範囲である部分木においてルーフノードになっていない場合)は、ステップS312へ進むことになる。
ステップS312では、選択候補抽出モジュール130が、含まれている要素は、選択している要素から除外する。したがって、ステップS308で既に上位要素を抽出している場合は、その抽出した上位要素も除外する。未だステップS308で上位要素を抽出していない場合は、以後、除外した要素の上位要素は抽出せず、ステップS306でのループ回数も1回減少する。
ステップS316では、選択候補抽出モジュール130が、共通する要素を終点の候補として抽出する。選択している要素が複数ある場合であって、ステップS308でその各要素に対して上位要素を抽出しているので、それらの上位要素のうち共通しているもの(いわゆる論理積)を抽出する。
ステップS318では、コピー範囲決定モジュール140が、候補内から終点を決定する。操作者の操作によって、複数ある終点の候補内から終点が選択される。
図4は、本実施の形態(主に抽出モジュール150による処理例)による処理例を示すフローチャートである。
ステップS402では、操作者が指定した終点要素を抽出する。
ステップS404では、始点要素を抽出する。
ステップS406では、始点要素、終点要素から部分木を生成する。
ステップS408では、コピーバッファに生成した内容を保存する。
図5は、構造化文書の例を示す説明図である。図6は、図5に例示した構造化文書の木構造の表示例を示す説明図である。この構造化文書から要素を選択し、コピー範囲を決定するものとする。選択している要素をコピー範囲の始点とし、その要素の上位要素の中から終点の要素を指定する。その始点、終点によって構成される部分木をコピー範囲とする。なお、図6に例示のものは表示装置に表示し、そのノードに対する選択等の操作を操作受付モジュール160が受け付ける。
この木構造全体のルートノードであるBOOK要素602の下位にH1要素604がある。H1要素604の下位にFRONT要素606、TITLE要素614、DOCITEM要素618がある。FRONT要素606の下位にDOCINFO要素608がある。DOCINFO要素608の下位にDOCDATE要素610、DOCNUM要素612がある。TITLE要素614の下位にPARA要素616がある。DOCITEM要素618の下位にPARA要素620、PARA要素622、PARA要素624がある。
以下に、「始点、終点がそれぞれ1個の場合」、「始点が1個、終点が2個の場合」、「始点が2個、終点が1個であり、始点、終点で構成する部分木の中に他の終点がある場合」の例を説明する。
図7は、構造化文書の木構造内で選択された始点と終点の要素の例(「始点、終点がそれぞれ1個の場合」の例)を示す説明図である。
PARA要素616を始点、H1要素604を終点としている。この場合、PARA要素616とH1要素604間で構成される部分木がコピー範囲700になる。つまり、コピー範囲700には、H1要素604、TITLE要素614、PARA要素616が含まれる。そして、終点として、始点(PARA要素616)の要素の上位要素(図7の例では、TITLE要素614、H1要素604、BOOK要素602)が候補になり、その中から終点を決定することになる。
図8は、終点を選択するためのユーザインタフェースの例を示す説明図である。図6の例と同様に、構造化文書がツリービューとして表示されている(以下の例においても同様)。
この場合、始点の要素(PARA要素616)が操作者の操作によって選択され、[上位コピー]メニュー810を表示し、[上位コピー]メニュー810が操作者の操作によって選択されると、終点となる要素の候補である3つの選択肢812〜816を表示し、選択肢814が操作者の操作によって終点の要素として選択されたことを示している。この操作により、図7に例示の部分木であるコピー範囲700として決定することになる。
図3に例示のフローチャートでは、ステップS302でYesの処理を行った場合の例となる。
図9は、構造化文書の木構造内で選択された始点と終点の要素の例(「始点が1個、終点が2個の場合」の例)を示す説明図である。
この場合、DOCINFO要素608とPARA要素616を始点、BOOK要素602を終点としている。この場合、PARA要素616、DOCINFO要素608、BOOK要素602間で構成される部分木がコピー範囲900になる。つまり、コピー範囲900には、BOOK要素602、H1要素604、FRONT要素606、DOCINFO要素608、TITLE要素614、PARA要素616が含まれる。そして、終点として、各始点の要素(PARA要素616、DOCINFO要素608)の上位要素の共通要素(図9の例では、H1要素604、BOOK要素602)が候補になり、その中から終点を決定することになる。
図10は、終点を選択するためのユーザインタフェースの例を示す説明図である。
この場合、始点の要素(PARA要素616、DOCINFO要素608)が操作者の操作によって選択され、[上位コピー]メニュー1010を表示し、[上位コピー]メニュー1010が操作者の操作によって選択されると、終点となる要素の候補である2つの選択肢1012、1014を表示し、選択肢1012が操作者の操作によって終点の要素として選択されたことを示している。この操作により、図9に例示の部分木であるコピー範囲900として決定することになる。
図3に例示のフローチャートでは、ステップS302でNoの処理を行い、ステップS310でNoの処理を行った場合の例となる。
図11は、構造化文書の木構造内で選択された始点と終点の要素の例(「始点が2個、終点が1個であり、始点、終点で構成する部分木の中に他の終点がある場合」の例)を示す説明図である。
この場合、TITLE要素614とPARA要素616を始点、BOOK要素602を終点としている。この例では、TITLE要素614はPARA要素616とBOOK要素602によって構成される部分木の内部にあるため、このTITLE要素614は始点として除外する。そのため、この場合、PARA要素616、BOOK要素602間で構成される部分木がコピー範囲1100になる。つまり、コピー範囲1100には、BOOK要素602、H1要素604、TITLE要素614、PARA要素616が含まれる。そして、終点として、始点の要素(PARA要素616)の上位要素(図11の例ではTITLE要素614、H1要素604、BOOK要素602)が候補になり、その中から終点を決定することになる。なお、TITLE要素614を誤って始点として選択したとして、この処理を行っているものである。
図12は、終点を選択するためのユーザインタフェースの例を示す説明図である。
この場合、始点の要素(PARA要素616、TITLE要素614)を選択され、[上位コピー]メニュー1210を表示し、[上位コピー]メニュー1210が操作者の操作によって選択されると、終点となる要素の候補である3つの選択肢1212〜1216を表示し、選択肢1212が操作者の操作によって終点の要素として選択されたことを示している。この操作により、図11に例示の部分木であるコピー範囲1100として決定することになる。
図3に例示のフローチャートでは、ステップS302でNoの処理を行い、ステップS310でYesの処理を行った場合の例となる。
図13は、要素名が同じである場合の構造化文書の表示例を示す説明図である。
終点の候補に同じ名前の要素が複数存在する場合は、終点の候補として表示するものとして、前述の例のような要素名である場合、操作者にとっては区別がつかなくなることから、各要素の属性で要素を表示すればよい。図13の例では、各要素の要素名が同じPARAであるが、ID属性を判別するためのキーとしている。
この場合、始点の要素(PARA要素(ID=00008)1316)が操作者の操作によって選択され、[上位コピー]メニュー1330を表示し、[上位コピー]メニュー1330が操作者の操作によって選択されると、終点となる要素の候補である3つの選択肢1332〜1336を要素名と属性で表示し、選択肢1332が操作者の操作によって終点の要素として選択されたことを示している。この操作により、図13に例示の部分木であるコピー範囲1300として決定することになる。つまり、コピー範囲1300には、PARA要素(ID=00001)1302、PARA要素(ID=00002)1304、PARA要素(ID=00007)1314、PARA要素(ID=00008)1316が含まれる。当然のことながら、ツリービューとして表示している各要素も要素名と属性で表示する。
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図14に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。つまり、具体例として、処理部(演算部)としてCPU1401を用い、記憶装置としてRAM1402、ROM1403、HD1404を用いている。HD1404として、例えばハードディスクを用いてもよい。選択(A)モジュール110、選択(B)モジュール120、選択候補抽出モジュール130、コピー範囲決定モジュール140、抽出モジュール150、操作受付モジュール160、選択要素判定モジュール210、終点要素判定モジュール220、アプリケーションモジュール230、コピー操作受付モジュール240、コピー範囲決定モジュール250等のプログラムを実行するCPU1401と、そのプログラムやデータを記憶するRAM1402と、本コンピュータを起動するためのプログラム等が格納されているROM1403と、補助記憶装置であるHD1404と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置1406と、CRT、液晶ディスプレイ等の出力装置1405と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース1407、そして、それらをつないでデータのやりとりをするためのバス1408により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図14に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図14に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図14に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、各モジュールの処理内容として背景技術で説明した技術を採用してもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
110…選択(A)モジュール
120…選択(B)モジュール
130…選択候補抽出モジュール
140…コピー範囲決定モジュール
150…抽出モジュール
160…操作受付モジュール
210…選択要素判定モジュール
220…終点要素判定モジュール
230…アプリケーションモジュール
240…コピー操作受付モジュール
250…コピー範囲決定モジュール
260…バッファモジュール

Claims (5)

  1. 木構造のデータから第1の要素を選択する第1の選択手段と、
    前記第1の選択手段によって選択された第1の要素に対応する第2の要素を選択する第2の選択手段と、
    前記第1の選択手段によって選択された第1の要素と前記第2の選択手段によって選択された第2の要素によって規定される部分木である木構造のデータを他の木構造のデータ内に複写するために抽出する抽出手段とを具備し、
    前記第2の選択手段は、前記第1の選択手段によって選択された第1の要素に対応する第2の要素の候補を、前記木構造のデータ内から抽出し、該抽出した第2の要素の候補が複数ある場合は、操作者の操作に基づいて、前記第2の要素を選択することを特徴とする情報処理装置。
  2. 前記第1の選択手段によって選択される第1の要素は、前記抽出手段によって抽出される木構造のデータにおける下位の要素であり、前記第2の選択手段によって選択される第2の要素は、前記抽出手段によって抽出される木構造のデータにおける上位の要素であることを特徴とする請求項に記載の情報処理装置。
  3. 前記第1の選択手段によって選択される第1の要素が複数ある場合、前記第2の選択手段は、該複数の第1の要素に対応する第2の要素の候補のうち、重複する要素を第2の要素の候補として抽出することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記第2の選択手段は、前記複数の第1の要素のうち、一方の第1の要素が他方の第1の要素の上位にあるか否かを判断し、一方の第1の要素が他方の第1の要素の上位にある場合は、該一方の第1の要素を第1の要素として扱わずに、第2の要素の候補を抽出することを特徴とする請求項に記載の情報処理装置。
  5. コンピュータを、
    木構造のデータから第1の要素を選択する第1の選択手段と、
    前記第1の選択手段によって選択された第1の要素に対応する第2の要素を選択する第2の選択手段と、
    前記第1の選択手段によって選択された第1の要素と前記第2の選択手段によって選択された第2の要素によって規定される部分木である木構造のデータを他の木構造のデータ内に複写するために抽出する抽出手段として機能させるための情報処理プログラムであって、
    前記第2の選択手段は、前記第1の選択手段によって選択された第1の要素に対応する第2の要素の候補を、前記木構造のデータ内から抽出し、該抽出した第2の要素の候補が複数ある場合は、操作者の操作に基づいて、前記第2の要素を選択するものである、
    情報処理プログラム。
JP2011164019A 2011-07-27 2011-07-27 情報処理装置及び情報処理プログラム Active JP5842437B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011164019A JP5842437B2 (ja) 2011-07-27 2011-07-27 情報処理装置及び情報処理プログラム
US13/367,961 US20130031114A1 (en) 2011-07-27 2012-02-07 Information processing apparatus, information processing method, and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011164019A JP5842437B2 (ja) 2011-07-27 2011-07-27 情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2013029910A JP2013029910A (ja) 2013-02-07
JP5842437B2 true JP5842437B2 (ja) 2016-01-13

Family

ID=47598140

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011164019A Active JP5842437B2 (ja) 2011-07-27 2011-07-27 情報処理装置及び情報処理プログラム

Country Status (2)

Country Link
US (1) US20130031114A1 (ja)
JP (1) JP5842437B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10984017B1 (en) * 2017-11-27 2021-04-20 Amazon Technologies, Inc. Multi-tiered data replication

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01243113A (ja) * 1988-03-25 1989-09-27 Hitachi Ltd 木構造データの表示選択方法
JP2534360B2 (ja) * 1988-09-26 1996-09-11 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 接続方法、ノ―ド接続方法、デ―タ処理方法、及び木内にノ―ドを挿入する方法
JPH06110886A (ja) * 1992-09-30 1994-04-22 Fuji Xerox Co Ltd 論理構造を有する文書のコピーペースト処理装置
US5812135A (en) * 1996-11-05 1998-09-22 International Business Machines Corporation Reorganization of nodes in a partial view of hierarchical information
JP3879350B2 (ja) * 2000-01-25 2007-02-14 富士ゼロックス株式会社 構造化文書処理システム及び構造化文書処理方法
JP2002007384A (ja) * 2000-06-20 2002-01-11 Dainippon Screen Mfg Co Ltd 構造化文書の変換
US7120868B2 (en) * 2002-05-30 2006-10-10 Microsoft Corp. System and method for adaptive document layout via manifold content
US7703009B2 (en) * 2001-04-09 2010-04-20 Huang Evan S Extensible stylesheet designs using meta-tag information
US7181456B2 (en) * 2002-08-20 2007-02-20 Microsoft Corporation Process description language
US7069504B2 (en) * 2002-09-19 2006-06-27 International Business Machines Corporation Conversion processing for XML to XML document transformation
US7672958B2 (en) * 2005-01-14 2010-03-02 Im2, Inc. Method and system to identify records that relate to a pre-defined context in a data set

Also Published As

Publication number Publication date
JP2013029910A (ja) 2013-02-07
US20130031114A1 (en) 2013-01-31

Similar Documents

Publication Publication Date Title
JP2018028725A (ja) 情報処理装置及び情報処理プログラム
JP2018045372A (ja) 情報処理装置及び情報処理プログラム
CN103617209A (zh) 一种移动终端的文件管理方法及装置
JP2015194808A (ja) 情報処理装置及び情報処理プログラム
JP4259588B2 (ja) 情報処理システム及び情報処理プログラム
US20120036583A1 (en) Computer readable medium storing program, information processing apparatus, and method
JP5565130B2 (ja) 縮小画像生成装置及びプログラム
JP4636144B2 (ja) 情報管理プログラム及び情報管理システム
JP5842437B2 (ja) 情報処理装置及び情報処理プログラム
JP5428816B2 (ja) 画像形成装置、データ制御方法、及びプログラム
JP5910216B2 (ja) 情報処理装置及び情報処理プログラム
JP2021101319A (ja) 情報処理装置及び情報処理プログラム
JP5970886B2 (ja) 情報処理装置及び情報処理プログラム
JP5440043B2 (ja) 画像処理装置及び画像処理プログラム
US11316992B2 (en) Information processing apparatus and non-transitory computer readable medium
JP6123519B2 (ja) 情報処理装置及び情報処理プログラム
JP5929356B2 (ja) 情報処理装置及び情報処理プログラム
JP6421568B2 (ja) 情報処理装置及び情報処理プログラム
US8570610B2 (en) Information processing apparatus, information processing method and computer readable medium for designating a region of reduced document on display and creating image corresponding to the designated region
JP2009223563A (ja) 表示処理装置、表示処理方法、表示処理プログラムおよび記録媒体
JP5194851B2 (ja) 情報処理装置及び情報処理プログラム
JP6497087B2 (ja) 情報処理装置及び情報処理プログラム
JP5760868B2 (ja) 情報処理装置及び情報処理プログラム
US11206336B2 (en) Information processing apparatus, method, and non-transitory computer readable medium
JP2013152580A (ja) コード生成装置及びコード生成方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150316

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151020

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151102

R150 Certificate of patent or registration of utility model

Ref document number: 5842437

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350