JP5760868B2 - 情報処理装置及び情報処理プログラム - Google Patents
情報処理装置及び情報処理プログラム Download PDFInfo
- Publication number
- JP5760868B2 JP5760868B2 JP2011191588A JP2011191588A JP5760868B2 JP 5760868 B2 JP5760868 B2 JP 5760868B2 JP 2011191588 A JP2011191588 A JP 2011191588A JP 2011191588 A JP2011191588 A JP 2011191588A JP 5760868 B2 JP5760868 B2 JP 5760868B2
- Authority
- JP
- Japan
- Prior art keywords
- document
- character string
- definition
- text
- module
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/143—Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Description
請求項1の発明は、文字列を選択する選択手段と、前記選択手段によって選択された文字列に対して、文字列を挿入する文書がしたがう文書構造定義内で定義された要素の内、第1の要素を指定する要素指定手段と、前記選択手段によって選択された文字列を挿入する前記文書内の位置である挿入先を指定する挿入先指定手段と、前記要素指定手段によって指定された第1の要素は文字列を要素として有することができるか否かを前記文書構造定義内の定義に基づいて判断し、できないと判断した場合は、文字列を要素として有することができる該第1の要素の下位要素である第2の要素を該文書構造定義内から探索し、前記選択手段によって選択された文字列を有する該第2の要素を生成し、第1の要素と該第2の要素の間に必要となる要素を該文書構造定義内から探索し、該必要となる要素を該第1の要素と該第2の要素の間に補完することによって挿入要素を生成し、該挿入要素を前記挿入先指定手段によって指定された挿入先に移動する移動手段を具備することを特徴とする情報処理装置である。
ことを特徴とする請求項2に記載の情報処理装置である。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
本実施の形態は、例えばXML等の構造化文書を編集又は作成するために利用する情報処理装置である。
まず、構造化文書を対象としたエディター(文書作成装置)について説明する。
構造化文書作成エディターにおいては、構造化文書に対して表示形式の指定情報であるスタイルシートを適用して表示することが行われる。その表示領域においては(以下、スタイル表示領域ともいう)、通常のエディターと同様の表示方法がなされることが一般的である。
スタイル表示領域においては、通常のエディターと同様の表示であるが、一般的には、文字列のある範囲を選択して、コピー/貼り付けのような操作を行うことはできないようにしている。これは、操作者の選択する範囲と文書構造とが必ずしも一致しないためである。本実施の形態は、選択した文字列に要素を指定して、その文字列のコピー/貼り付け(挿入)を行うようにしている。
さらに、操作受付モジュール130は、操作者の操作によって要素が指定された場合に、その指定された要素に下位要素が複数ある場合は、その下位要素を選択可能に表示し、操作者の操作によって指定された下位要素を第1の要素(指定された要素)とするようにしてもよい。詳細については、図25、図26を用いて後述する。
要素挿入モジュール146は、選択範囲取得モジュール142によって取得された文字列を挿入する文書内の位置である挿入先を取得する。
なお、要素取得モジュール144によって取得された第1の要素は文字列を要素として有することができるか否かを判断する際に、できると判断した場合は、その第1の要素を挿入要素とする。例えば、前述の例では、文字列の要素として「text」(第1の要素)が指定された場合、図3に例示のスキーマ300では、「text」は文字列を有することができるので、「かきくけこ」という文字列を有する「text」の要素を生成する。つまり、「<text>かきくけこ</text>」を生成する。
なお、第1の要素と第2の要素の間に必要となる要素をスキーマ内から探索した結果、必要となる要素がない場合、つまり、第2の要素の直下が第1の要素であることが文書構造定義内の定義として許されている場合、その第2の要素をそのまま挿入要素とする。例えば、第1の要素が「li」であり、第2の要素が「text」の場合は、「li」と「text」の間には他に要素が必要ないので、挿入要素として「<li><text>かきくけこ</text></li>」を生成することになる。
そして、要素移動モジュール150は、構造検証モジュール148によって違反していると判断された場合は、挿入先の位置の前方又は後方で挿入要素を挿入可能な位置を探索し、その挿入可能な位置に挿入要素を挿入する。例えば、前述の例では、挿入先の位置から前方又は後方に向けて、「<list><li><text>かきくけこ</text></li></list>」を挿入できる位置を探索して、探索できた場合は、その位置に挿入する。
そして、構造検証モジュール148は、要素移動モジュール150によって挿入要素(第2の要素の上位要素を含む挿入要素)を要素挿入モジュール146によって取得された挿入先に移動することが、スキーマ内での定義の違反になるか否かを判断する。その後は、要素移動モジュール150による挿入処理、構造検証モジュール148による判断処理が繰り返されることになる。
なお、挿入できる位置を探索できなかった場合は、挿入できない旨を提示する。例えば、エラーの旨を表示装置に表示する。
処理の概要としては、構造化文書又は平文の文書に対して、操作者の操作によって、文字列が選択され、次に挿入したい構造が選択され、挿入したい位置(以下の例では、選択した文字列の位置)が選択される。本実施の形態は、操作者が選択した文字列を要素値として認識し、挿入した要素と要素値の間に必要な要素をスキーマ300に沿って挿入し、そのスキーマ構造にしたがった構造化の支援を行う。また、挿入した要素が文書内でスキーマ違反にならない位置に、要素を移動する。
ステップS204では、操作受付モジュール130が、文書構造定義(スキーマ)に定義されている要素の一覧を表示する。
ステップS206では、要素取得モジュール144が、操作者が選択した要素(要素Aとする、前述の第1の要素に該当する)を取得する。さらに、要素挿入モジュール146が、ステップS202で取得した文字列を挿入する位置(挿入位置)を取得する。
ステップS210では、要素移動モジュール150が、要素Aは文字列という要素値を有することができるか否かを判断し、できる場合はステップS218へ進み、それ以外の場合はステップS212へ進む。
ステップS212では、要素移動モジュール150が、文字列という要素値を有することが可能な要素Aの下位要素(要素B)があるか否かを判断し、ある場合はステップS214へ進み、それ以外の場合はステップS228へ進む。
ステップS214では、要素移動モジュール150が、文字列をくくる形で要素Bを挿入する。
ステップS216では、要素移動モジュール150が、要素Aと要素Bの間に必要な要素をうめる。そして、ステップS218へ進む。
ステップS220では、スキーマ違反が発生している要素を挿入先の前・後に移動できないか否かを判断し、移動できない場合はステップS224へ進み、それ以外の場合はステップS222へ進む。
ステップS222では、要素移動モジュール150が、(下位要素も含め)要素の位置を前/後に移動する。そして、ステップS218へ戻る。
ステップS224では、要素移動モジュール150が、上位要素を挿入可能であるか否かを判断し、可能である場合はステップS226へ進み、それ以外の場合はステップS228へ進む。
ステップS226では、要素移動モジュール150が、上位要素を挿入する。そして、ステップS218へ戻る。
ステップS228では、構造化文書作成支援モジュール140が、要素の挿入を取り消す。そして、処理を終了する(ステップS299)。
<具体例1>
まず、文書構造定義記憶モジュール120内に記憶されているスキーマの例を示す。図3は、スキーマ300の例を示す説明図である。スキーマ300内には、「book」、「article」、「title」、「subtitle」、「text」、「paragraph」等の要素が定義されており、それら要素間の関係も定義されている。例えば、「book」の下位にできる要素として「article」があること(スキーマ300内の6〜9行目参照)、「article」の下位にできる要素として「title」、「subtitle」、「paragraph」があること(スキーマ300内の13〜18行目参照)、「paragraph」の下位にできる要素として「text」、「list」があること(スキーマ300内の22〜26行目参照)、「list」の下位にできる要素として「li」があること(スキーマ300内の30〜33行目参照)、「li」の下位にできる要素として「text」があること(スキーマ300内の37〜40行目参照)が、スキーマ300を解析することによってわかる。前述のように、「element name=“ ”」の「“」と「”」で囲まれたものが、要素である。そして、要素間の上位、下位の関係は、「element ref」の関係を辿ればよい。
そして、文字列を有することができるのは、「title」、「subtitle」、「text」の要素であること(スキーマ300内の16,17、40行目等参照)も、スキーマ300を解析することによってわかる。これは、要素の定義内に、「type=”xs:string”」があるか否かによって判断すればよい。
次に、スタイル表示領域に、構造化文書作成モジュール100が構造化文書400にスタイルシートを適用して表示する表示文書500の例を示す。図5は、表示文書500の例を示す説明図である。表示文書500内には、文字列510が表示されている。
図7は、編集後の表示文書700の例を示す説明図である。図5の例に示した表示文書500の状態から、文字列720(文字列「かきくけこ」)が要素「list」として表示されている。また、文字列510(文字列「あいうえおかきくけこさしすせそ」)は、選択範囲610(文字列「かきくけこ」)が移動したことにより、文字列710(文字列「あいうえおさしすせそ」)に変更されている。
図8は、編集後の構造化文書800の例を示す説明図である。図4の例に示した構造化文書400の状態から、<list><li><text>かきくけこ</text></li></list>が<text>あいうえおさしすせそ</text>の後に挿入されている。
(1−1)操作者の選択操作によって選択された文字列がlist要素内に挿入される。具体的には、「<list>かきくけこ</list>」を生成する(ステップS208)。
(1−2)スキーマ300内の定義からlist要素は文字列という要素値を有することができないので、list要素の下位要素のなかから要素値を有することが可能なtext要素を挿入する。具体的には、「<list><text>かきくけこ</text></list>」の構造を生成する(ステップS214)。
(1−4)スキーマ300内の定義から「<list><li><text>かきくけこ</text></li></list>」の構造は、挿入先である元の「かきくけこ」があった位置(text要素の下位)には存在できない(ステップS218でYes)ので、text要素の後方で挿入可能な位置を探索する(ステップS220の判断処理における探索)。
(1−5)スキーマ300内の定義からtext要素の下位として挿入可能なので、移動する(ステップS222)。この状態では、スキーマ違反は生じていない(ステップS218でNo)ので終了する。
次に、構造化文書900を編集対象とした場合の例について説明する。図9は、構造化文書900の例を示す説明図である。構造化文書900は、構造化文書記憶モジュール110内に記憶されている。構造化文書900に対応するスキーマはスキーマ300である。
次に、スタイル表示領域に、構造化文書作成モジュール100が構造化文書900にスタイルシートを適用して表示する表示文書1000の例を示す。図10は、表示文書1000の例を示す説明図である。表示文書1000内には、文字列1010が表示されている。
図12は、編集後の表示文書1200の例を示す説明図である。図10の例に示した表示文書1000の状態から、文字列1220(文字列「かきくけこ」)が要素「li」として表示されている。また、文字列1010(文字列「あいうえおかきくけこさしすせそ」)は、選択範囲1110(文字列「かきくけこ」)が移動したことにより、文字列1210(文字列「あいうえおさしすせそ」)に変更されている。
図13は、編集後の構造化文書1300の例を示す説明図である。図9の例に示した構造化文書900の状態から、<list><li><text>かきくけこ</text></li></list>が<text>あいうえおさしすせそ</text>の後に挿入されている。
(2−1)操作者の選択操作によって選択された文字列がli要素内に挿入される。具体的には、「<li>かきくけこ</li>」を生成する(ステップS208)。
(2−2)スキーマ300内の定義からli要素は文字列という要素値を有することができないので、li要素の下位要素のなかから要素値を有することが可能なtext要素を挿入する。具体的には、「<li><text>かきくけこ</text></li>」の構造を生成する(ステップS214)。
(2−4)スキーマ300内の定義から「<li><text>かきくけこ</text></li>」の構造は、挿入先である元の「かきくけこ」があった位置(text要素の下位)には存在できない(ステップS218でYes)ので、text要素の後方で挿入可能な位置を探索する(ステップS220の判断処理における探索)。
(2−6)前方にも後方にも存在可能な個所がない(ステップS220でYes)ので、スキーマ300内の定義からli要素の上位要素(ここでは、list要素)が挿入可能である(ステップS224でYes)ので、li要素の上位要素であるlist要素を挿入し、「<list><li><text>かきくけこ</text></li></list>」を生成する(ステップS226)。
(2−8)スキーマ300内の定義からtext要素の下位として挿入可能なので、移動する(ステップS222)。この状態では、スキーマ違反は生じていない(ステップS218でNo)ので終了する。
次に、平文の文書を編集対象とした場合の例について説明する。文書表示領域に、構造化文書作成モジュール100が平文の文書を表示する表示文書1400の例を示す。図14は、表示文書1400の例を示す説明図である。表示文書1400内には、文字列1410が表示されている。この場合の平文の文書の内容は、平文であるので表示文書1400内の表示内容と同等のものである。また、この平文の文書は、構造化文書記憶モジュール110内に記憶されており、対応するスキーマはスキーマ300である。
(3−2)スキーマ300内の定義からlist要素は文字列という要素値を有することができないので、list要素の下位要素のなかから要素値を有することが可能なtext要素を挿入する。具体的には、「<list><text>かきくけこ</text></list>」の構造を生成する(ステップS214)。
(3−3)text要素とlist要素の間に必要なli要素を補完する。具体的には、「<list><li><text>かきくけこ</text></li></list>」の構造を作成する(ステップS216)。つまり、スキーマ300内の定義では、list要素はli要素のみを有しており、直下にtext要素を有することはできないので、必要なli要素を補完することになる。
図16は、この状態における構造化文書(作成途中)1600の例を示す説明図である。文字列「かきくけこ」の部分が構造化されている。
図22は、編集後の表示文書2200の例を示す説明図である。これは、文書表示領域(スタイル表示領域)に、構造化文書作成モジュール100が構造化文書2100にスタイルシートを適用して表示する表示文書2200の例を示すものである。
次に、平文の文書を編集対象とした場合の例について説明する。文書表示領域に、構造化文書作成モジュール100が平文の文書を表示する表示文書2300の例を示す。図23は、表示文書2300の例を示す説明図である。表示文書2300内には、文字列2310が表示されている。この場合の平文の文書の内容は、平文であるので表示文書2300内の表示内容と同等のものである。また、この平文の文書は、構造化文書記憶モジュール110内に記憶されており、対応するスキーマはスキーマ300である。
挿入可能な構造は、以下の4つとなる。つまり、図2に例示のフローチャートにおいて、ステップS208において、スキーマ300内の定義では指定された要素Aに下位要素が複数ある場合である。
(a)<book><article><title>かきくけこ</title></article></book>
(b)<book><article><paragraph><text>かきくけこ</text></paragraph></article></book>
(c)<book><article><subtitle>かきくけこ</subtitle></article></book>
(d)<book><article><paragraph><list><li><text>かきくけこ</text></li></list></paragraph></article></book>
このように、要素Aに下位要素が複数ある場合、操作者が挿入したい構造を選択できるように、図25の例に示すように、さらに下位のメニュー2530を表示し、操作者が選択した構造を挿入可能とする。図25は、表示文書2500にメニュー2520、メニュー2530が表示された例を示す説明図である。つまり、操作者の操作によって、メニュー2520内の選択メニュー(article挿入)2525が選択された場合は、メニュー2530を表示する。
なお、図27に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図27に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えばASIC等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図27に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか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)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
110…構造化文書記憶モジュール
120…文書構造定義記憶モジュール
130…操作受付モジュール
140…構造化文書作成支援モジュール
142…選択範囲取得モジュール
144…要素取得モジュール
146…要素挿入モジュール
148…構造検証モジュール
150…要素移動モジュール
Claims (6)
- 文字列を選択する選択手段と、
前記選択手段によって選択された文字列に対して、文字列を挿入する文書がしたがう文書構造定義内で定義された要素の内、第1の要素を指定する要素指定手段と、
前記選択手段によって選択された文字列を挿入する前記文書内の位置である挿入先を指定する挿入先指定手段と、
前記要素指定手段によって指定された第1の要素は文字列を要素として有することができるか否かを前記文書構造定義内の定義に基づいて判断し、できないと判断した場合は、文字列を要素として有することができる該第1の要素の下位要素である第2の要素を該文書構造定義内から探索し、前記選択手段によって選択された文字列を有する該第2の要素を生成し、該第1の要素と該第2の要素の間に必要となる要素を該文書構造定義内から探索し、該必要となる要素を該第1の要素と該第2の要素の間に補完することによって挿入要素を生成し、該挿入要素を前記挿入先指定手段によって指定された挿入先に移動する移動手段
を具備することを特徴とする情報処理装置。 - 前記移動手段によって前記挿入要素を前記挿入先指定手段によって指定された挿入先に移動することが、前記文書構造定義内での定義の違反になるか否かを判断する違反判断手段と、
をさらに具備し、
前記移動手段は、前記違反判断手段によって違反していると判断された場合は、前記挿入先の位置の前方又は後方で前記挿入要素を挿入可能な位置を探索し、該挿入可能な位置に前記挿入要素を挿入する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記移動手段は、前記探索の結果、前記挿入先の位置の前方及び後方で前記挿入要素を挿入可能な位置がなかった場合は、該挿入要素の上位要素を前記文書構造定義内から探索し、該第2の要素を有する上位要素を新たな挿入要素として生成し、
前記違反判断手段は、前記移動手段によって前記挿入要素を前記挿入先指定手段によって指定された挿入先に移動することが、前記文書構造定義内での定義の違反になるか否かを判断する
ことを特徴とする請求項2に記載の情報処理装置。 - 前記文書は構造化文書又は構造化文書ではない平文の文書である
ことを特徴とする請求項1から3のいずれか一項に記載の情報処理装置。 - 前記要素指定手段は、操作者の操作によって要素が指定された場合に、該指定された要素に下位要素が複数ある場合は、該下位要素を選択可能に表示し、操作者の操作によって指定された下位要素を第1の要素とする
ことを特徴とする請求項1から4のいずれか一項に記載の情報処理装置。 - コンピュータを、
文字列を選択する選択手段と、
前記選択手段によって選択された文字列に対して、文字列を挿入する文書がしたがう文書構造定義内で定義された要素の内、第1の要素を指定する要素指定手段と、
前記選択手段によって選択された文字列を挿入する前記文書内の位置である挿入先を指定する挿入先指定手段と、
前記要素指定手段によって指定された第1の要素は文字列を要素として有することができるか否かを前記文書構造定義内の定義に基づいて判断し、できないと判断した場合は、文字列を要素として有することができる該第1の要素の下位要素である第2の要素を該文書構造定義内から探索し、前記選択手段によって選択された文字列を有する該第2の要素を生成し、該第1の要素と該第2の要素の間に必要となる要素を該文書構造定義内から探索し、該必要となる要素を該第1の要素と該第2の要素の間に補完することによって挿入要素を生成し、該挿入要素を前記挿入先指定手段によって指定された挿入先に移動する移動手段
として機能させるための情報処理プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011191588A JP5760868B2 (ja) | 2011-09-02 | 2011-09-02 | 情報処理装置及び情報処理プログラム |
US13/399,318 US8667388B2 (en) | 2011-09-02 | 2012-02-17 | Web document structure analysis and conditional element shifting and insertion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011191588A JP5760868B2 (ja) | 2011-09-02 | 2011-09-02 | 情報処理装置及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013054498A JP2013054498A (ja) | 2013-03-21 |
JP5760868B2 true JP5760868B2 (ja) | 2015-08-12 |
Family
ID=47754099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011191588A Active JP5760868B2 (ja) | 2011-09-02 | 2011-09-02 | 情報処理装置及び情報処理プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8667388B2 (ja) |
JP (1) | JP5760868B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110502611B (zh) * | 2019-08-01 | 2022-04-12 | 武汉虹信科技发展有限责任公司 | 字符串检索方法和装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0969101A (ja) | 1995-08-31 | 1997-03-11 | Hitachi Ltd | 構造化文書生成方法および装置 |
JPH10143513A (ja) | 1996-11-07 | 1998-05-29 | Canon Inc | 文書処理装置及びその方法 |
US7165239B2 (en) * | 2001-07-10 | 2007-01-16 | Microsoft Corporation | Application program interface for network software platform |
AUPS084902A0 (en) * | 2002-03-01 | 2002-03-28 | Speedlegal Holdings Inc | A document assembly system |
US7228496B2 (en) * | 2002-07-09 | 2007-06-05 | Kabushiki Kaisha Toshiba | Document editing method, document editing system, server apparatus, and document editing program |
US7747633B2 (en) * | 2007-07-23 | 2010-06-29 | Microsoft Corporation | Incremental parsing of hierarchical files |
US8527867B2 (en) * | 2008-01-18 | 2013-09-03 | Oracle International Corporation | Enabling users to edit very large XML data |
-
2011
- 2011-09-02 JP JP2011191588A patent/JP5760868B2/ja active Active
-
2012
- 2012-02-17 US US13/399,318 patent/US8667388B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8667388B2 (en) | 2014-03-04 |
JP2013054498A (ja) | 2013-03-21 |
US20130061130A1 (en) | 2013-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4869630B2 (ja) | コンテンツを開始テンプレートとターゲットテンプレートとの間でマップするための方法およびシステム | |
JP5363355B2 (ja) | スタイル要素を用いた画面表示の選択した表示領域をコピーアンドペーストする方法、システム及びプログラム | |
JP2007052703A (ja) | テストシナリオ作成プログラム、テストシナリオ作成装置、テストシナリオ作成方法 | |
JP5466357B2 (ja) | 電子文書の作成を支援する装置及び方法 | |
JP4259588B2 (ja) | 情報処理システム及び情報処理プログラム | |
JP4566196B2 (ja) | 文書処理方法および装置 | |
JP5760868B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP6221220B2 (ja) | 画像処理装置及び画像処理プログラム | |
CN100414968C (zh) | 图像处理系统、信息和图像处理设备和方法 | |
US20160034431A1 (en) | Method and system for assigning a content item as a link target to a managed object | |
JP5910216B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP5541024B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP4957618B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP5842437B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP6497087B2 (ja) | 情報処理装置及び情報処理プログラム | |
CN112394930A (zh) | 自动构建前端界面的方法、电子设备及介质 | |
JP2007128520A (ja) | マニュアルの作成方法及びそのシステム | |
JP6421568B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP4957656B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP4935768B2 (ja) | 情報処理装置及び情報処理プログラム | |
US10831833B2 (en) | Information processing apparatus and non-transitory computer readable medium | |
JP2008060778A (ja) | 画像編集システム、画像処理システム、画像編集プログラムおよび画像処理プログラム | |
JP2007058808A (ja) | Htmlデータ生成プログラムの開発支援方法及び支援装置 | |
CN117709302A (zh) | 一种文档转换方法及装置 | |
KR20220052135A (ko) | 블록 에디터 기반의 문서 편집을 위한 임포트 블록 삽입 방법, 그를 수행하기 위한 서버 및 컴퓨터 프로그램 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140822 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150424 |
|
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: 20150512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150525 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5760868 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 |