(57)【要約】【課題】  速やかに不要な情報を読み飛ばすことが可能な構造化文書を生成することを目的とする。【解決手段】  マークアップ言語で表された構造化文書を処理する情報処理装置であって、文書生成手段と、開始位置判断手段と、終了位置判断手段と、文字挿入手段とを有し、文書生成手段は、所定の要素に関して、開始位置と、終了位置との間の長さが所定の長さになるよう、文字挿入手段を用いて開始位置と、終了位置との間に所定の文字を挿入した上で構造化文書を生成することによって上記課題を解決する。【選択図】  図４
2007080206.tif 000002
【特許請求の範囲】
【請求項１】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を生成する文書生成手段と、
前記文書生成手段が構造化文書を生成する際に、所定の要素の開始位置を判断する開始位置判断手段と、
前記文書生成手段が構造化文書を生成する際に、前記所定の要素の終了位置を判断する終了位置判断手段と、
前記文書生成手段が構造化文書を生成する際に、所定の文字を挿入する文字挿入手段とを有し、
前記文書生成手段は、前記所定の要素に関して、前記開始位置と、前記終了位置との間の長さが所定の長さになるよう、前記文字挿入手段を用いて前記開始位置と、前記終了位置との間に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする情報処理装置。
【請求項２】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を生成する文書生成手段と、
前記文書生成手段が構造化文書を生成する際に、所定の要素の開始位置を判断する開始位置判断手段と、
前記文書生成手段が構造化文書を生成する際に、所定の文字を挿入する文字挿入手段とを有し、
前記文書生成手段は、前記所定の要素に関して、構造化文書の既定の位置から前記開始位置までの長さが所定の長さになるよう、前記文字挿入手段を用いて前記開始位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする情報処理装置。
【請求項３】
前記文書生成手段は、所定の要素以外の要素に関して、構造化文書の既定の位置から前記開始位置までの長さが所定の長さにならないよう、前記文字挿入手段を用いて前記開始位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする請求項２記載の情報処理装置。
【請求項４】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を生成する文書生成手段と、
前記文書生成手段が構造化文書を生成する際に、所定の要素の終了位置を判断する終了位置判断手段と、
前記文書生成手段が構造化文書を生成する際に、所定の文字を挿入する文字挿入手段とを有し、
前記文書生成手段は、前記所定の要素に関して、構造化文書の既定の位置から前記終了位置までの長さが所定の長さになるよう、前記文字挿入手段を用いて前記終了位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする情報処理装置。
【請求項５】
前記文書生成手段は、所定の要素以外の要素に関して、構造化文書の既定の位置から前記終了位置までの長さが所定の長さにならないよう、前記文字挿入手段を用いて前記終了位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記文字挿入手段は、構造化文書に、前記所定の文字を挿入したことを意味する文字又は文字列を挿入することを特徴とする請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を文書の先頭から順次読み取る文書読取手段と、
前記文書読取手段が構造化文書を読み取る際に、読み取り中の要素が所定の要素か否かを判断する要素判断手段と、
前記要素判断手段において読み取り中の要素が所定の要素であると判断された場合には、所定の位置まで文書を読み飛ばすことを特徴とする情報処理装置。
【請求項８】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を文書の先頭から一文字ずつ順次読み取る第一の文書読取手段と、
前記第一の文書読取手段が読み取った文字に係る文字列に基づいて、所定の要素の開始を意味する文字列か否かを判断する所定要素開始判断手段と、
前記構造化文書の既定の位置から所定長の整数倍の位置にある文字を順次読み取る第二の文書読取手段と、
前記第二の文書読取手段が読み取った文字が、前記所定の要素の終了を意味する文字か否かを判断する要素終了判断手段と、
前記所定要素開始判断手段において、前記第一の文書読取手段が読み取った文字に係る文字列が、所定の要素の開始を意味する文字列であると判断された場合には、前記第一の文書読取手段による読み取りを、前記第二の文書読取手段による読み取りに切り替え、前記要素終了判断手段において、前記第二の文書読取手段が読み取った文字が、前記所定の要素の終了を意味する文字であると判断された場合には、前記第二の文字読取手段による読み取りを、前記第一の文書読取手段による読み取りに切り替えることを特徴とする情報処理装置。
【請求項９】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書を文書の先頭から一文字ずつ順次読み取る第一の文書読取手段と、
前記第一の文書読取手段が読み取った文字に係る文字列に基づいて、所定の要素の開始を意味する文字列か否かを判断する所定要素開始判断手段と、
前記構造化文書の既定の位置から所定長の整数倍の位置にある文字を順次読み取る第二の文書読取手段と、
前記第二の文書読取手段が読み取った文字が、要素の開始を意味する文字である場合には次の要素の開始と判断する要素開始判断手段と、
前記所定要素開始判断手段において、前記第一の文書読取手段が読み取った文字に係る文字列が、所定の要素の開始を意味する文字列であると判断された場合には、前記第一の文書読取手段による読み取りを、前記第二の文書読取手段による読み取りに切り替え、前記要素開始判断手段において、前記第二の文書読取手段が読み取った文字が、要素の開始を意味する文字であると判断された場合には、前記第二の文字読取手段による読み取りを、前記第一の文書読取手段による読み取りに切り替えることを特徴とする情報処理装置。
【請求項１０】
前記構造化文書が前記第二の文書読取手段による読み取りが可能な文書であるか否かを判断する文書判断手段を更に有し、
前記文書判断手段が前記第二の文書読取手段による読み取りが可能な文書であると判断した場合、前記第二の文書読取手段による文書の読み取りを行うことを特徴とする請求項８又は９記載の情報処理装置。
【請求項１１】
前記文書判断手段は、構造化文書に、位置調整に係る文字が挿入されているか否かに基づいて、前記構造化文書が前記第二の文書読取手段による読み取りが可能な文書であるか否かを判断することを特徴とする請求項１０記載の情報処理装置。
【請求項１２】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書に挿入する文字列の長さを取得する文字列長取得手段と、
前記文字列長取得手段が取得した文字列長と所定長との差を計算する計算手段と、
所定の文字を挿入する位置を判断する所定文字挿入位置判断手段と、
前記計算手段において計算された長さの所定の文字列を前記所定文字挿入位置判断手段において判断された位置に挿入する所定文字挿入手段とを有することを特徴とする情報処理装置。
【請求項１３】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書から削除する文字列の長さを取得する文字列長取得手段と、
前記文字列長取得手段が取得した文字列長と所定長との差を計算する計算手段と、
所定の文字を挿入する位置を判断する所定文字挿入位置判断手段と、
前記計算手段において計算された長さの所定の文字列を前記所定文字挿入位置判断手段において判断された位置に挿入する所定文字挿入手段とを有することを特徴とする情報処理装置。
【請求項１４】
マークアップ言語で表された構造化文書を処理する情報処理装置であって、
前記構造化文書に挿入する文字列の長さを取得する第一の文字列長取得手段と、
前記構造化文書から削除する文字列の長さを取得する第二の文字列長取得手段と、
前記第一の文字列長取得手段が取得した文字列長と前記第二の文字列長取得手段が取得した文字列長との差を計算する第一の計算手段と、
前記第一の計算手段において計算された長さと所定長との差を計算する第二の計算手段と、
所定の文字を挿入する位置を判断する所定文字挿入位置判断手段と、
前記第二の計算手段において計算された長さの所定の文字列を前記所定文字挿入位置判断手段において判断された位置に挿入する所定文字挿入手段とを有することを特徴とする情報処理装置。
【請求項１５】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書生成方法であって、
前記構造化文書を生成する文書生成ステップを含み、前記文書生成ステップは、
所定の要素の開始位置を判断する開始位置判断ステップと、
前記所定の要素の終了位置を判断する終了位置判断ステップと、
所定の文字を挿入する文字挿入ステップとを含み、
前記文書生成ステップでは、前記所定の要素に関して、前記開始位置と、前記終了位置との間の長さが所定の長さになるよう、前記開始位置と、前記終了位置との間に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする構造化文書生成方法。
【請求項１６】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書生成方法であって、
前記構造化文書を生成する文書生成ステップを含み、前記文書生成ステップは、
所定の要素の開始位置を判断する開始位置判断ステップと、
所定の文字を挿入する文字挿入ステップとを含み、
前記文書生成ステップでは、前記所定の要素に関して、構造化文書の既定の位置から前記開始位置までの長さが所定の長さになるよう、前記開始位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする構造化文書生成方法。
【請求項１７】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書生成方法であって、
前記構造化文書を生成する文書生成ステップを含み、前記文書生成ステップは、
所定の要素の終了位置を判断する終了位置判断ステップと、
所定の文字を挿入する文字挿入ステップとを含み、
前記文書生成ステップでは、前記所定の要素に関して、構造化文書の既定の位置から前記終了位置までの長さが所定の長さになるよう、前記終了位置より前に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする構造化文書生成方法。
【請求項１８】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書読取方法であって、
前記構造化文書を文書の先頭から順次読み取る文書読取ステップと、
前記文書読取ステップが構造化文書を読み取る際に、読み取り中の要素が所定の要素か否かを判断する要素判断ステップとを含み、
前記要素判断ステップにおいて読み取り中の要素が所定の要素であると判断された場合には、所定の位置まで文書を読み飛ばすことを特徴とする構造化文書読取方法。
【請求項１９】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書読取方法であって、
前記構造化文書を文書の先頭から一文字ずつ順次読み取る第一の文書読取ステップと、
前記第一の文書読取ステップにおいて読み取った文字に係る文字列に基づいて、所定の要素の開始を意味する文字列か否かを判断する所定要素開始判断ステップと、
前記構造化文書の既定の位置から所定長の整数倍の位置にある文字を順次読み取る第二の文書読取ステップと、
前記第二の文書読取ステップにおいて読み取った文字が、前記所定の要素の終了を意味する文字か否かを判断する要素終了判断ステップと、
前記所定要素開始判断ステップにおいて、前記第一の文書読取ステップにおいて読み取った文字に係る文字列が、所定の要素の開始を意味する文字列であると判断された場合には、前記第一の文書読取ステップにおける読み取りを、前記第二の文書読取ステップにおける読み取りに切り替え、前記要素終了判断ステップにおいて、前記第二の文書読取ステップにおいて読み取った文字が、前記所定の要素の終了を意味する文字であると判断された場合には、前記第二の文字読取ステップにおける読み取りを、前記第一の文書読取ステップにおける読み取りに切り替えることを特徴とする構造化文書読取方法。
【請求項２０】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書読取方法であって、
前記構造化文書を文書の先頭から一文字ずつ順次読み取る第一の文書読取ステップと、
前記第一の文書読取ステップにおいて読み取った文字に係る文字列に基づいて、所定の要素の開始を意味する文字列か否かを判断する所定要素開始判断ステップと、
前記構造化文書の既定の位置から所定長の整数倍の位置にある文字を順次読み取る第二の文書読取ステップと、
前記第二の文書読取ステップにおいて読み取った文字が、要素の開始を意味する文字である場合には次の要素の開始と判断する要素開始判断ステップと、
前記所定要素開始判断ステップにおいて、前記第一の文書読取ステップにおいて読み取った文字に係る文字列が、所定の要素の開始を意味する文字列であると判断された場合には、前記第一の文書読取ステップにおける読み取りを、前記第二の文書読取ステップにおける読み取りに切り替え、前記要素開始判断ステップにおいて、前記第二の文書読取ステップにおいて読み取った文字が、要素の開始を意味する文字であると判断された場合には、前記第二の文字読取ステップにおける読み取りを、前記第一の文書読取ステップにおける読み取りに切り替えることを特徴とする構造化文書読取方法。
【請求項２１】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書編集方法であって、
前記構造化文書に挿入する文字列の長さを取得する文字列長取得ステップと、
前記文字列長取得ステップにおいて取得された文字列長と所定長との差を計算する計算ステップと、
所定の文字を挿入する位置を判断する所定文字挿入位置判断ステップと、
前記計算ステップにおいて計算された長さの所定の文字列を前記所定文字挿入位置判断ステップにおいて判断された位置に挿入する所定文字挿入ステップとを含むことを特徴とする構造化文書編集方法。
【請求項２２】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書編集方法であって、
前記構造化文書から削除する文字列の長さを取得する文字列長取得ステップと、
前記文字列長取得ステップにおいて取得された文字列長と所定長との差を計算する計算ステップと、
所定の文字を挿入する位置を判断する所定文字挿入位置判断ステップと、
前記計算ステップにおいて計算された長さの所定の文字列を前記所定文字挿入位置判断ステップにおいて判断された位置に挿入する所定文字挿入ステップとを含むことを特徴とする構造化文書編集方法。
【請求項２３】
マークアップ言語で表された構造化文書を処理する情報処理装置における構造化文書編集方法であって、
前記構造化文書に挿入する文字列の長さを取得する第一の文字列長取得ステップと、
前記構造化文書から削除する文字列の長さを取得する第二の文字列長取得ステップと、
前記第一の文字列長取得ステップにおいて取得された文字列長と前記第二の文字列長取得ステップにおいて取得された文字列長との差を計算する第一の計算ステップと、
前記第一の計算ステップにおいて計算された長さと所定長との差を計算する第二の計算ステップと、
所定の文字を挿入する位置を判断する所定文字挿入位置判断ステップと、
前記第二の計算ステップにおいて計算された長さの所定の文字列を前記所定文字挿入位置判断ステップにおいて判断された位置に挿入する所定文字挿入ステップとを含むことを特徴とする構造化文書編集方法。
【請求項２４】
請求項１５乃至１７何れか１項記載の構造化文書生成方法をコンピュータに実行させることを特徴とする構造化文書生成プログラム。
【請求項２５】
請求項１８乃至２０何れか１項記載の構造化文書読取方法をコンピュータに実行させることを特徴とする構造化文書読取プログラム。
【請求項２６】
請求項２１乃至２３何れか１項記載の構造化文書編集方法をコンピュータに実行させることを特徴とする構造化文書編集プログラム。
【請求項２７】
請求項２４記載の構造化文書生成プログラム、又は請求項２５記載の構造化文書読取プログラム、又は請求項２６記載の構造化文書編集プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マークアップ言語で表された構造化文書を処理する情報処理装置等に関する。
【背景技術】
【０００２】
一般に、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）等、マークアップ言語で表された構造化文書を処理する情報処理装置においては、文書の先頭から文字列又はバイト列を順次読み取ることにより処理を行っている。例えば、ＨＴＭＬ等のマークアップ言語を処理する情報処理装置においては、「＜」と「＞」で囲まれたタグを検出するために、文書の先頭から１文字ずつ読み取り、「＜」が登場したらそれはタグの開始であり、「＞」が登場したらタグの終了である、といった判断をしている。
【０００３】
また、ＸＭＬ等のように開始タグから終了タグまでをひとつの要素として扱うマークアップ言語を処理する情報処理装置においては、ある要素を抽出する際には、同様に文字列又はバイト列を順次読み取ることによって処理を行っていた。例えば、文書の先頭から１文字ずつ読み取り、「＜ｐａｇｅ＞」という文字列が登場したらｐａｇｅ要素の開始と認識し、「＜／ｐａｇｅ＞」という文字列が登場したらｐａｇｅ要素の終了と認識していた。
【０００４】
このような処理を行うツールの代表的なものとして、一般にＸＭＬパーサー（ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）パーサー、ＳＡＸ（Ｓｉｍｐｌｅ  ＡＰＩ  ｆｏｒ  ＸＭＬ）パーサー）が知られている。
【０００５】
【特許文献１】特開平８−１３７８７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
マークアップ言語で表された構造化文書を処理する際、情報処理装置にとって不要な要素やタグが含まれるケースがある。そのようなケースにおいては、構造化文書を先頭から順次読み取り、読み取った部分が不要な要素やタグであれば内部データ化しないといった処理がなされている。例えば、ｐａｇｅ要素が不要な情報処理装置の場合、文書の先頭から順次読み取り内部データ化を行うが、読み取り途中で「＜ｐａｇｅ＞」という文字列が登場したら、その後「＜／ｐａｇｅ＞」という文字列が登場するまで内部データ化を行わないようにしていた。
【０００７】
しかしながら、構造化文書の文字列又はバイト列を順次読み取る方法では、情報処理装置にとって不要なものであっても１文字ずつ読み取る必要がある問題があった。例えば、ｐａｇｅ要素が不要な情報処理装置の場合、「＜ｐａｇｅ＞」という文字列が登場したら、その後「＜／ｐａｇｅ＞」という文字列を判断するために、装置にとって不要な情報であるにも関わらず１文字ずつ読み取る必要がある問題があった。また、このようなケースでは、ｐａｇｅ要素の開始から終了までが長い場合には、不要な情報を読むために時間を要するという問題があった。
【０００８】
本発明は、上述の課題に鑑みてなされたもので、速やかに不要な情報を読み飛ばすことが可能な構造化文書を生成することを目的の一つとする。また、本発明は、速やかに構造化文書中の不要な情報を読み飛ばすことを目的の一つとする。また、本発明は、速やかに不要な情報を読み飛ばすことが可能な構造化文書を編集することを目的の一つとする。
【課題を解決するための手段】
【０００９】
そこで、上記問題を解決するため、本発明は、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書を生成する文書生成手段と、前記文書生成手段が構造化文書を生成する際に、所定の要素の開始位置を判断する開始位置判断手段と、前記文書生成手段が構造化文書を生成する際に、前記所定の要素の終了位置を判断する終了位置判断手段と、前記文書生成手段が構造化文書を生成する際に、所定の文字を挿入する文字挿入手段とを有し、前記文書生成手段は、前記所定の要素に関して、前記開始位置と、前記終了位置との間の長さが所定の長さになるよう、前記文字挿入手段を用いて前記開始位置と、前記終了位置との間に前記所定の文字を挿入した上で前記構造化文書を生成することを特徴とする。
【００１０】
本発明によれば、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書を生成する文書生成手段と、前記文書生成手段が構造化文書を生成する際に、所定の要素の開始位置を判断する開始位置判断手段と、前記文書生成手段が構造化文書を生成する際に、前記所定の要素の終了位置を判断する終了位置判断手段と、前記文書生成手段が構造化文書を生成する際に、所定の文字を挿入する文字挿入手段とを有し、前記文書生成手段は、前記所定の要素に関して、前記開始位置と、前記終了位置との間の長さが所定の長さになるよう、前記文字挿入手段を用いて前記開始位置と、前記終了位置との間に前記所定の文字を挿入した上で前記構造化文書を生成することにより、例えば、構造化文書を生成する際に、所定の要素（例えば、読み取り不要の要素）の開始及び／又は終了を容易に検出可能なように文字列を挿入するので、速やかに不要な情報を読み飛ばすことが可能な構造化文書を生成することができる。
【００１１】
また、本発明は、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書を文書の先頭から順次読み取る文書読取手段と、前記文書読取手段が構造化文書を読み取る際に、読み取り中の要素が所定の要素か否かを判断する要素判断手段と、前記要素判断手段において読み取り中の要素が所定の要素であると判断された場合には、所定の位置まで文書を読み飛ばすことを特徴とする。
【００１２】
本発明によれば、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書を文書の先頭から順次読み取る文書読取手段と、前記文書読取手段が構造化文書を読み取る際に、読み取り中の要素が所定の要素か否かを判断する要素判断手段と、前記要素判断手段において読み取り中の要素が所定の要素であると判断された場合には、所定の位置まで文書を読み飛ばすことにより、例えば、構造化文書に挿入された文字列に基づいて、読み取り不要な要素か否か判断するので、速やかに構造化文書中の不要な情報を読み飛ばすことができる。
【００１３】
また、本発明は、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書に挿入する文字列の長さを取得する文字列長取得手段と、前記文字列長取得手段が取得した文字列長と所定長との差を計算する計算手段と、所定の文字を挿入する位置を判断する所定文字挿入位置判断手段と、前記計算手段において計算された長さの所定の文字列を前記所定文字挿入位置判断手段において判断された位置に挿入する所定文字挿入手段とを有することを特徴とする。
【００１４】
本発明によれば、マークアップ言語で表された構造化文書を処理する情報処理装置であって、前記構造化文書に挿入する文字列の長さを取得する文字列長取得手段と、前記文字列長取得手段が取得した文字列長と所定長との差を計算する計算手段と、所定の文字を挿入する位置を判断する所定文字挿入位置判断手段と、前記計算手段において計算された長さの所定の文字列を前記所定文字挿入位置判断手段において判断された位置に挿入する所定文字挿入手段とを有することにより、例えば、構造化文書に新たに文字列を挿入し、構造化文書を編集する際に、所定の要素（例えば、読み取り不要の要素）の開始及び／又は終了を容易に検出可能なように挿入する所定の文字列（例えば、空白の文字列等）の長さや挿入位置を算出し、所定の文字列を挿入するので、速やかに不要な情報を読み飛ばすことが可能な構造化文書を編集することができる。
【００１５】
なお、特許請求の範囲の請求項１から６、及び請求項１２から１４記載の情報処理装置とは、例えば、後述するＰＣ２０１等に対応する。また、特許請求の範囲に記載の請求項７から請求項１１記載の情報処理装置とは、例えば、後述するプリンタ装置２０３等に対応する。また、特許請求の範囲に記載の要素とは、例えば、ＸＭＬ、ＨＴＭＬ、ＳＶＧ等のマークアップ言語のあらゆる要素、属性、タグ、属性値、要素内容等に対応する。
【００１６】
また、特許請求の範囲に記載の所定の長さとは、例えば、定数の整数倍の値等に対応する。また、特許請求の範囲に記載の長さとは、例えば、バイト数又は文字数等に対応する。また、特許請求の範囲に記載の所定の文字とは、例えば、空白文字等に対応する。
【００１７】
また、上記問題を解決するため、本発明は、構造化文書生成方法、構造化文書読取方法、構造化文書編集方法、構造化文書生成プログラム、構造化文書読取プログラム、構造化文書編集プログラム及び記録媒体としても良い。
【発明の効果】
【００１８】
本発明の一つによれば、速やかに不要な情報を読み飛ばすことが可能な構造化文書を生成することができる。また、本発明の一つによれば、速やかに構造化文書中の不要な情報を読み飛ばすことができる。また、本発明の一つによれば、速やかに不要な情報を読み飛ばすことが可能な構造化文書を編集することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施例について図面に基づいて説明する。本実施例では、本発明に係る情報処理装置として、構造化文書生成機能を有するＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）と、構造化文書読み取り機能を有するプリンタ装置とを例に説明する。
【００２０】
図１は本発明の実施例に係る情報処理装置の構成を示すブロック図である。図１において、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１は、システム制御部であり、情報処理装置全体を制御する。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２は、ＣＰＵ１０１の制御プログラムや各種固定データを格納する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３は、ＳＲＡＭ、ＤＲＡＭ等で構成され、プログラム制御変数等を格納する。また、各種設定パラメータ、各種ワーク用バッファ等もＲＡＭ１０３に格納される。ハードディスク１０４は、構造化文書等の各種ファイルを格納する。操作部１０５は、ハードキーやポインティングデバイス等で構成され、オペレータが各種入力操作を行うのに用いられる。表示部１０６は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）等を用いてオペレータに表示通知するのに用いられる。通信制御部１０７は、情報処理装置と、ＬＡＮｉ／ｆ１０８を経由して接続された他の装置とのデータ通信の制御を行う。ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ｉ／ｆ１０８は、情報処理装置をＬＡＮ回線１０９に接続するためのインターフェイスである。図１に示した構成は、本発明の実施例に係る情報処理装置の一部を示したものであり、装置によっては、この他、スキャナ部、プリンタ部、スピーカ、ファクシミリ通信部等が装置の構成に加わっても良い。また、ソフトウェア等で本発明の処理を実現する場合等には、図１の各ブロックを必ずしも単体の装置内に持っていなくても良い。
【００２１】
また、前記ソフトウェアに対応するプログラム（構造化文書生成プログラム、構造化文書読取プログラム、構造化文書編集プログラム）等は、例えば、ＣＤ−ＲＯＭ等の記録媒体によって、情報処理装置に提供されても良い。図１には図示されていないが、例えば、記録媒体に記録されている前記プログラムは、ドライブ部等を介して、ハードディスク１０４等にインストールされる。例えば、ＣＰＵ１０１は、制御プログラムの制御に基づいて、必要に応じて、ハードディスク１０４より前記プログラムを読み出して、ＲＡＭ１０３に格納し、前記プログラムを実行することで、例えば、本発明の処理（の全て又は一部）を実現する。
【００２２】
図２は、本発明の実施例に係るＰＣ２０１と、プリンタ装置２０３とを含むシステムの概要を示した構成図である。図２において、ＰＣ２０１と、プリンタ装置２０３とはＬＡＮ２０２に接続され、互いに通信が可能となっている。ＰＣ２０１は構造化文書生成機能を有し、プリンタ装置２０３は構造化文書読み取り機能を有する。ＰＣ２０１と、プリンタ装置２０３とは共に本発明に係る情報処理装置である。図２においては、ＬＡＮ２０２に接続されている装置はＰＣ２０１と、プリンタ装置２０３とのみであるが、ＬＡＮ２０２に他の装置が接続されていても良い。
【００２３】
図３は、本発明の実施例に係る情報処理装置で処理する構造化文書の一例である。図３に示されるように、本実施例においては、構造化文書としてタグを使用したマークアップ言語を用い、その仕様はＸＭＬ  １．０（”Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａ
ｎｇｕａｇｅ  （ＸＭＬ）  １．０”）に準拠している。本実施例においては、「＜」と
「＞」に囲まれたものをタグと称し、「＜ｐａｇｅ＞」のような記述を開始タグ、「＜／ｐａｇｅ＞」のような記述を終了タグと称する。また、開始タグから終了タグまでを要素と称し、例えば、開始タグ「＜ｐａｇｅ＞」から終了タグ「＜／ｐａｇｅ＞」までをｐａｇｅ要素と称する。「＜ｒｅｃｔ  ．．．／＞」のような記述は、ｒｅｃｔ要素の内容が何もない場合に開始タグと終了タグを一つにした省略的な記述方法であり、「＜ｒｅｃｔ  ．．．／＞」は「＜ｒｅｃｔ  ．．．＞＜／ｒｅｃｔ＞」と同義である。
【００２４】
図３に示される構造化文書には、３つのｐａｇｅ要素が含まれている。つまり、図３に示される構造化文書は、３ページのドキュメントを意味し、各ページ要素は、文書の先頭に近い方から順に１ページ目、２ページ目、３ページ目の描画内容を意味している。
【００２５】
以下、実施例１から実施例４を順に説明する。
【実施例１】
【００２６】
実施例１では、構造化文書生成装置としてのＰＣ２０１の動作を示す。図４は、ＰＣ２０１における動作を示したフローチャートである。ＰＣ２０１では、テキストファイルにタグ等の文字列を順次書くことにより構造化文書を生成している。図４のフローチャートは、要素の開始タグをテキストファイルに出力する際の処理を示したものである。
【００２７】
図４に示されるように、まず、ＰＣ２０１は、変数Ｐに現在の書き出し位置をセットする（Ｓ４０１）。なお、実施例１においては、書き出し位置とは文書の先頭からの文字数を意味する。即ち、文書の最初の文字を書き出す際の書き出し位置は０であり、１０番目の文字を書き出す際の書き出し位置は９である。本実施例では、書き出し位置として文字数を使用しているが、書き出し位置は文字数ではなくバイト数やビット数でも良いし、文字数やバイト数の起点は文書の先頭ではなく文書の特定の位置（例えばルート要素の先頭等）でも良い。
【００２８】
次に、ＰＣ２０１は、変数ＳにＰ÷１６の剰余をセットする（Ｓ４０２）。ここで、定数１６を用いているが、これは、本実施例では、ｐａｇｅ要素の開始タグの位置が１６の整数倍の位置になるようにしているためである。したがって、この値（定数）は１６でなくても良い。例えば、この値（定数）は、２以上の自然数であれば本発明の効果を奏することができる。
【００２９】
続いて、ＰＣ２０１は、これからテキストファイルに書き出す要素が、ｐａｇｅ要素か否かを判断する（Ｓ４０３）。Ｓ４０３において、書き出す要素がｐａｇｅ要素であると判断した場合には、ＰＣ２０１は、変数Ｓにセットされている値が０か否か否かを判断する（Ｓ４０４）。Ｓ４０４において、変数Ｓにセットされている値が０と判断した場合には、ＰＣ２０１は、ｐａｇｅ要素の開始タグをテキストファイルに出力する（Ｓ４０８）。
【００３０】
一方、Ｓ４０４において、変数Ｓにセットされている値が０ではないと判断した場合、ＰＣ２０１は、（１６−Ｓ）個の空白文字（スペース）をテキストファイルに出力する（Ｓ４０５）。ここでは、スペースを出力しているが、これは必ずしもスペースでなくても良い。例えば、改行文字等、構造化文書の実質的な意味に影響を与えない文字であれば何でも良い。Ｓ４０５の処理の後、ＰＣ２０１は、ｐａｇｅ要素の開始タグをテキストファイルに出力する（Ｓ４０８）。
【００３１】
Ｓ４０３において、テキストファイルに書き出す要素がｐａｇｅ要素ではないと判断した場合、ＰＣ２０１は、変数Ｓにセットされている値が０か否かを判断する（Ｓ４０６）。変数Ｓにセットされている値が０ではないと判断された場合には、ｐａｇｅ要素の開始タグをテキストファイルに出力する（Ｓ４０８）。
【００３２】
Ｓ４０６において、変数Ｓにセットされている値が０であると判断した場合、ＰＣ２０１は、１個の空白文字（スペース）をテキストファイルに出力し（Ｓ４０７）、その後で、ｐａｇｅ要素の開始タグをテキストファイルに出力する（Ｓ４０８）。なお、Ｓ４０７において、ＰＣ２０１は、１個のスペースを出力しているが、これは必ずしも１個でなくても良く、本実施例のように定数として１６を用いる場合、１６の倍数以外の値であればいくつでも良い。但し、本実施例では、もっとも効率的であるため、最小値として１個のスペースを出力している。
【００３３】
以上のような処理を構造化文書生成時にＰＣ２０１が行うことにより、文書の先頭からの相対位置が１６の倍数となる位置にｐａｇｅ要素の開始タグを配置し、ｐａｇｅ要素以外の要素は１６の倍数以外の位置に配置された構造化文書を生成することが可能となる。
【００３４】
図５は、実施例１の方法を用いて出力した構造化文書の一例である。なお、図５では、文字の配置がわかるよう模式化してある。図５に示されるように、実施例１の方法を用いて出力した構造化文書では、例えばｃｉｒｃｌｅ要素の開始位置が１６の倍数の位置にならないよう１個のスペース（５０１）が挿入され、ｐａｇｅ要素の開始位置が１６の倍数になるよう１３個のスペース（５０２）が挿入されている。
【００３５】
図４のフローチャートでは、ＰＣ２０１が、ｐａｇｅ要素の開始タグを書き出す位置を定数１６の整数倍の位置になるようにする方法を示した。同様の方法により、ＰＣ２０１は、例えば、終了タグの開始位置や、要素の終了位置、要素内容の開始位置等が定数の整数倍の位置になるようにすることができる。また、ＰＣ２０１は、これらの方法を組み合わせることもでき、例えば、ｐａｇｅ要素は１６の整数倍の位置になるようにし、且つ、ｉｍａｇｅ要素は１７の整数倍の位置になるようにすることもできる。この場合、１６と、１７との公倍数の整数倍の位置にはｐａｇｅ要素もｉｍａｇｅ要素も配置されないようにＰＣ２０１が処理すれば、所定の位置にある開始タグの先頭文字を検出するだけで、その要素がｐａｇｅ要素かｉｍａｇｅ要素かを判断することも可能となる。
【００３６】
なお、要素の開始位置とは、例えば、要素の開始を表すタグの最初の文字が現れる位置等のことである。また、要素の終了位置とは、例えば、要素の終了を表すタグの文字列のうち、最初又は最後の文字が現れる位置のことである。また、要素の開始を表すタグと、終了を表すタグとが分離せずに一つのタグとなっている場合は、要素の終了位置とは、例えば、前記タグの最後の文字が現れる位置のことである。
【００３７】
また、図４のフローチャートにおいては、ＰＣ２０１は、開始タグの書き出し直前にスペース文字を挿入しているが、必ずしも開始タグの書き出し直前でなくても良い。例えば、ＰＣ２０１は、予めｐａｇｅ要素の書き出し位置を予測した上で、もっと前の位置にスペースを書き出すようにしても良い。また、構造化文書の仕様によっては、スペースを挿入することにより文書の意味が変化する場合も考えられるため、ＰＣ２０１は、その位置（つまり、これからスペースを挿入しようとしている位置）にスペースを挿入可能か否か、判断する判断手段を設け、判断手段が挿入可能と判断した位置にスペースを書き出すようにしても良い。
【実施例２】
【００３８】
次に実施例２を示す。実施例２では、実施例１と同様、構造化文書生成装置としてのＰＣ２０１の動作を示す。図６は、ＰＣ２０１における動作を示したフローチャートである。なお、図６のフローチャートは、ｐａｇｅ要素をテキストファイルに出力する際の処理を示したものである。
【００３９】
図６に示されるように、まず、ＰＣ２０１は、変数Ｐにｐａｇｅ要素の書き出し位置をセットする（Ｓ６０１）。次に、ＰＣ２０１は、ｐａｇｅ要素の開始タグと、要素内容とをテキストファイルに出力する（Ｓ６０２）。なお、Ｓ６０２においては、ＰＣ２０１は、実施例１に示したようなｐａｇｅ要素の開始タグの書き出し位置に関する処理は行っていない。続いて、ＰＣ２０１は、変数Ｑに現在の書き出し位置をセットし（Ｓ６０３）、変数Ｓに（（Ｑ−Ｐ）÷１６）の剰余をセットする（Ｓ６０４）。
【００４０】
次に、ＰＣ２０１は、変数Ｓにセットされた値が０か否かを判断する（Ｓ６０５）。Ｓ６０５において、変数Ｓにセットされた値が０と判断した場合、ＰＣ２０１は、ｐａｇｅ要素の終了タグをテキストファイルに出力する（Ｓ６０７）。一方、Ｓ６０５において、変数Ｓにセットされた値が０でないと判断した場合、ＰＣ２０１は、（１６−Ｓ）個のスペースをテキストファイルに出力する（Ｓ６０６）。Ｓ６０６の後、ＰＣ２０１は、ｐａｇｅ要素の終了タグをテキストファイルに出力する（Ｓ６０７）。
【００４１】
ステップＳ６０５及びステップＳ６０６に示したような処理を行うことによって、ＰＣ２０１は、ｐａｇｅ要素の開始位置から、終了タグの開始位置までの長さを所定値（ここでは１６）の定数倍とすることができる。
【００４２】
実施例２では、ＰＣ２０１が、要素の開始位置から、終了タグの開始位置までの長さが所定値の定数倍となるよう処理する例を用いて説明を行ったが、前記長さの起点は必ずしも要素の開始位置でなくても良く、また、前記長さの終点は必ずしも終了タグの開始位置でなくても良い。例えば、ＰＣ２０１は、終点を終了タグの終了位置として、終了タグの「＞」の直前にスペースを埋め込むよう処理を行っても良い。
【実施例３】
【００４３】
次に実施例３を示す。実施例３では、実施例１に示した方法を用いて生成した構造化文書を読み取る際のプリンタ装置２０３の動作を示す。プリンタ装置２０３においては、構造化文書のうちＰＣ２０１より指示されたページのみを印刷する機能が備わっており、実施例３では、ＰＣ２０１より前記指示を受けた際のプリンタ装置２０３の動作を示す。
【００４４】
図７は実施例３における動作を示したフローチャートである。プリンタ装置２０３においては、ＰＣ２０１より受信した構造化文書を文書の先頭から１文字ずつ読み取り処理を行う。図７のフローチャートは、前記読み取り処理の途中の処理を示したものである。
【００４５】
まず、構造化文書を１文字ずつ読み取る際、プリンタ装置２０３は、変数Ｐに現在の読み取り位置をセットする（Ｓ７０１）。また、プリンタ装置２０３は、読み取った文字列を解析し、要素の開始タグや終了タグ等を検出する。Ｓ７０２では、プリンタ装置２０３が、ｐａｇｅ要素の開始タグを検出したか否かを判断する。プリンタ装置２０３は、もしｐａｇｅ要素の開始タグを検出しなければ図７のフローチャートの処理は終了し、１文字ずつの読み込み処理を続行する。一方、Ｓ７０２において、プリンタ装置２０３が、ｐａｇｅ要素の開始タグを検出した場合には、前記ｐａｇｅ要素が不要なページか否かを判断する（Ｓ７０３）。即ち、プリンタ装置２０３は、ページがＰＣ２０１から印刷要求のあったページであれば読み取りが必要なページと判断し、ＰＣ２０１から印刷要求のあったページでなければ読み取りが不要なページであると判断する。
【００４６】
Ｓ７０３において、プリンタ装置２０３は、ページが必要なページであると判断すると、図７のフローチャートの処理は終了し、１文字ずつの読み込み処理を続行する。なお、フローチャートには示していないが、読み込んだｐａｇｅ要素は内部データ化しレンダリング処理を行った上で印刷することになる。
【００４７】
一方、Ｓ７０３において、プリンタ装置２０３は、ページが不要なページと判断すると、変数Ｑに（Ｑ÷１６）の剰余が０、且つ、Ｐ＜Ｑとなる値のうち最小の値をセットし（Ｓ７０４）、Ｑの位置の文字を読み取る（Ｓ７０５）。
【００４８】
続いて、プリンタ装置２０３は、Ｑの位置の文字が「＜」か、否かを判断する（Ｓ７０６）。ここで、Ｑの位置の文字が「＜」ではないと判断すると、プリンタ装置２０３は、Ｑに定数１６を加え（Ｓ７０７）、Ｓ７０５と、Ｓ７０６との処理を繰り返す。
【００４９】
一方、Ｓ７０６において、Ｑの位置の文字が「＜」であると判断すると、プリンタ装置２０３は、Ｑの位置の文字が「＜」であることは即ち、次ページのｐａｇｅ要素の開始であると判断し、１文字ずつ読み取るモードへ移行する（Ｓ７０８）。
【００５０】
図７に示されるような処理をプリンタ装置２０３が行うことによって、実施例１の方法で生成された構造化文書に関して、不要なページを高速に読み飛ばすことが可能となる。
【００５１】
なお、図７のフローチャートには示していないが、複数のページをまとめて読み飛ばしたい場合には、Ｓ７０６において「＜」の出現個数をカウントするような機構をプリンタ装置２０３に設け、読み飛ばしたいページ数分だけカウントした後で、１文字ずつ読み取るモードへ移行（Ｓ７０８）するようにしても良い。
【実施例４】
【００５２】
最後に実施例４を示す。実施例４では、実施例２に示した方法を用いて生成した構造化文書を読み取る際のプリンタ装置２０３の動作を示す。プリンタ装置２０３においては、実施例３と同様、構造化文書のうちＰＣ２０１より指示されたページのみを印刷する機能が備わっている。
【００５３】
図８は実施例４における動作を示したフローチャートである。実施例３と同様、プリンタ装置２０３においては、ＰＣ２０１より受信した構造化文書を文書の先頭から１文字ずつ読み取り処理を行う。図８のフローチャートは、前記読み取り処理の途中の処理を示したものである。
【００５４】
まず、Ｓ８０１〜Ｓ８０６の処理については、それぞれ実施例３におけるＳ７０１〜Ｓ７０６の処理と同様である。
【００５５】
Ｓ８０６において、Ｑの位置の文字が「＜」ではないと判断すると、プリンタ装置２０３は、Ｑに定数１６を加え（Ｓ８０７）、Ｓ８０５と、Ｓ８０６との処理を繰り返す。
【００５６】
一方、Ｓ８０６において、Ｑの位置の文字が「＜」であると判断すると、プリンタ装置２０３は、Ｑの位置の文字が「＜」であることは即ち、ｐａｇｅ要素の終了タグの可能性があるため、１文字ずつ読み取るモードへ移行する（Ｓ８０８）。また、プリンタ装置２０３は、１文字ずつ読み取るモードへ移行後、そのタグ（処理対象のタグ）を読み取る（Ｓ８０９）。
【００５７】
Ｓ８１０において、プリンタ装置２０３は、読み取ったタグがｐａｇｅ要素の終了タグか否かを判断し、終了タグであると判断すると、そのページの終了であるから、図８のフローチャートに示した処理を終了し、そのまま１文字ずつ読み取る処理を続ける。一方、Ｓ８１０において、終了タグではないと判断すると、プリンタ装置２０３は、変数Ｐに現在の読み取り位置をセット（Ｓ８１１）した上で、Ｓ８０４以降の処理を繰り返す。
【００５８】
図８に示されるような処理をプリンタ装置２０３が行うことによって、実施例２の方法で生成された構造化文書に関して、不要なページを高速に読み飛ばすことが可能となる。
【００５９】
以上、上述した実施例によれば、速やかに（容易に）不要な情報を読み飛ばすことが可能な構造化文書を生成することができる。また、上述した実施例によれば、速やかに（容易に）構造化文書中の不要な情報を読み飛ばすことができる。
【００６０】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００６１】
例えば、実施例１や実施例２の方法で生成した構造化文書に対しては、ＰＣ等が、構造化文書内に、要素やタグの位置を調整したことを示す文字列を埋め込んでも良い。例えば、図３に示したサンプルにおいては、ルートのｓｖｇ要素の属性として、「ｔａｇ−ｐｏｓｉｔｉｏｎｅｄ＝"ｔｒｕｅ"」という記述があるが、これは、タグの位置を調整したことを示す文字列である。実施例３や実施例４で示したプリンタ装置は、この属性を読み取った上で、読み飛ばしの処理を行うか否かを判断するようにしても良い。
【００６２】
また、実施例１や実施例２の方法で生成した構造化文書と同等の構造化文書であることが予めわかっている場合には、例えばＰＣが、その構造化文書の編集を行う場合に、挿入及び／又は削除を行う文字列長と定数の整数倍との差を求め、その差の長さ分の空白文字を挿入するようにしても良い。例えば、図３に示した構造化文書において、「ｆｉｌｌ＝"ｒｅｄ"」と記述されたｒｅｃｔ要素の属性を「ｆｉｌｌ＝"ｂｌａｃｋ"」と変更したい場合には、例えばＰＣ等が、文字列の削除と、挿入とを行った後、「ｒｅｄ」と「ｂｌａｃｋ」との文字列長の差２を取得し、前記取得した２と、所定値１６との差である１４文字分の空白文字を、空白挿入位置の判断結果に基づいて、例えば、「ｆｉｌｌ＝"ｂｌａｃｋ"」の後に挿入するようにしても良い。このような処理を実行することにより、速やかに不要な情報を読み飛ばすことが可能な構造化文書を編集することができる。より詳細に説明すると、例えばＰＣは、まず、構造化文書に挿入する文字列（「ｂｌａｃｋ」）の長さ５を取得する。また、例えばＰＣは、構造化文書から削除する文字列（「ｒｅｄ」）の長さ３を取得する。次に、例えばＰＣは、挿入する文字列長（５）と、削除する文字列長（３）との差分（２）を求める（又は取得する）。続いて、例えばＰＣは、前記差分の２と、所定長１６と、の差（１４）を求め、１４文字分の空白文字を、求めた空白挿入位置に挿入する。
【００６３】
なお、例えばＰＣは、挿入する文字列長又は削除する文字列長と、所定長と、の差を求め、求めた差の分だけ空白文字を、求めた空白挿入位置に挿入するようにしてもよい。
【００６４】
また、実施例１から実施例４においては、図３に例示した構造化文書のｐａｇｅ要素に適用した例を示したが、本発明に係る処理は、ＸＭＬ、ＨＴＭＬ、ＳＶＧ等のマークアップ言語のあらゆる要素、属性、タグ、属性値、要素内容等に適用し得るものである。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施例による情報処理装置の構成の一部を示すブロック図である。
【図２】本発明の実施例によるＰＣ２０１とプリンタ装置２０３とを含むネットワークの構成を示す模式図である。
【図３】本発明の実施例による情報処理装置が処理する構造化文書の記述の一例を示す図である。
【図４】本発明の実施例１による情報処理装置の動作を示すフローチャートである。
【図５】本発明の実施例１による情報処理装置が生成した構造化文書の一部を示す模式図である。
【図６】本発明の実施例２による情報処理装置の動作を示すフローチャートである。
【図７】本発明の実施例３による情報処理装置の動作を示すフローチャートである。
【図８】本発明の実施例４による情報処理装置の動作を示すフローチャートである。
【符号の説明】
【００６６】
１０１    ＣＰＵ
１０２    ＲＯＭ
１０３    ＲＡＭ
１０４    ハードディスク
１０５    操作部
１０６    表示部
１０７    通信制御部
１０８    ＬＡＮ  ｉ／ｆ
１０９    ＬＡＮ回線
２０１    ＰＣ
２０２    ＬＡＮ
２０３    プリンタ装置
５０１    挿入されたスペース
５０２    挿入されたスペース
【図１】
2007080206.tif 000003
【図２】
2007080206.tif 000004
【図３】
2007080206.tif 000005
【図４】
2007080206.tif 000006
【図５】
2007080206.tif 000007
【図６】
2007080206.tif 000008
【図７】
2007080206.tif 000009
【図８】
2007080206.tif 000010