JP4990302B2 - データ処理方法、データ処理プログラム、およびデータ処理装置 - Google Patents

データ処理方法、データ処理プログラム、およびデータ処理装置 Download PDF

Info

Publication number
JP4990302B2
JP4990302B2 JP2009009082A JP2009009082A JP4990302B2 JP 4990302 B2 JP4990302 B2 JP 4990302B2 JP 2009009082 A JP2009009082 A JP 2009009082A JP 2009009082 A JP2009009082 A JP 2009009082A JP 4990302 B2 JP4990302 B2 JP 4990302B2
Authority
JP
Japan
Prior art keywords
block
data
processing
electronic data
read
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.)
Expired - Lifetime
Application number
JP2009009082A
Other languages
English (en)
Other versions
JP2009134741A (ja
JP2009134741A5 (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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2009009082A priority Critical patent/JP4990302B2/ja
Publication of JP2009134741A publication Critical patent/JP2009134741A/ja
Publication of JP2009134741A5 publication Critical patent/JP2009134741A5/ja
Application granted granted Critical
Publication of JP4990302B2 publication Critical patent/JP4990302B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • 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/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]

Description

この発明はデータ処理方法に関し、特に、階層構造を有する電子データを処理することのできるデータ処理方法、データ処理プログラム、およびデータ処理装置に関する。
文書記述言語の定義に従って所定の処理を実行させるための構造化された電子データであって、階層構造を有する構造化文書を記録するためのデータ形式として、SGML(Standard Generalized Markup Language:準一般化マーク付け言語)やXML(Extensible Markup Language)などが知られている。特にXMLは、インターネットで交換する電子文書や電子データなどで近年盛んに使用されている。
XML形式の電子データを扱う処理方法として、DOM(Document Object Model)形式とSAX(Simple API for XML)形式とが存在する。
DOM形式とは、対象とする電子データを全て読込み、電子データ内の全要素の階層構造を把握してから、電子データの各要素にアクセスする処理方法である。例えば、図16のような階層構造をもつ電子データがある場合、いったん電子データ全体を読込み、全要素の階層構造を解析する。図16は、電子データの階層構造のみを示し、本文、内容は省略している。そして、図16の階層構造をもつ電子データから、図17のような木構造(ツリー構造)を作成した後、各要素(TITLE、AUTHORなど)にアクセスする。よって、DOM形式の電子データの処理方法は、電子データの階層構造を把握した後に処理することになるため、任意の要素にアクセスしやすいという特徴がある。
これに対し、SAX形式は、電子データを先頭から順に読込みながら、読込んだ要素のみ構造解析し、処理していく形式の処理方法である。そのため、電子データ全体の解析処理を待たずに、順次処理していくことができ、処理速度としても、メモリの容量としても、オーバーヘッドが少ないというメリットがある。
以上のように、DOM形式およびSAX形式ともにそれぞれのメリットがあるが、反面、次のようなデメリットがそれぞれにある。
すなわち、DOM形式の場合、電子データ内の一部のデータだけを処理したい場合であっても、木構造を生成するために、電子データ全体の構造解析をしなくてはならず、処理に無駄が生じる。また、電子データのサイズが大きくなると、木構造を作成するための処理時間、および木構造を記憶しておくためのメモリ使用量が大きくなるという欠点があった。
一方SAX形式の場合、電子データの先頭から順に処理することを前提にしたアクセス形式であるため、電子データの内容を先頭から順に処理せず、任意の要素を任意の順番に扱う場合には、無駄な読込処理、および構造解析処理が入るという欠点が存在する。また、電子データの後半の要素を処理した時であっても、電子データの先頭から読込み、構造解析をしないといけないため、処理時間として無駄が生じていた。
一方、DOM形式やSAX形式ではなく、取出したい要素のみを、階層構造を解析することなく取出す処理方法もある。しかしながら、取出したい領域が、どの要素の下に含まれるかによって、その要素の意味が変わったり、表示する位置やサイズ、属性などが変わったりしてしまう場合があるため、この方法では取出した要素に対して適切な処理ができない。例えば、図18のような、階層構造をもつXHTML(Extensible HyperText Markup Language)文書の例を考える。図18において、領域71の先頭部分は、<html>、<body bgcolor="yellow">、<p>に挟まれている。このうち、<body bgcolor="yellow">は、このタグで挟まれた領域が本文データであることを示すと共に、本文の背景を黄色にすることを意味しており、このタグがあるかないかにより、本文の背景が黄色になるか、白色(省略時のデフォルト値)になるか変わってしまう。したがって、領域71だけをファイルから読込んで表示処理を行なおうとしても、本文の背景が黄色であることを知ることができず、正しい表示処理ができない。
このように、一般に、階層構造をもつ電子データに対しては、処理したい領域のみを読込んで処理しようとしても、処理する領域以外に書かれた制御情報(タグや属性等)を知ることができないため、正しく処理できないという問題があった。
そこで、本発明は、このような問題を解決することのできるデータ処理方法、データ処理プログラム、およびデータ処理装置を提供することを目的としている。
上記目的を達成するために、本発明のある局面に従うと、データ処理方法は、コンピュータによる、階層構造を有する電子データと、電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含む構造化データを処理するデータ処理方法であって、ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録し、コンピュータは、入力手段と、解析手段と、処理手段と、表示手段と、制御手段とを含み、制御手段が、ブロック補助データを参照して、電子データのうちの処理対象とする部分を含むブロックを特定するステップと、入力手段が、電子データに含まれるブロックの中から特定されたブロックのみを読込むステップと、解析手段が、読込まれたブロックのブロック補助データに記録されている先頭位置制御コードと、読込まれたブロックと、読込まれたブロックのブロック補助データに記録されている終端位置制御コードとから、読込まれたブロックの、電子データの階層構造中の階層を解析するステップと、処理手段が、解析された結果を用いて読込んだブロックの表示レイアウトを計算し、表示手段で表示する処理をするステップとを備える。
本発明の他の局面に従うと、データ処理プログラムは、コンピュータに、階層構造を有する電子データと、電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含む構造化データの処理を実行させるためのデータ処理プログラムであって、ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録し、コンピュータは、入力手段と、解析手段と、処理手段と、表示手段と、制御手段とを含み、制御手段が、ブロック補助データを参照して、電子データのうちの処理対象とする部分を含むブロックを特定するステップと、入力手段が、電子データから特定されたブロックを読込むステップと、解析手段が、読込まれたブロックのブロック補助データに記録されている先頭位置制御コードと、読込まれたブロックと、読込まれたブロックのブロック補助データに記録されている終端位置制御コードとから、読込まれたブロックの、電子データの階層構造中の階層を解析するステップと、処理手段が、解析された結果を用いて、読込んだブロックの表示レイアウトを計算し、表示手段で表示する処理をするステップとをコンピュータに実行させる
本発明のさらに他の局面に従うと、データ処理装置は、構造化データを入力するための入力手段と、表示手段と、電子データのうちの少なくとも一部を表示手段で表示する処理を実行するための処理手段と、入力手段での構造化データの入力、および処理手段での処理を制御するための制御手段とを備える。構造化データは、階層構造を有する電子データと、電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含む。ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録する。制御手段は、ブロック補助データを参照して、電子データのうちの処理対象とする部分を含むブロックを特定する処理と、電子データから特定されたブロックを入力手段で入力する処理と、入力されたブロックのブロック補助データに記録されている先頭位置制御コードと、入力されたブロックと、入力されたブロックのブロック補助データに記録されている終端位置制御コードとから、読込まれたブロックの、電子データの階層構造中の階層を解析する処理と、解析された結果を用いて、処理手段に読入力されたブロックの表示レイアウトを計算させて表示手段で表示させる処理とを実行する。
本発明の第1の実施の形態におけるデータ処理装置のブロック図である。 本発明の第1の実施の形態における表示装置を、具体例として携帯機器で実現した場合の概観図を示す図である。 本実施の形態におけるブロック補助データの具体的な概略を示す図である。 電子データを複数のブロックに分割した様子を具体的に示す図である。 図4に示される電子データに対して設定されるブロック補助データの具体例を示す図である。 本発明の第1の実施の形態におけるデータ処理装置の処理を示すフローチャートである。 1ブロック分のデータとブロック補助データとから作成したデータの具体例を示す図である。 完全には階層構造を有しない電子データの具体例を示す図である。 本発明の第2の実施の形態におけるデータ処理装置のブロック図である。 本発明の第2の実施の形態におけるデータ処理装置の処理を示すフローチャートである。 第2の実施の形態において、ブロック補助データを作成する際の処理を示すフローチャートである。 行の途中でブロック分割するデータの具体例と表示の具体例とを示す図である。 本発明の第3の実施の形態におけるデータ処理装置のブロック図である。 第3の実施の形態において、ブロック補助データを作成する際の処理を示すフローチャートである。 本発明の第3の実施の形態におけるデータ処理装置の処理を示すフローチャートである。 階層構造をもつ電子データの具体例を示す図である。 階層構造をもつ電子データから取出した木構造を説明するための図である。 階層構造をもつ電子データの具体例を示す図である。
本発明をより詳細に説明するために、添付の図面を用いてこれを説明する。
(第1の実施の形態)
第1図は、第1の実施の形態におけるデータ処理装置100が表示装置である場合のデータ処理装置100のブロック図の一例を示す図である。
図1を参照して、サーバ110は、ユーザからの要求を受信し、データベースに記録された電子データを送信する。ネットワーク114は、サーバ110とユーザのパーソナルコンピュータ(以下、パソコンと称する)115とを接続する。記録媒体111は、パソコン115から電子データを取出してデータ処理装置100に電子データを供給する。
なお、上述のパソコン115を、コンビニエンスストアや駅構内等に設置された電子データ受信装置(図示せず)に替えて、この電子データ受信装置から電子データを取出し、記録媒体111に記録する方式としてもよい。この場合、電子データ受信装置から電子データを取出して記録媒体111に記録する際に、課金することが可能である。また、サーバ110から送信される電子データを、パソコン115を介することなく、データ処理装置100が受信して記録媒体111に記録する構成であってもよい。
さらに図1を参照して、電子データ101は、記録媒体111の中に記録された電子データであり、ブロック補助データ102は、記録媒体111に記録され、電子データ101に付随するデータである。
上述の電子データ101は、文書記述言語の定義に従って所定の処理を実行させるための構造化された電子データであって、階層構造を有する構造化文書を記録するためのデータ形式であるSGMLやXMLなどを用いて記録されている。
ブロック補助データ102は、上述の構造化された電子データである電子データ101を複数のブロックに分割し、分割されたブロックごとに所定の処理を実行させるデータであり、電子データ101と対になっている。
さらに図1を参照して、入力部103は、電子データ101およびブロック補助データ102を読込む。データ構造解析部104は、電子データ101とブロック補助データ102とからデータの階層構造を解析する。処理部105は、データ構造解析部104で解析した階層構造に基づき、所定の処理を行なう。制御部109は、入力部103、データ構造解析部104、および処理部105の各処理部を制御する。
処理部105は、対象とする電子データの内容、および処理内容によって構成が異なるが、データ処理装置100が、例えばインターネットで交換する電子文書や電子データ、単行本、教科書、雑誌、小説、および論文のような文章などの表示を行なう表示装置である場合には、図1に示すように、データ構造解析部104の解析結果に基づいて、文章の表示レイアウトを計算するレイアウト計算部106と、求めた表示レイアウトに基づいて文章を表示する表示部108と、スクロールなどのユーザからの指示を処理するユーザ指示処理部107とから構成される。
また、電子データが音声である場合は、処理部105は、読上装置に変更され、また、表示部108には音声再生部が使用され、レイアウト計算部106は、読む部分と読まない部分とを判定したり、強調して読む箇所とそうでない箇所とを判定したり、また各読上げの間隔(ま)を取ったりする部分に変更される。この、電子データが音声である場合、電子データの階層構造に応じて、音声の属性を変えて読上げるようにしてもよい。さらに、電子データが音声である場合、データ処理装置100には、シナリオ解釈部、音声出力部、および、再生順を管理するために各要素の同期をとる同期部が必要になる。
図2に、上述のデータ処理装置100を携帯型機器で実現した場合の具体例を示す。
図2において、表示部108は、レイアウト計算部106で計算した表示レイアウトに基づき表示を行ない、ディスプレイなどから構成される。また、記録媒体111は、図1に示したように、パソコン115や電子データ受信装置によって、サーバ110、およびネットワーク114を介して文書データベースから取出された、処理対象の電子データ101と、ブロック補助データ102とが記録された記録媒体である。この記録媒体111を本体のデータ処理装置100に挿入することで、表示装置であるデータ処理装置200内に設けられた入力部103を通してこの2つのデータが読込まれる。さらに十字キー112は、ユーザが文書のスクロール指示や表示させたい書籍や文書を選択する場合などに用いられる。また、ペン113は、電子データにリンク機能が含まれるとき、リンク先にジャンプするために使われる。また、表示装置であるデータ処理装置100から求められた確認事項に変更するためにも使用される。
なお、記録媒体111のように、記録媒体に電子データ101やブロック補助データ102を記録するものではなく、データ処理装置100の内部に記録する領域を設けて、そこに記憶するようにしてもよい。また、ネットワーク114上のサーバ110、あるいはデータベースにこの2つのデータを記録し、ダウンロードしながら処理するようにしてもよい。
次に、ブロック補助データについて説明する。
ブロック補助データは、一般に、図3に示すように、電子データファイル名1、ブロック情報2、およびリンク先情報3の3つの領域から構成される。
電子データファイル名1は、このブロック補助データが、どの電子データに対応するものかを記録するために用意された領域である。ブロック補助データを、電子データ内、もしくは電子データに連結して記録する場合は、電子データファイル名1の領域は、省略してもよい。
また、処理する電子データによっては、リンク先情報3の領域は存在しないことがある。
以降、この3領域の書式について、文書記述言語の定義に従って記述され、階層構造を有する電子データの具体例としてXHTML文書を用いて説明する。図18に示されるXHTML文書を、図4に示されるように、4つのブロック(ブロック10、ブロック11、ブロック12、ブロック13)に分割する場合を考える。このとき、このXHTML文書に対するブロック補助データは、図5に示されるようになる。
図5を参照して、ブロック補助データの領域20は電子データファイル名1の領域であり、図4のXHTML文書のファイル名が記録される。
ブロック補助データの領域21〜37は、ブロック情報2の領域である。
領域21はブロック数を記録する領域であり、4つのブロックに分割する場合には4が記録される。
領域22〜25、26〜29、30〜33、34〜37は、それぞれブロック10,11,12,13に対するブロック情報の領域である。一般に、n個のブロックに分割する場合、領域22〜25のブロック情報の構造がn回繰返し記録される。
領域22,26,30,34にはそれぞれのブロックの開始位置が、領域23,27,31,35にはそれぞれのブロックの終了位置が、ファイル先頭からのバイト数の形で記録される。したがって、ブロック11に属するデータを取出したい場合は、領域26と領域27とのブロック情報の値を調べ、ファイルの先頭から数えて212バイト目から423バイト目を読込めばよい。
領域24,28,32,36には、各ブロックの開始位置において、終了されていない開始タグを記録する。領域24のブロック情報は、ブロック10の開始位置において終了されていない開始タグを記録する領域であるが、ブロック10はファイルの先頭から始まっているため、領域24に記録する制御コードは存在しない。ブロック11の開始位置では<html>が閉じられていないため、領域28には<html>を記録する。また、ブロック12の開始位置のように、複数のタグ(<html>、<body bgcolor="yellow">、<p>)が閉じられていない場合は、<html><body bgcolor="yellow"><p>のように、出現順に連結して領域32にブロック情報を記録する。なお、<body>タグのように属性(bgcolor="yellow")をもつ場合は、属性を付けたまま記録する。ブロック13も同様にして、<html><body bgcolor="yellow">と領域36にブロック情報を記録する。
領域25,29,33,37には、各ブロックの終了位置において閉じられていないタグの終了タグを記録する。ブロック10の終了位置においては、<html>タグが終了されていないため、領域25にはブロック情報</html>を記録する。また、ブロック11の終了位置においては、<html>、<body bgcolor="yellow">、<p>タグが閉じられていないため、出現順とは逆の順番で、上記の終了タグを</p></body></html>と連結してブロック情報を領域29に記録する。同様にして、ブロック12に対してはブロック情報</body></html>を記録する。ブロック13の終了位置では全てのタグが閉じられているので、領域37には何も記録しない。
領域38〜41は、リンク先情報3の領域であり、図18のXHTML文書のうち、リンク先として指定されたラベル位置を記録する。
ここで、XHTML文書のリンクについて簡単に説明する。XHTML文書では、<a>タグによって他のファイルやファイルの一部へリンクをはることができる。例えば、図4のリンク先情報3,4は、同一ファイルの一部へのリンクがはられた例である。この例で、リンク先情報3の<a>タグで囲まれた文字列"BBB"がクリックされると、href属性で指定されたラベル"SUMMARY"が設定されている場所、つまり、<a>のname属性に"SUMMARY"が設定されているリンク先情報4に表示位置をジャンプさせる。
図5において、領域38〜41には、リンク先のラベルの位置情報、つまり<a>タグのname属性により設定されているラベルの位置情報を記録する。図4のXHTML文書の場合、name属性をもつ<a>タグは1つしか存在しないため、領域38には1を記録し、領域39〜41の組合わせを1回だけ記録する。
一般的に、name属性をもつ<a>タグがn個ある場合は、領域39〜41の構造のリンク先情報がn回繰返される。領域39には<a>タグのname属性に記録されたラベル名を、領域40,41には<a>タグに挟まれた文字列の開始位置および終了位置をファイル先頭からのバイト数で記録する。
なお、ブロックの大きさは、装置の処理能力から決定される。すなわち、ブロックの大きさが大きいほど1ブロックあたりの処理量が増えるため、処理時間が増大し、使用するメモリ容量やリソース容量も増大する。そのため、ブロックの大きさは、装置の処理能力に応じて決定されることが望ましい。装置の処理能力を決定する要因として、装置に搭載されているCPU(Central Processing Unit)の処理能力、メモリ容量、およびリソース容量等が挙げられる。
一方、ブロックの大きさは、画面に表示される文字数やそれを決定する要因によっても決定される。例えば、電子書籍等の文章を表示する装置においては、1画面分の表示をした後、ユーザによるページ移動の指示があるまで待機するように設計されていることが多い。この場合、画面に表示される文字数に対してブロックの大きさを極端に大きく設定した場合には、本実施の形態における処理方法ではブロックを1つの単位として読込むため、画面に表示しない不要なデータも読込まれることになり、無駄が生じてしまうことになる。したがって、画面に表示される文字数に基づき、ブロックの大きさが決定されることが望ましい。なお、画面に表示される文字数は、表示装置の備える画面の大きさおよび解像度、表示する文字のフォント数、行間や字間の大きさ、および余白の大きさ等によって変わるため、これらの要因によってブロックの大きさを変えるようにしてもよい。
このブロック補助データは、対象とする電子データの種類によって構成および書式が若干異なる。一般にXML形式で書かれた電子データの場合、図3のリンク先情報3を除き、電子データファイル名1、ブロック情報2の2領域は存在し、書式も同じになる。リンク先情報3は、XHTML文書の機能であるリンク機能のための情報であるため、XHTML文書などの電子書籍以外の電子データに対しては存在しないこともある。しかし、他のブロック内のデータを参照しながら処理を進めるような電子データや、ユーザの動作に応じて他ブロック内のデータを表示させたり、もしくは再生させたりする機能をもつような電子データの場合は、アクセスしやすくするために、そのデータがどこにあるかをこのリンク先情報3に記録しておくとよい。
また、適用可能な電子データはXML形式に限らない。一般に階層構造をもつ構造化文書に対して適用可能であり、具体的には、ブロック情報2の開始/終了位置制御コードに、ブロックの開始/終了位置での階層構造がわかるように、それぞれの書式で記録しておけばよい。
次に、この電子データとブロック補助データとによるデータ処理装置100の動作について、表示装置を例に挙げて説明していく。図6に表示装置でのフローチャートを示す。
図6を参照して、まず、ユーザ指示処理部107を通じ、ユーザから表示したい電子データが指定され(ステップS101)、その電子データに対して用意されたブロック補助データを入力部103より読込む(ステップS102)。
次に、ステップS102で読込んだブロック補助データのうち、各ブロックの開始/終了位置と、画面に表示しようとしている領域のファイル先頭からの位置とを元に、どのブロックを読込むかを判断し(ステップS103)、必要なブロックのみを入力部103より読込む(ステップS104)。
そして、ステップS102で読込んだブロック補助データの内容を参照し、読込んだブロックの開始/終了位置における制御コードを調べる。そして、開始位置制御コード、ブロックデータ、終了位置制御コードの順に連結し、階層構造を解析し、木構造を作成する(ステップS105)。
例えば、図4のブロック12を読込んだ場合には、図5のブロック補助データの領域32と領域33とにあるブロック情報を前後に連結した、図7のようなデータを作成し、階層構造を解析する。図7において、領域51のデータが領域32のブロック情報に記録された制御コード、領域52のデータがステップS104で読込んだブロック12のデータ、および領域53が領域33に記録された制御コードである。なお、図7のように、必要ならば、先頭に領域50のデータのような、XML宣言と文書型宣言とを付けてもよい。このステップS105の処理はデータ構造解析部104で行なわれる。
次にレイアウト計算部160により、ステップS105で作成した1ブロック分の木構造を元に、表示画面内でのレイアウトを計算する(ステップS106)。この結果、表示部108がもつ表示画面全体のレイアウトが決まれば(ステップS107)、ステップS108に移り、表示部108に表示する。
一方、ステップS107において、まだ表示画面のうちレイアウトが決まっていない領域があればステップS104に戻り、次のブロックを読込み、木構造を作成して(ステップS105)、1つ前のブロックに対して求めたレイアウト画面の続きから、現在のブロックのレイアウト処理を行なう(ステップS106)。続くステップS107,S108の処理は、先に説明した処理と同様の処理を行なう。
ステップS108で表示部108に表示した後は、ステップS109に移り、ユーザからの指示を待つ。ユーザからの指示があるまでステップS109で待機する。
ここで、ユーザから表示処理の終了が指示された場合、表示処理を終了する。ステップS109において、ユーザから次ページ、あるいは前ページのスクロール指示があった場合、ステップS111に移り、ユーザから受けたスクロール指示の結果、次に表示する内容が現在のブロックと同じかどうかを判断する。もし同じならば、ステップS106に移り、先に作成した木構造を元にレイアウト処理をし、以下先に説明した処理と同様にして、ステップS107以降の処理を続ける。
また、ステップS111の判断の結果、現在と異なるブロックと判断された場合は、ステップS104に移り、表示に必要なブロックを読込み、以下先に説明した処理と同様にして、ステップS105以降の処理を続ける。
一方、ステップS109において、リンクジャンプなどにより、他の領域へ飛ぶように指示された場合、ステップS110に移り、移動先が他ファイルへの移動か自ファイル内への移動かを調べる。例えば、XHTML文書では、href属性をもつ<a>タグで挟まれた文字列がクリックされると、href属性の値から、他ファイルへのリンクか、自ファイル内へのリンクかが判断される。その結果、自ファイル内へのリンクであった場合、ステップS111に移り、リンク先が現在のブロックと同じかどうか判断する。この時、ブロック補助データに記録されたリンク先情報3を参照して、リンク先がどのブロックに含まれるかを調べる。例えば、図5の例の場合、領域38〜41のブロック情報を参照し、<a>のhref属性で指定されたリンク先のラベルが、ファイル内のどの位置にあるかを調べる。その後、領域21〜37のブロック情報を参照して、その位置がどのブロックに含まれるかを調べることでリンク先のブロックを調べる。
求められたリンク先のブロックが現在のブロックと同じであれば、ステップS106に移り、以降、先に説明した処理と同様の処理を行なう。
一方、リンク先のブロックが現在のブロックと別のブロックであれば、ステップS104に移り、そのブロックを読込み、以降、先に説明した処理と同様の処理を行なう。
また、ステップS110の判断の結果、リンク先が他のファイルであった場合は、ステップS102に移り、リンク先のファイルに対して用意されたブロック補助データを読込み、以降、先に説明した処理と同様の処理を行なう。
上記のようにブロック補助データを用いて処理することで、電子データの一部のみのデータを読込んで処理することができるため、高速かつ低メモリでの処理ができる。
なお、本実施の形態では、所々でXHTML文書を例に挙げながら説明したが、以上の説明から明らかなようにXHTML文書の表示装置に対象を限定するものではない。XHTML文書のようなリンク機能をもち、階層構造を有する電子データの表示装置に対しては、図3のブロック補助データ、および図6のフローチャートが適用可能である。また、リンク機能をもたない電子データの場合も、図3のリンク先情報3と図6のステップS110とを省略することで適用可能である。例えば、日本電子出版協会が標準化を進めているJepaX(JEPA電子出版交換フォーマット)、日本電子ブックコミッティーが提案しているネットワーク電子ブックフォーマット(Network Electronic Book Format)など、XMLなどにより記録された階層構造を有する電子データであれば、図6と同様にして処理ができる。
また、本発明は、ブロック補助データを用意することにより、階層構造をもつ電子データの一部分のみを読出して処理できることに特徴がある。そのため、図1のブロック図において、処理部105を処理装置固有の処理に替えることで、表示装置に限らず、他の処理装置に対しても本発明を適用できる。この時、図6のフローチャートにおいては、ステップS106〜S108の処理が、処理装置固有の処理に替わる。例えば、文章の読上げ装置の場合、電子データのうち読上げる個所と読上げない個所とを判断するステップや、個所に応じて読上げる音質や強度を設定するステップや、音声再生するステップなどの処理に置換えられる。
一方、本実施の形態においては、XMLなどのように階層構造を有する電子データを対象に説明をしてきたが、HTML文書のように、完全には階層構造を有しない電子データに対しても適用可能である。
例えば、HTML文書には<basefont>という基準フォントのサイズを指定するタグがある。図8の領域72に示されるように指定すると、それ以降の文章の階層構造に関係なく、次の<basefont>タグの指定が来るまで、基準フォントのサイズが3(size="3"で指定)に設定される。例えば、領域72に示される<basefont>は、<p>タグや<u>タグなどに挟まれているが、<p>や<u>の終了タグが現れても設定が持続されるため、階層構造が崩れてしまっている。このように、階層構造を無視して効果が持続されるようなタグが存在する場合には、このタグを含むブロックの終了位置制御コードにそのタグの終了タグも記録し、次ブロック以降にも、開始位置制御コードにそのタグを、終了位置制御コードにそのタグの終了タグを追加しておくことにより、別のブロックのみを処理する場合でも、そのタグの効果がそのブロックにかかっていることを知ることができる。そのため、図6と同様な処理が可能となる。
(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。
図9は、本発明の第2の実施の形態に係るデータ処理装置200のブロック図の一例である。
図9を参照して、電子データ201は、本データ処理装置200で処理される電子データである。ブロック補助データ202は、電子データ201に付随するブロック補助データである。
入力部203は、電子データ201とブロック補助データ202とを読込む。データ構造解析部204は、電子データ201とブロック補助データ202とからデータの階層構造を解析する。ブロック補助データ作成部205は、ブロック補助データ202が存在しない場合に電子データ201からブロック補助データを作成する。処理部206は、データ構造解析部204で解析した階層構造に基づき所定の処理を行なう。制御部210は、入力部203、データ構造解析部204、ブロック補助データ作成部205、および処理部206の各処理部を制御する。電子データ201とブロック補助データ202とは、第1の実施の形態と同様に記録媒体111に記録され、データ処理装置200に読込まれる。
上述の処理部206は、対象とする電子データの内容、および処理内容によって構成が異なるが、このデータ処理装置200が文章などの表示を行なう表示装置である場合には、図9に示すように、データ構造解析部204の解析結果に基づいて、文章の表示レイアウトを計算するレイアウト計算部207と、計算した表示レイアウトに基づいて表示する表示部209と、スクロールなどのユーザからの指示を処理するユーザ指示処理部208とから構成される。
図10に処理装置200での処理のフローチャートを示す。
図10を参照して、まず、ユーザより、キーボード、マウス、およびペン等を使用して、処理する電子データが指定されると(ステップS201)、ユーザ指示処理部208を通じステップS202により、その電子データに対するブロック補助データが存在するかどうかが判断される。もし、存在していれば、上述の第1の実施の形態と同様の処理となり、図6のステップS102以降の処理が行なわれる。
もし、ステップS202において対応するブロック補助データが存在しないと判断されれば、ステップS203によりブロック補助データが作成され、引続き図6のステップS102以降の処理が行なわれる。ステップS102以降の処理は、第1の実施の形態で説明した処理と同じであるため、ここでの説明を繰返さない。
次に、ステップS203の処理について、詳しく説明する。
ブロック補助データ作成部205では、入力部202より入力した電子データを複数のブロックに分割し、それぞれのブロックの開始/終了位置での制御コードを調べ、図3に示したブロック補助データを作成する。
この、ステップS203での処理のフローチャートを図11に示す。
図11を参照して、まず、ブロックサイズの目標値Tを設定する(ステップS301)。先述の如く、適切なブロックサイズは、処置装置の処理能力や、画面に表示される文字数およびそれを決定する要因に基づいて決定されることが望ましい。そのため、これらのパラメータに基づきブロックサイズの目標値Tを設定する。なお、目標値Tの設定には、処理装置が予め備えるデフォルト値、もしくはユーザにより指定された値を用いてもよい。
図5に示されるブロック補助データは、ブロックサイズの目標値を200バイトに設定して作成されたものである。ここで、設定するブロックサイズを目標値としたのは、一般に、ブロック分割できる個所に制限があるためである。詳しくはステップS303の説明で述べる。
さて、ステップS301によりブロックサイズの目標値Tが設定されると、ステップS302に移り、ファイル先頭からTバイト目を挟んだXバイトの領域を、ブロック境界の探索範囲に設定する。Xの値は、例えば、ブロックサイズの目標値Tの半分に設定する。そして、ステップS303において、その探索範囲内における境界候補を抽出する。
境界候補は、対象とする電子データの種類によって変わるが、例えば、電子データがXML文書である場合は、区切る個所はタグやコメント、および文字列の途中ではなく、タグの直前か直後かで区切る。例えば、"<div id="ID1">abcdef</div>"というデータ列がある場合、"<div id="ID1">"の直前もしくは直後、または"</div>"の直前か直後かにブロックの境界を設定する。タグの途中で区切らないのは、"<div id="ID1">"の途中で区切ると、タグ名や属性名、属性値が途中で切れてしまう可能性があるためであり、文字列要素"abcdef"の途中で区切らないのは、タグで挟まれた文字列や文章が、それ自身で1つの意味のある文字列や文章を形成している場合が多く、意味のある文字列や文章を途中で分断することは避けた方が望ましいためである。
さらに、データ処理装置200がXHTML文書のような電子書籍を表示する表示装置である場合は、上記の制限に加え、改行タグの直後や、段落の先頭など、行頭から表示が始まる個所を境界候補とすることが望ましい。例えば、図12の(A)に具体例が示されるXHTML文書を、行の途中で2つのブロック60,61に区切った場合を考える。この時、XHTML文書の先頭から表示した場合の表示例を図12の(B)に示す。
ブロック60が行の途中で終わる場合、ブロック61は行の途中(3行目の7文字目以降)からレイアウトされることになる。一方、ユーザ等により、ブロック61の先頭から表示するよう指示された場合、ブロック61のみを読込んでレイアウト計算がされるため、図12の(C)のようにブロック61は行の先端から表示される。そのため、ユーザによって、ブロック61から60へ、文章とは逆方向にスクロール指示がされると、図12の(B)と(C)とのようにブロック61の表示開始位置が異なるため、ブロック切替わり時に表示が乱れてしまう。
これに対し、ブロックの分割位置を行頭から表示が始まる個所に限定しておくと、直前のブロックのレイアウト結果によることなく、常に行頭からレイアウトすることになるため、このような問題が生じない。よって、XHTML文書のような電子書籍の場合は、ブロックの境界候補を、タグの直前もしくは直後であり、しかも表示が常に行頭となる個所から抽出する。
次に、ステップS303により抽出された境界候補の数により、ステップS304により条件が分岐される。
もし境界候補が見つからなければ、ステップS302に移り、探索範囲をファイルの下方にずらして、先に述べたのと同様にしてステップS302以降の処理をする。
一方、境界候補が存在していれば、ステップS302で設定した探索範囲の中心に一番近い候補を選び、境界に設定する(ステップS305)。そして、ステップS306により、ブロックの開始/終了位置の、ファイル先頭からの位置および階層関係を調べ、ブロック情報2に記録する1ブロック分の情報を取得する。
そしてこのブロックの終端がファイルの終端かどうかを調べ(ステップS308)、終端でなければステップS302に移り、次のブロックの調査を続ける。
一方、ファイルの終端と一致すれば、ステップS308により、S301からS307で調べたブロック情報と電子データのファイル名とをブロック補助データに記録する。この時、もし必要ならばリンク先情報も調査し、ブロック補助データに記録するようにする。ステップS308が終わると、ブロック補助データ作成処理が終了する。
なお、本実施の形態は、ブロック補助データ作成部205がデータ処理装置200内にある場合について説明したが、ブロック補助データ作成部205を第1の実施の形態で説明したサーバ110に備え、そこでブロック補助データを作成することも可能である。
この場合の処理の流れは本実施の形態で説明した通りである。また、ブロック補助データ作成部205の機能を実現するハードウェアまたはソフトウェアを汎用のパーソナルコンピュータ(図示せず)に組込むことにより、一般的な文書記述言語で記述されたコンテンツを本願特有のデータ構造を備えるコンテンツに変換させることができる。このようにして生成されたコンテンツを図1のサーバ110にアップロードして、サーバ110からユーザのパソコン115にダウンロードさせることができる。このような構成により、データ処理装置100に表示させるコンテンツを作成し販売するシステムを構築することができる。このようなシステムは、データ処理装置100が電子ブックビューアの場合には、汎用の文書記述言語で記述された電子ブックコンテンツをデータ処理装置100専用のデータ構造に変換して提供する場合に有効である。
また、本実施の形態では所々で表示装置を例に挙げて説明したが、以上の説明から明らかなように、本発明は、ブロック補助データを作成して処理することによって、階層構造をもつ電子データの一部分のみを読出して処理できることに特徴がある。そのため、図9のブロック図において、処理部206を処理装置固有の処理部に替えることで、表示装置に限らず、一般のデータ処理装置に対しても本発明を適用できる。
(第3の実施の形態)
次に、本発明の第3の実施の形態について説明する。
図13は、本発明の第3の実施の形態に係るデータ処理装置のブロック図の一例である。説明のため、データ表示装置を例に挙げて説明する。
図13に示すように、本実施の形態におけるデータ表示装置は、文書DB(データベース)301、サーバ処理部302、およびクライアント処理部304の大きく3つに分かれ、サーバ処理装置302とクライアント処理部304とはネットワーク回線303により接続されている。
文書DB301には処理する電子データおよびそれに付随するブロック補助データが格納されている。
サーバ処理部302は、文書DB301から電子データとブロック補助データとを読込む入力部305と、電子データに対するブロック補助データが存在しないときにブロック補助データを作成し文書DB301に記録するブロック補助データ作成部306と、クライアント処理部304からの要求を受付けると共に、指定されたデータをクライアント処理部304に送信する送受信部307とから構成される。
クライアント処理部304は、処理する電子データやスクロール指示などのユーザからの指示を処理するユーザ指示処理部309と、ユーザ指示処理部309で解析したユーザからの指示内容などをサーバ処理部302に送信すると共に、サーバ処理部302から送られてきたデータを受信する送受信部308と、サーバ処理部302から送られてきた電子データの階層構造を解析するデータ構造解析部310と、データ構造解析部310で解析された階層構造を用いて、電子データの表示レイアウトを計算するレイアウト計算部311と、レイアウト計算部311によって計算したレイアウトに基づき表示する表示部312とから構成される。なお、レイアウト計算部311によって表示レイアウトを計算した結果、表示部312の途中までしか表示レイアウトが定まらなかった場合、送受信部308を通じて、必要なデータを送信するようにサーバ処理部302に要求を出す場合もある。
次に、図14、図15を使って、本実施の形態のデータ表示装置における処理の流れを説明する。
図14を参照して、まず、ユーザから処理したい電子データが指定されると、サーバ処理部302に処理したい電子データのファイル名が送られる(ステップS301)。サーバ処理部302では、その電子データに対するブロック補助データが文書DB301内に存在するかどうかを調べ(ステップS302)、存在していなければステップS303に移り、ブロック補助データを作成し、ステップS304に移る。ステップS303での処理は、図11を用いて説明した処理と同様であるため、ここでの説明は繰返さない。一方、ステップS302でブロック補助データが存在していた場合は、何もせずステップS304に移る。
そしてステップS304において、ブロック補助データがクライアント処理部304に送られ、クライアント処理部304で受信される(ステップS305)。
なお、このうちステップS301において、表示部312の画面サイズやメモリ量などからブロック分割する際のサイズの目標値を、電子データのファイル名と共に伝え、サーバ処理部302はそのブロックサイズを元に、ブロック補助データを作成するようにしてもよい。このように構成することで、クライアント処理部304の処理能力に応じたブロック分割が可能となり、最終的にユーザの使い勝手の向上につながる。
次に、図15を参照して、クライアント処理部304は、ブロック補助データを受信すると、受取ったブロック補助データを解析し、各ブロックの開始/終了位置と、画面に表示しようとしている領域のファイル先頭からの位置を元に、どのブロックを読込みかを判断し、読込みたいブロックをサーバ処理部302に伝える(ステップS306)。
サーバ処理部302はその要求を受付けると、指定されたブロックを文書DB301から読込み、クライアント処理部304に返す(ステップS307)。クライアント処理部304は、受取ったブロックデータとブロック補助データの内容とから、先に述べたステップS105と同様の処理を行ない、以降ステップS106から、先に述べたステップS105と同様の処理を行なう(ステップS309〜ステップS314)。
このようにすることで、処理する電子データがサーバ上にある場合でも、階層構造を考慮しながら電子データの一部分のみを読込んで処理ができるため、電子データ全体を読込んで処理する場合に比べ、高速に処理ができ、使用するメモリも少なくて済む。また電子データの一部のみを処理する場合には、ネットワーク上でやり取りするデータ量を減らすことも可能である。
なお、本実施の形態においては、ブロック補助データ作成部306がサーバ処理部302内にある場合について説明したが、ブロック補助データ作成部306を文書DB301、あるいはクライアント処理部304に備え、ブロック補助データを文書DB301、あるいはクライアント処理部304で作成することも可能である。
また、上記の説明ではデータ表示装置を例に挙げて説明したが、以上の説明から明らかなように、本発明はブロック補助データを用いて処理することによって、階層構造をもつ電子データの一部分のみを受信して処理できることに特徴がある。そのため図13のブロック図において、レイアウト計算部311および表示部312を処理装置固有の処理部に替えることで、表示装置に限らず、一般のデータ処理装置に対しても本発明を適用できる。
また、上述の第1〜3の実施の形態における処理の一部または全部を、コンピュータによる処理に適した命令の順番付けられた列からなるもの(プログラム)として提供することも可能である。さらに、これらのプログラムは、そのプログラムのインストール、実行、プログラムの流通のために、そのプログラムを記録したコンピュータ読取可能な記録媒体として提供することも可能である。
また、上述のプログラムまたは第1〜3の実施の形態におけるデータ構造を備えるコンテンツデータを、ネットワークを介してサーバ装置からクライアント装置に送信して提供することも可能である。その場合は、例えば、図1のサーバ110にプログラムまたはコンテンツデータを送信する送信部を備えることにより実現可能である。
本実施の形態におけるデータベース処理装置が、以上のように構成されていることで、階層構造をもつ電子データであっても、電子データに対して用意したブロック補助データを用いて、階層構造を考慮しながら、電子データの一部分のみを読込んで処理ができる。そのため、電子データ全体を読込んで処理する場合に比べ、高速に処理ができ、使用するメモリも少なくて済む。また、ブロック補助データにリンク先の位置情報を用意することで、XHTML文書のリンク機能のように任意のブロックに移動する場合であっても、高速に移動ができる。
また、第2の実施の形態におけるデータ処理装置では、ブロック補助データをもたない電子データであっても、いったんブロック補助データを作成した後に処理するようにしたので、ブロック補助データをもたない電子データに対しても、同様に高速かつ低メモリ使用量で処理ができる。
さらに本実施の形態におけるデータ処理装置は、ブロックの大きさをほぼ均等な大きさに分割するので、ユーザからのスクロール指示によって前後のブロックに表示を移動する場合であっても、ほぼ同じ処理時間で表示される。そのため、ユーザにあまり違和感を感じさせないというメリットがある。また、サイズが極端に大きいブロックが存在すると、処理装置によっては、作業用メモリが不足して正常に動作しない可能性があるが、大きさがほぼ均等となっているため、そのような問題も生じにくくなる。
また、第3の実施形態におけるデータ処理装置では、電子データおよびブロック補助データがネットワーク接続されたサーバ上にある場合でも、階層構造を考慮しながら、電子データの一部分のみを読込んで処理ができる。そのため、電子データ全体をサーバからダウンロードして処理する場合に比べ、高速に処理ができ、使用するメモリも少なくて済む。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
以上のように、この発明によれば、階層構造をもつ電子データを、高速にかつ低メモリで処理することができるので、本発明は、データ処理方法、データ処理プログラムおよびデータ処理装置に有利に適用することができる。
100,200 データ処理装置、101 電子データ、102 ブロック補助データ、110 サーバ、111 記録媒体、114 ネットワーク、115 パソコン。

Claims (3)

  1. コンピュータによる、階層構造を有する電子データと、前記電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含む構造化データを処理するデータ処理方法であって、
    前記ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録し
    前記コンピュータは、入力手段と、解析手段と、処理手段と、表示手段と、制御手段とを含み、
    前記制御手段が、前記ブロック補助データを参照して、前記電子データのうちの処理対象とする部分を含むブロックを特定するステップと、
    前記入力手段が、前記電子データに含まれるブロックの中から前記特定されたブロックのみを読込むステップと、
    前記解析手段が、前記読込まれたブロックの前記ブロック補助データに記録されている先頭位置制御コードと、前記読込まれたブロックと、前記読込まれたブロックのブロック補助データに記録されている終端位置制御コードとから、前記読込まれたブロックの、前記電子データの階層構造中の階層を解析するステップと、
    前記処理手段が、前記解析された結果を用いて、前記読込んだブロックの表示レイアウトを計算し、前記表示手段で表示する処理をするステップとを備える、データ処理方法。
  2. コンピュータに、階層構造を有する電子データと、前記電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含む構造化データの処理を実行させるためのデータ処理プログラムであって、
    前記ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録し
    前記コンピュータは、入力手段と、解析手段と、処理手段と、表示手段と、制御手段とを含み、
    前記制御手段が、前記ブロック補助データを参照して、前記電子データのうちの処理対象とする部分を含むブロックを特定するステップと、
    前記入力手段が、前記電子データから前記特定されたブロックを読込むステップと、
    前記解析手段が、前記読込まれたブロックの前記ブロック補助データに記録されている先頭位置制御コードと、前記読込まれたブロックと、前記読込まれたブロックのブロック補助データに記録されている終端位置制御コードとから、前記読込まれたブロックの、前記電子データの階層構造中の階層を解析するステップと、
    前記処理手段が、前記解析された結果を用いて、前記読込んだブロックの表示レイアウトを計算し、前記表示手段で表示する処理をするステップとを前記コンピュータに実行させる、データ処理プログラム。
  3. 構造化データを入力するための入力手段と、
    表示手段と、
    前記電子データのうちの少なくとも一部を前記表示手段で表示する処理を実行するための処理手段と、
    前記入力手段での前記構造化データの入力、および前記処理手段での処理を制御するための制御手段とを備え、
    前記構造化データは、階層構造を有する電子データと、前記電子データを複数のブロックに区切って該ブロックごとに処理するための情報を記録したブロック補助データとを含み、
    前記ブロック補助データは、ブロックごとに、当該ブロックの電子データ上での位置を記録した格納位置情報と、該ブロックの先頭位置で閉じられていない制御コードからなる先頭位置制御コードと、該ブロックの終端位置で閉じられていない制御コードからなる終端位置制御コードとを記録し
    前記制御手段は、
    前記ブロック補助データを参照して、前記電子データのうちの処理対象とする部分を含むブロックを特定する処理と、
    前記電子データから前記特定されたブロックを前記入力手段で入力する処理と、
    前記入力されたブロックの前記ブロック補助データに記録されている先頭位置制御コードと、前記入力されたブロックと、前記入力されたブロックのブロック補助データに記録されている終端位置制御コードとから、前記読込まれたブロックの、前記電子データの階層構造中の階層を解析する処理と、
    前記解析された結果を用いて、前記処理手段に前記読入力されたブロックの表示レイアウトを計算させて前記表示手段で表示させる処理とを実行する、データ処理装置。
JP2009009082A 2001-06-14 2009-01-19 データ処理方法、データ処理プログラム、およびデータ処理装置 Expired - Lifetime JP4990302B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009009082A JP4990302B2 (ja) 2001-06-14 2009-01-19 データ処理方法、データ処理プログラム、およびデータ処理装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001179415 2001-06-14
JP2001179415 2001-06-14
JP2009009082A JP4990302B2 (ja) 2001-06-14 2009-01-19 データ処理方法、データ処理プログラム、およびデータ処理装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003505803A Division JP4794127B2 (ja) 2001-06-14 2002-06-12 データ処理方法、データ処理プログラム、およびデータ処理装置

Publications (3)

Publication Number Publication Date
JP2009134741A JP2009134741A (ja) 2009-06-18
JP2009134741A5 JP2009134741A5 (ja) 2009-07-30
JP4990302B2 true JP4990302B2 (ja) 2012-08-01

Family

ID=19019974

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2003505803A Expired - Lifetime JP4794127B2 (ja) 2001-06-14 2002-06-12 データ処理方法、データ処理プログラム、およびデータ処理装置
JP2009009082A Expired - Lifetime JP4990302B2 (ja) 2001-06-14 2009-01-19 データ処理方法、データ処理プログラム、およびデータ処理装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2003505803A Expired - Lifetime JP4794127B2 (ja) 2001-06-14 2002-06-12 データ処理方法、データ処理プログラム、およびデータ処理装置

Country Status (7)

Country Link
US (1) US20050165835A1 (ja)
EP (3) EP1770547B1 (ja)
JP (2) JP4794127B2 (ja)
KR (1) KR100556647B1 (ja)
AT (1) ATE382169T1 (ja)
DE (1) DE60224271T2 (ja)
WO (1) WO2002103554A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4087270B2 (ja) * 2003-03-13 2008-05-21 シャープ株式会社 データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JP3905851B2 (ja) * 2003-03-24 2007-04-18 株式会社東芝 構造化文書の分割方法及びプログラム
WO2005062198A1 (ja) * 2003-12-19 2005-07-07 Sharp Kabushiki Kaisha データ生成方法、データ処理方法、データ生成装置、データ処理装置、データ生成プログラム、データ処理プログラム、データ生成プログラムを記録した記録媒体、およびデータ処理プログラムを記録した記録媒体
JP3886962B2 (ja) * 2003-12-19 2007-02-28 シャープ株式会社 データ生成方法、データ生成装置、データ生成プログラム、およびデータ生成プログラムを記録した記録媒体
JP3822211B2 (ja) * 2004-03-19 2006-09-13 シャープ株式会社 データ処理方法、データ処理装置、データ処理プログラム、およびデータ処理プログラムを記録した記録媒体
US7418652B2 (en) * 2004-04-30 2008-08-26 Microsoft Corporation Method and apparatus for interleaving parts of a document
WO2005109241A1 (ja) * 2004-05-11 2005-11-17 Atl Systems, Inc. データ構造、構造化データ管理システム及び構造化データ管理方法並びに構造化データ管理プログラム
JP3964423B2 (ja) 2004-10-22 2007-08-22 シャープ株式会社 コンテンツデータ作成装置、コンテンツデータ作成方法、コンテンツデータ作成用プログラム、および、コンテンツデータ表示装置
US20070079236A1 (en) * 2005-10-04 2007-04-05 Microsoft Corporation Multi-form design with harmonic composition for dynamically aggregated documents
JP4771915B2 (ja) * 2006-11-15 2011-09-14 京セラミタ株式会社 Htmlテキストを変換する装置、方法、およびプログラム
US7930646B2 (en) * 2007-10-19 2011-04-19 Microsoft Corporation Dynamically updated virtual list view
JP4628450B2 (ja) * 2008-07-01 2011-02-09 シャープ株式会社 データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
EP2439182B1 (en) 2009-06-04 2021-03-17 Tosoh Corporation High-strength transparent zirconia sintered body and process for production thereof
JP5538159B2 (ja) * 2010-09-22 2014-07-02 シャープ株式会社 ページ数決定装置、ページ数決定方法、ページ数決定プログラム、及びコンピュータ読み取り可能な記録媒体
CN103164388B (zh) * 2011-12-09 2016-07-06 北大方正集团有限公司 一种版式文件中结构化信息获取的方法及装置
KR20150111221A (ko) * 2014-03-25 2015-10-05 삼성전자주식회사 페이지 구성 방법 및 이를 지원하는 전자장치

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6267670A (ja) * 1985-09-20 1987-03-27 Toshiba Corp 文書編集システム
JPS6438866A (en) * 1987-08-05 1989-02-09 Hitachi Ltd Document editing device
US5452446A (en) * 1992-11-12 1995-09-19 Spx Corporation Method and apparatus for managing dynamic vehicle data recording data by current time minus latency
US5754840A (en) * 1996-01-23 1998-05-19 Smartpatents, Inc. System, method, and computer program product for developing and maintaining documents which includes analyzing a patent application with regards to the specification and claims
JPH09259028A (ja) * 1996-03-19 1997-10-03 Toshiba Corp 情報呈示方法
JPH10143498A (ja) * 1996-11-08 1998-05-29 Nippon Telegr & Teleph Corp <Ntt> リンク付与機能を持つページ分割通信中継装置
JPH10143403A (ja) * 1996-11-12 1998-05-29 Fujitsu Ltd 情報管理装置および情報管理プログラム記憶媒体
JPH10269160A (ja) * 1997-03-28 1998-10-09 Matsushita Electric Ind Co Ltd データ配信表示装置
US6134552A (en) * 1997-10-07 2000-10-17 Sap Aktiengesellschaft Knowledge provider with logical hyperlinks
US6185585B1 (en) * 1997-12-16 2001-02-06 Corporate Media Partners System and method for distribution and navigation of internet content
US6032152A (en) * 1997-12-31 2000-02-29 Intel Corporation Object factory template
US6256622B1 (en) * 1998-04-21 2001-07-03 Apple Computer, Inc. Logical division of files into multiple articles for search and retrieval
US6560616B1 (en) * 1999-03-26 2003-05-06 Microsoft Corporation Robust modification of persistent objects while preserving formatting and other attributes
GB2357348A (en) * 1999-12-18 2001-06-20 Ibm Using an abstract messaging interface and associated parsers to access standard document object models
JP2001195391A (ja) * 2000-01-14 2001-07-19 Nec Information Service Ltd フォーマット変換・ページ分割中継サーバ
US6789229B1 (en) * 2000-04-19 2004-09-07 Microsoft Corporation Document pagination based on hard breaks and active formatting tags
WO2001089171A2 (en) * 2000-05-16 2001-11-22 Mshift, Inc. System for providing network content to wireless devices
US7143181B2 (en) * 2000-08-31 2006-11-28 Yohoo! Inc. System and method of sending chunks of data over wireless devices
US7613810B2 (en) * 2000-09-27 2009-11-03 Nokia Inc. Segmenting electronic documents for use on a device of limited capability

Also Published As

Publication number Publication date
KR20040011537A (ko) 2004-02-05
JP2009134741A (ja) 2009-06-18
EP1770547A2 (en) 2007-04-04
WO2002103554A1 (fr) 2002-12-27
EP1396793A1 (en) 2004-03-10
EP1770548A3 (en) 2007-04-11
US20050165835A1 (en) 2005-07-28
JP4794127B2 (ja) 2011-10-19
EP1770548A2 (en) 2007-04-04
EP1770547B1 (en) 2012-09-12
DE60224271T2 (de) 2008-12-18
EP1396793B1 (en) 2007-12-26
DE60224271D1 (de) 2008-02-07
JPWO2002103554A1 (ja) 2004-10-07
EP1396793A4 (en) 2006-02-22
EP1770547A3 (en) 2007-04-11
KR100556647B1 (ko) 2006-03-06
ATE382169T1 (de) 2008-01-15

Similar Documents

Publication Publication Date Title
JP4990302B2 (ja) データ処理方法、データ処理プログラム、およびデータ処理装置
US7085999B2 (en) Information processing system, proxy server, web page display method, storage medium, and program transmission apparatus
US6950984B2 (en) Method, system for, and program product for generating a display rule for a structured document, and for changing a structured document and its document type definition
US7176931B2 (en) Modifying hyperlink display characteristics
JP4344693B2 (ja) ブラウザの文書編集のためのシステムおよびその方法
JP4290011B2 (ja) ビューワ装置及びその制御方法、プログラム
US20030110442A1 (en) Developing documents
US20080040659A1 (en) Markup Language Translator System
US20040041818A1 (en) Design system for website text graphics
JP2004519116A (ja) テレビエンハンスメントのためのシステムおよび方法
KR20080053930A (ko) 문서 레이아웃의 적응을 용이하게 하는 시스템과, 콘텐트를배열하는 컴퓨터 구현 방법 및 컴퓨터 구현 시스템
GB2378288A (en) Improvements relating to developing documents
WO2006137562A1 (ja) 文書処理装置及び文書処理方法
JP2005234837A (ja) 構造化文書処理方法、構造化文書処理システム及びそのプログラム
JP2002215519A (ja) ウェブページ生成方法およびシステム、ウェブページ生成プログラム、記録媒体
KR102119560B1 (ko) Svg 포맷을 이용한 폰트 편집 방법, 시스템 및 컴퓨터 판독 가능한 기록매체
JP4935396B2 (ja) Webコンテンツ提供装置、Webコンテンツ提供方法およびプログラム
JP4173770B2 (ja) データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JPH09265431A (ja) ドキュメント編集方法及び装置と、ドキュメント編集装置を含むクライアント装置
JP2004280278A (ja) データ処理装置、データ処理方法、データ処理プログラム、および、記録媒体
JP3712320B2 (ja) 可変文書作成システム、可変文書出力装置及び可変原稿作成装置
JP2003196194A (ja) リンク処理方法及び装置
JP4337309B2 (ja) ブラウザ装置
JP4628450B2 (ja) データ処理装置、データ処理方法、データ処理プログラムおよび記録媒体
JP2001188797A (ja) 文書処理装置及び記録媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111124

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: 20120424

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120501

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4990302

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

EXPY Cancellation because of completion of term