(57)【要約】【課題】構造化タグ言語で記述された文書に対して処理の速い処理装置等を提供すること。【解決手段】構造化タグ言語により記述された文書に対する処理を行う処理装置において、前記文書内でデリミター間に存在するタグが記憶される第１の記憶手段と、前記第１の記憶手段に記憶された前記タグに対し前記タグを構成する文字列が正しいか否かを確認することなく読み出す処理手段と、を備えることを特徴としている。【選択図】図２
2006085267.tif 000002
【特許請求の範囲】
【請求項１】
構造化タグ言語により記述された文書に対する処理を行う処理装置において、
前記文書内でデリミター間に存在するタグが記憶される第１の記憶手段と、
前記第１の記憶手段に記憶された前記タグに対し前記タグを構成する文字列が正しいか否かを確認することなく読み出す処理手段と、
を備えることを特徴とする処理装置。
【請求項２】
請求項１記載の処理装置において、
前記第１の記憶手段に記憶される前記タグの文字数は所定数に制限され、前記処理手段は前記文字数が所定数を超えるときエラーとする、ことを特徴とする処理装置。
【請求項３】
請求項１記載の処理装置において、
更に前記文書内に含まれるタグと開始タグ及び終了タグの間にあるテキストとを識別する識別手段と、
前記識別手段で識別された前記テキストが記憶される第２の記憶手段と、
を備え、前記第１の記憶手段には前記識別手段で識別された前記タグが記憶され、更に前記第２の記憶手段に記憶される前記テキストの文字数は所定数に制限され、前記処理手段は前記テキストの文字数が所定数を超えるとき所定数分の文字数を前記第２の記憶手段に記憶させるとともに前記所定数分の文字数の後に更に前記テキストの文字が続くことを示す連結情報を生成する、ことを特徴とする処理装置。
【請求項４】
請求項３記載の処理装置において、
前記処理手段は、前記第２の記憶手段に記憶された前記所定数の文字数のテキストを読み出した後に前記所定数の文字数の後に連続するテキストを前記第２の記憶手段に記憶させ、当該所定数の文字数の後に連続するテキストを前記第２の記憶手段から読み出して処理するときは前記連結情報に基づいて前記テキストが連続するテキストとなるよう処理を行うことを特徴とする処理装置。
【請求項５】
構造化タグ言語により記述された文書に対する処理を行う処理装置における処理方法において、
前記文書内でデリミター間に存在するタグを記憶手段に記憶させる工程と、
前記記憶手段に記憶された前記タグに対し前記タグを構成する文字列が正しいか否かを確認することなく前記タグに対する処理を行う工程と、
を備えることを特徴とする処理方法。
【請求項６】
構造化タグ言語により記述された文書を生成する生成装置と、前記生成装置からの前記文書に対する処理を行う処理装置と、から構成された処理システムにおいて、
前記処理装置には、前記文書内でデリミター間に存在するタグが記憶される記憶手段と、前記記憶手段に記憶された前記タグに対し前記タグを構成する文字列が正しいか否かを確認することなく読み出す処理手段と、
を備えることを特徴とする処理システム。
【請求項７】
請求項６記載の処理システムにおいて、
前記処理装置は、前記生成装置の種類に応じて前記記憶手段に記憶された前記タグを構成する文字列が正しいか否かを確認するか、前記文字列が正しいか否かを確認することなく前記タグを読み出すか、を切換える切換え手段を更に備えることを特徴とする処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＸＨＴＭＬ等の構造化タグ言語により記述された文書を処理する処理装置や処理方法に関する。詳しくは、タグを構成する文字列が正しいか否かを確認することなくその文字列を読み出して処理を行う処理装置等に関する。
【背景技術】
【０００２】
従来からインターネットのホームページ情報をディスプレイ画面上に表示させ、その情報を保存したい場合に印刷することが行われている。ホームページ情報は、一般的にＸＭＬ（eXtensible Markup Language）やＸＨＴＭＬ（eXtensible Hyper Text Markup Language）などの構造化タグ言語により記述される。通常、このような文書に基づいて画像を生成する（表示や印刷など）には、最初に解析処理でかかる文書を解析し、その後、印刷や表示のためのアプリケーション処理が行われる（例えば、非特許文献１、２参照）。
【非特許文献１】中山幹敏、奥井康弘著「改訂版標準ＸＭＬ完全解説上」技術評論社、２００４年６月１日、ｐ４１、ｐ５０−５１
【非特許文献２】“ＸＨＴＭＬTM１．０  Ｔｈｅ  Ｅｘｔｅｎｓｉｂｌｅ  ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ（Ｓｅｃｏｎｄ  Ｅｄｉｔｉｏｎ）”、[online]、２００２年８月１日、Ｗ３Ｃ、[平成１６年７月１９日検索]、インターネット＜URL :  HYPERLINK "http://www.w3.org/TR/xhtml1" http://www.w3.org/TR/xhtml1＞
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の解析処理では文書内の各タグが正確に記述されているか否かのエラーチェックが行われていた。文書が大きければタグの数も多くなり、その分エラーチェックの回数も増えてしまう。そのため、従来では解析処理に時間がかかってしまうという問題点があった。解析処理の遅延は、構造化タグ言語で記述された文書に対する処理全体の遅延をもたらすことになる。
【０００４】
そこで、本発明はかかる問題点に鑑みてなされたものでその目的は、構造化タグ言語で記述された文書に対して処理の速い処理装置等を提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために本発明は、構造化タグ言語により記述された文書に対する処理を行う処理装置において、文書内でデリミター間に存在するタグが記憶される第１の記憶手段と、第１の記憶手段に記憶されたタグに対しタグを構成する文字列が正しいか否かを確認することなく読み出す処理手段と、を備えることを特徴としている。これにより、例えば、タグを構成する文字列が正しいか否かを確認することなくタグを読出し、その後の処理を行うことができるので確認に費やす時間が減り、処理の速い処理装置を提供することができる。
【０００６】
また、本発明は上記処理装置において、第１の記憶手段に記憶されるタグの文字数は所定数に制限され、処理手段は文字数が所定数を超えるときエラーとする、ことを特徴としている。これにより、例えば、第１の記憶手段に記憶される文字数が制限されているため、メモリ容量の削減を図ることができる。
【０００７】
更に、本発明は上記処理装置において、文書内に含まれるタグと開始タグ及び終了タグの間にあるテキストとを識別する識別手段と、識別手段で識別されたテキストが記憶される第２の記憶手段と、を備え、第１の記憶手段には識別手段で識別されたタが記憶され、更に第２の記憶手段に記憶されるテキストの文字数は所定数に制限され、処理手段はテキストの文字数が所定数を超えるとき所定数分の文字数を第２の記憶手段に記憶させるとともに所定数分の文字数の後に、これに続く更にテキストの文字が続くことを示す連結情報を生成する、ことを特徴としている。これにより、例えば、第２の記憶手段に記憶される文字数が制限されるためメモリ容量を小さくすることができる。また、連結情報に基づいて処理を行えば、制限された文字数より長い文字数のテキストでも連続したテキストとして読み出し、その後の処理を行うことができる。
【０００８】
更に、本発明は上記処理装置において、上記処理手段は、第２の記憶手段に記憶された所定数の文字数のテキストを読み出した後に所定数の文字数の後に連続するテキストを第２の記憶手段に記憶させ、所定数の文字数の後に連続するテキストを第２の記憶手段から読み出して処理するときは連結情報に基づいてテキストが連続するテキストとなるよう処理を行うことを特徴としている。これにより、例えば、容量の小さいメモリを用いても、連続したテキストの読み出しを行うことができる。
【０００９】
また、上記目的を達成するために本発明は、構造化タグ言語により記述された文書に対する処理を行う処理装置における処理方法において、文書内でデリミター間に存在するタグを記憶手段に記憶させる工程と、記憶手段に記憶されたタグに対しタグを構成する文字列が正しいか否かを確認することなくタグに対する処理を行う工程と、を備えることを特徴としている。これにより、例えば、タグを構成する文字列が正しいか否かの確認を行うことなく読み出しを行うため、確認に費やす時間が減り、処理の速い処理方法を提供することができる。
【００１０】
さらに、上記目的を達成するために本発明は、構造化タグ言語により記述された文書を生成する生成装置と、生成装置からの文書に対する処理を行う処理装置と、から構成された処理システムにおいて、処理装置には、文書内でデリミター間に存在するタグが記憶される記憶手段と、記憶手段に記憶された前記タグに対しタグを構成する文字列が正しいか否かを確認することなく読み出す処理手段と、を備えることを特徴としている。これにより、例えば、タグを構成する文字列が正しいか否かを確認することなく処理装置の記憶手段からタグを読み出すようにしたので、処理の速い処理システムを提供することができる。
【００１１】
また、本発明は上記処理システムにおいて、処理装置は、生成装置の種類に応じて記憶手段に記憶されたタグを構成する文字列が正しいか否かを確認するか、文字列が正しいか否かを確認することなくタグを読み出すか、を切換える切換え手段を更に備えることを特徴としている。これにより、例えば、タグを構成する文字列が正しいか否かの確認を行うことなく読み出す場合は、確認のための時間を減らすことができ、処理の速い処理システムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明を実施するための最良の形態を説明する。図１は、本発明が適用される処理システム全体の構成を示す図である。本システムは、全体として生成装置５０と、処理装置１０とから構成される。
【００１３】
生成装置５０は、ＸＭＬやＸＨＴＭＬなどの構造化タグ言語により記述された文書（以下、「文書」）を生成するための装置で、例えば、パーソナルコンピュータやデジタルカメラ、携帯電話等である。
【００１４】
処理装置１０は、生成装置５０からの文書を解析する文書解析部２０と、解析された文書に対して種々の処理を行うアプリケーション部３０とから構成される。本実施例ではアプリケーション部３０に印刷部３１を備え、従って処理装置１０はプリンタとして機能する。
【００１５】
文書解析部２０は、生成装置５０からの文書が入力されて文書内のタグとテキストとを識別するための識別部２１と、識別部２１から出力されたタグを記憶するタグ用メモリ２２と、識別部２１から出力されたテキストを記憶するテキスト用メモリ２３と、タグ用メモリ２２からのタグとテキスト用メモリ２３からのテキストとが入力されて当該文書に対する解析を行う解析処理部２４と、タグ用メモリ２２とテキスト用メモリ２３の書き込みや読出しの制御等を行う制御部２５と、から構成される。また、印刷部３１は本実施例においてレイアウト処理や色変換処理等、印刷のための種々の処理部を含む。
【００１６】
このような構成で本発明の特徴は、タグ用メモリ２２には文書内の区切り文字（以下、「デリミター」）間に存在するタグがそのまま記憶され、そのタグを構成する文字列が正しいか否かを確認することなくその文字列をタグ用メモリ２２から読み出されることにある。確認することなく文字列を読み出すようにしたのでその分処理が速くなる。その詳細は後述する。
【００１７】
なお、解析処理部２４は、文書の階層構造を明らかにするようＤＯＭ（Document Object Model）ツリーと呼ばれるツリー構造を生成する処理を行ってもよいし、要素が出現する毎に対応する処理手順を呼び出しイベント毎にアプリケーション部３０に出力するＳＡＸ（Simple API for XML）の処理を行ってもよい。
【００１８】
このように構成された処理装置１０の動作について説明する。図２は一連の処理の動作を示すフローチャートである。
【００１９】
まず、処理が開始される（Ｓ１０）と、識別部２１に文書が入力される（Ｓ１１）。そして、識別部２１においてタグとテキストとが識別される（Ｓ１２）。図３（Ａ）に示すＸＨＴＭＬ文書が識別部２１に入力された場合、デリミターである“＜”と“＞”とで囲まれた部分がタグで（図３（Ｂ）参照）、開始タグと終了タグとの間の文字列がテキスト（図４参照）である。
【００２０】
識別部２１で文書内の文字列がタグと判断されたとき（Ｓ１２で“タグ”）、制御部２５は、デリミター間に存在するタグとして、タグ内に存在する要素の文字列をそのままタグ用メモリ２２に記憶する（Ｓ１３）。そして、制御部２５はその要素の文字列が正しいか否か確認することなくタグ用メモリ２２からその文字列を読み出す（Ｓ１４）。
【００２１】
例えば、図３（Ｂ）に示す例では、要素の文字列“html”がタグ用メモリ２２に記憶される。そして、その文字列が正しいか否か確認することなく、この文字列“html”を読み出す。従来では、最初の１文字目“h”が正しいか否か確認し、さらにその後に続く文字列“tml”が正しいか否かの確認を行うことで、タグ内の文字列のエラーチェックを行っていた（図５参照）。そのため従来では処理に時間がかかっていた。そこで、本発明は、その文字列が正しいか否かの確認を行うことなくタグ用メモリ２２から要素の文字列を読出す。文字列の確認を行わない分確認に費やす時間が減り、処理を速くすることができる。なお、タグ内のデリミター（“＜”や“＞”、“  ”（空白）など）に対するエラーチェックは本実施例においても行うものとし、タグ用メモリ２２に記憶される前の識別部２１において行う。
【００２２】
ここで、タグ用メモリ２２において記憶できる文字数は所定数に制限される。例えば、図６に示すように４文字に制限されている場合を考える。かかる場合にタグを構成する要素が“html”のとき、このメモリ２２に文字列“html”を記憶することは可能である（図６（Ａ）参照）。一方、文字列が“htmls”など５文字以上のときは記憶することができない（図６（Ｂ）参照）。この場合、かかる文字列はメモリ２２に記憶されず、エラーとして制御部２５から生成装置５０にその情報が出力される。生成装置５０ではエラー情報に基づいてエラーの表示がなされる。エラー表示は処理装置１０内の表示部に表示させるようにしてもよい。
【００２３】
タグ用メモリ２２において記憶可能な文字数は所定数に制限されているので、メモリ容量の削減を図り、さらにコストの低減、安価な処理装置１０の提供等が可能となる。また、タグを構成する文字が正しいか否かの確認は行わないものの、規定の文字数より多い文字列のときはエラーとしている。そのため、要素の文字列の文字数が正しいか否かの確認を行うことが可能となる。
【００２４】
一方、文書内にテキストが存在したとき（Ｓ１２で“テキスト”）、制御部２５はテキストをテキスト用メモリ２３に記憶する（Ｓ１５）。テキストは単なる文字列のため、文字列が正しいか否かの確認は行わない。ただし、テキスト用メモリ２３もタグ用メモリ２２と同様に記憶可能な文字数は所定数に制限される。これにより、タグ用メモリ２２と同様にメモリ容量の削減等を図ることができる。しかしながら、文字数が制限されているため、テキストの文字数が制限された文字数を越えると、連続したテキストとしてメモリ２３への書き込みや読出しができなくなる場合がある。そこで、連結情報を用いてテキストが連続して読み出されるよう処理を行う。
【００２５】
図７に例を示す。この例では、記憶可能な文字数は３文字に制限されている。テキスト“ＡＢＣＤＥＦ”に対し、最初の３文字“ＡＢＣ”が順次メモリ２３に記憶される（図７（Ａ）、（Ｂ）参照）。そして、この例のように、テキストの文字数が記憶可能な文字数を超えるとき、制御部２５ではメモリ２３に記憶される所定数分の文字数の後に更にテキストの文字列が続くことを示す連結情報を生成する。そして、図７（Ｂ）に示すように、この連結情報が制御部２５によってテキスト用メモリ２３に記憶される。この例ではその後に文字列が続くことを示すフラグ“１”が記憶される。この連結情報はメモリ２３に記憶せず制御部２５内で保持する等してもよい。
【００２６】
その後、メモリ２３からテキストが連続となるように読み出す（Ｓ１６）。図８（Ａ）、（Ｂ）に示すように、制御部２５は、最初の３文字“ＡＢＣ”を順次メモリ２３から読出しながら、その後に続く“ＤＥＦ”をメモリ２３に順次書き込む。そして、連結情報を用いることで、“ＤＥＦ”を読み出すときは“ＡＢＣ”の後に連続するように読み出す（図９参照）。これによりテキストが連続して読み出される。
【００２７】
なお、最後の文字列までテキストが記憶されたときに、これ以上文字列が連続しないことを示す連結情報が制御部２５によって生成され、テキスト用メモリ２３に記憶される。図８（Ｂ）の例では、“０”が記憶される。これにより、その後にテキストが連続しないことになり、連続したテキストの読出しが終了する。
【００２８】
このように連結情報を用いることで制限された文字数より多い文字数のテキストに対して連続したテキストとして読み出しが行われ、その後の処理を行うことができる。
【００２９】
また、連続したテキストとして読出しを行っているときにはタグ用メモリ２２から次の開始タグ等の読み出しは行われない。例えば、上述した例では、テキストの文字列“ＡＢＣＤＥＦ”を連続して読出している時にタグ用メモリ２２から次の開始タグ等の読み出しは行われない。これは、例えば“ＡＢＣ”の読出しを行った後であって“ＤＥＦ”を読み出す前に次の開始タグがタグ用メモリ２２から読み出され、解析処理部２４に出力されると順番が崩れ異なる解析結果となってしまうからである。
【００３０】
図２の処理に戻り、タグの読出し（Ｓ１４）、テキストの読出し（Ｓ１６）の後は解析処理部２４において解析処理が行われる（Ｓ１７）。そして、アプリケーション処理として印刷処理が行われ（Ｓ１８）、一連の処理が終了する（Ｓ１９）。なお、本実施例において印刷部３１における印刷処理は、レイアウト処理や色変換処理、印刷エンジンによる実際の印刷処理等も含まれる。
【００３１】
上述の例では、タグ用メモリ２２からタグを構成する要素の文字列が正しいか否か確認することなくその文字列を読み出すようにしたが、生成装置５０の種類に応じて確認を行うか確認を行わないかを切換えるようにしてもよい。例えば、生成装置５０がパーソナルコンピュータのときは特定の種類のものとして文字列の確認を行うが、デジタルカメラのときは確認を行わない、などである。その例を図１０に示す。
【００３２】
図１０で図１と同じ構成は同一の記号で示されている。本図に示すように、タグ用メモリ２２と解析処理部２４との間には切換え部２６を備える。タグ用メモリ２２から出力されたタグを構成する文字列はこの切換え部２６によりエラー検出部２７か解析処理部２４かいずれかに出力される。制御部２５は生成装置５０の種類に応じて切換え部２６の切換えを行う。
【００３３】
処理の詳細について図１１のフローチャートを用いて説明する。図２と同一の処理の部分は同一の記号で記されている。デリミター間に存在するタグとして、タグ内の要素をタグ用メモリ２２に記憶した（Ｓ１３）後、制御部２５は生成装置５０が特定の種類のものか否かを判断する（Ｓ２０）。例えば、処理装置１０内のメモリにテーブルが記憶され、テーブル内に特定の種類に関する情報が記述される。そして、生成装置５０の種類に関する情報が生成装置５０から入力され、制御部２５がこの情報とテーブルとを参照することで、特定の種類か否かを判断する。
【００３４】
そして、特定の種類のとき（“ＹＥＳ”のとき）、メモリ２２から読み出された要素はエラー検出部２７に出力されその文字列が正しいか否かの確認を行う（Ｓ２１）。一方、特定の種類でないとき（Ｓ２０で“ＮＯ”のとき）、メモリ２２から読み出されたその文字列は正しいか否か確認することなく解析処理部２４に出力される（Ｓ１４）。
【００３５】
なお、エラー検出部２７で文字列の確認を行い、正しければその要素の文字列は解析処理部２４に出力され、正しくないとエラー情報が制御部２５を経由して生成装置５０に出力される。
【００３６】
このように生成装置５０の種類に応じてタグを構成する文字列が正しいか否かを確認するか、確認することなく読み出すかを選択し切換えるようにしたので、確認を行わない場合にはその分解析処理が速くなり処理装置１０全体の処理を早くすることができる。
【００３７】
また、この図１０の例では生成装置５０がパーソナルコンピュータのときは文字列の確認を行い、デジタルカメラのとき文字列の確認を行わないようにした。それ以外にも、ユーザが任意の文字列を入力してタグを生成する生成装置５０では文字列の確認を行い、ユーザが予め用意されたタグを選択する生成装置５０では文字列の確認を行わないようにしてもよい。
【００３８】
さらに、上述の例では、デリミター間に存在するタグとして、タグ内の要素をタグ用メモリ２２に記憶し、その要素の文字列が正しいか否か確認することなく読み出すようにした。これ以外にも、タグを構成する文字列として、要素以外の文字列もメモリ２２に記憶してもよい。例えば、図３（Ｂ）で名前空間を示す“xmlns="http://www.w3.org/1999/xhtml"”などである。そして、これらの文字列が正しいか否か確認することなく読み出すことで処理を早くすることができる。さらに、タグを構成するデリミター以外の文字列すべてをメモリ２２に記憶し、文字列すべて正しいか否か確認することなく読み出すようにしてもよい。いずれの場合も上述した例と同様に、確認に費やす時間が減るため、処理を速くすることができる。
【００３９】
さらに、上述の例ではタグ用メモリ２２とテキスト用メモリ２３をそれぞれ独立したメモリとして構成したが、タグ用とテキスト用の領域を同一メモリの別アドレスに割り当てるようにしてもよい。
【００４０】
さらに、上述の例では処理装置１０の例としてプリンタを用いて説明したが、それ以外にもディスプレイなどの表示装置や、ファクシミリ、複写機などであってもよい。この場合に処理装置１０が表示装置等として機能するためにアプリケーション部３０は種々の処理部から構成される。また、生成装置５０がパーソナルコンピュータで本発明に係る文書解析部２０がこのコンピュータ内に実装されていてもよい。この場合に処理装置１０はアプリケーション部３０のみ備え、印刷や表示等を行う。いずれの場合も上述した例と同様の作用効果を奏する。
【図面の簡単な説明】
【００４１】
【図１】本発明が適用されるシステム全体の構成を示す図である。
【図２】文書解析部２０での処理の動作を示すフローチャートである。
【図３】ＸＨＴＭＬ文書の例とタグの例を示す図である。
【図４】テキストの例を示す図である。
【図５】タグを構成する文字列に対するエラーチェックの例を示す図である。
【図６】タグ用メモリ２２に記憶される要素の例を示す図である。
【図７】テキスト用メモリ２３に記憶されるテキストの例を示す図である。
【図８】テキスト用メモリ２３に記憶されるテキストの例を示す図である。
【図９】テキスト用メモリ２３に記憶されるテキストの例を示す図である。
【図１０】本発明が適用されるシステム全体の他の構成を示す図である。
【図１１】文書解析部２０での他の処理の動作を示すフローチャートである。
【符号の説明】
【００４２】
１０  処理装置、  ２０  文書解析部、  ２１  識別部、  ２２  タグ用メモリ、  ２３  テキスト用メモリ、  ２４  解析処理部、  ２５  制御部、  ２６  切換え部、  ２７  エラー検出部、  ３０  アプリケーション部、  ３１  印刷部、  ５０  生成装置
【図１】
2006085267.tif 000003
【図２】
2006085267.tif 000004
【図３】
2006085267.tif 000005
【図４】
2006085267.tif 000006
【図５】
2006085267.tif 000007
【図６】
2006085267.tif 000008
【図７】
2006085267.tif 000009
【図８】
2006085267.tif 000010
【図９】
2006085267.tif 000011
【図１０】
2006085267.tif 000012
【図１１】
2006085267.tif 000013