(57)【要約】【課題】単一の表示データに基づき、画面サイズが異なる情報処理装置に対しても、表示データの提供者の意図に忠実な表示画面の構成を得ることを目的とする。【解決手段】分割ルールと、分割指定情報と、に基づいて画面に係る分割を決定する分割決定手段を有し、分割決定手段は、分割指定情報が指定する分割ルールの階層要素に直接対応する、画面に係る分割を決定できない場合、分割ルールの階層構造を利用して、次善の画面に係る分割を決定する次善分割決定手段を有することによって上記課題を解決する。【選択図】図７
2007133508.tif 000002
【特許請求の範囲】
【請求項１】
格納手段を有し、表示データに応じて画面を構成する情報処理装置であって、
前記表示データは、表示内容を示すコンテンツ要素と、コンテンツ要素間の分割を示す分割要素と、を含み、
前記格納手段に格納されている、実際の分割に対応付けられる具体的な分割記述から、前記分割記述の抽象度を高めた複数段階の抽象的な分割記述まで、抽象度の違いで段階的に階層化された分割ルールと、前記分割要素に含まれる、前記分割ルールの階層要素を指定する分割指定情報と、に基づいて、前記画面に係る分割を決定する分割決定手段を有し、
前記分割決定手段は、前記分割指定情報が指定する前記分割ルールの階層要素に直接対応する、前記画面に係る分割を決定できない場合、前記分割ルールの階層構造を利用して、次善の前記画面に係る分割を決定する次善分割決定手段を有することを特徴とする情報処理装置。
【請求項２】
前記分割指定情報は、前記表示データ中の前記分割指定情報の位置の前後の前記コンテンツ要素の前記分割ルールの階層要素を指定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記分割要素は、０以上のコンテンツ要素と、０以上の分割要素と、を含み、
前記分割指定情報は、前記０以上のコンテンツ要素及び前記０以上の分割要素の前記分割ルールの階層要素を指定することを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記次善分割決定手段は、
前記分割指定情報で特定可能な前記分割ルールの要素を起点に、前記分割ルールの階層を辿り、実際の分割に対応付けられる具体的な分割ルールの階層要素を検索することを特徴とする請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記分割決定手段は、前記分割指定情報により指定された分割ルールの階層要素を基に、前記分割ルールの階層要素に対応する、前記画面に係る分割を決定し、前記画面を分割して配置する画面分割配置手段を更に有することを特徴とする請求項１乃至４何れか１項記載の情報処理装置。
【請求項６】
前記分割指定情報は、特定の区切り記号で区切られたデータであることを特徴とする請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記分割指定情報は、階層構造からなるＸＭＬデータであることを特徴とする請求項１乃至５何れか１項記載の情報処理装置。
【請求項８】
画面が分割された場合、一の画面から他の画面に移る、ユーザインターフェースに係るＵＩ部品を追加するＵＩ部品追加手段を更に有することを特徴とする請求項１乃至７何れか１項記載の情報処理装置。
【請求項９】
アプリケーションを操作する操作画面を構成する前記表示データを送信する表示データ送信手段を有する装置と、格納手段を有し、前記表示データに応じて画面を構成する請求項１乃至８何れか１項記載の情報処理装置と、を含むことを特徴とするリモート画面構成システム。
【請求項１０】
格納手段を有し、表示データに応じて画面を構成する情報処理装置における分割決定方法であって、
前記表示データは、表示内容を示すコンテンツ要素と、コンテンツ要素間の分割を示す分割要素と、を含み、
前記格納手段に格納されている、実際の分割に対応付けられる具体的な分割記述から、前記分割記述の抽象度を高めた複数段階の抽象的な分割記述まで、抽象度の違いで段階的に階層化された分割ルールと、前記分割要素に含まれる、前記分割ルールの階層要素を指定する分割指定情報と、に基づいて、前記画面に係る分割を決定する分割決定ステップを有し、
前記分割決定ステップは、前記分割指定情報が指定する前記分割ルールの階層要素に直接対応する、前記画面に係る分割を決定できない場合、前記分割ルールの階層構造を利用して、次善の前記画面に係る分割を決定する次善分割決定手段を有することを特徴とする分割決定方法。
【請求項１１】
請求項１０記載の分割決定方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１２】
請求項１１記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、及び分割決定方法に関する。
【背景技術】
【０００２】
インターネット上のサーバに存在する様々な情報を表示構成するプレゼンテーション言語として、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）言語が広く普及している。
【０００３】
ＨＴＭＬ言語によれば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）アーキテクチャの差異や、ブラウザアプリケーションによる差異を吸収する事ができ、どの様なＰＣ環境においても、ほぼ作者の意図した通りの表示画面を構成する事が可能であった。
【０００４】
また、近年、通信インフラが整備されるに従い、通信環境を持つＰＤＡ装置や、携帯電話等もインターネットに接続し、サーバ上の情報を表示するという要求が広まりつつある。更には、様々な大きさや種類の入出力機器の登場により、ＰＣやＰＤＡ、携帯電話等のジャンルにも収まらないクライアント機器も登場しつつあり、これらの機器も同様に、インターネットに接続し、情報を表示する要求が生じている。
【０００５】
主にＰＣでの表示を前提に設計されているＨＴＭＬ言語を用いた表示データに関しては、ある程度の画面の大きさを持つＰＣにおいては、ほぼ製作者の意図通り問題無く画面を構成し、表示される。ところが、比較的画面の小さいＰＤＡや携帯電話等では、表示を途中で折り返して表示する為に、延々とスクロール操作を行わないと全体が見えない事が多かった。
【０００６】
この問題の解決策として、ＰＤＡ、携帯等小さな画面を持つ表示装置向けに、例えばＣ−ＨＴＭＬ（Ｃｏｍｐａｃｔ  ＨＴＭＬ）言語等を使用して、ＰＣ等の大きな画面を持つ表示装置向けとは別に、表示データをサーバ側に用意しておく方法がある。
【０００７】
ところが、この方法では、小さな画面を持つ表示装置向けの表示データを大きな画面を持つ表示装置で表示すると、大きな画面であるにもかかわらず少ない情報量のデータしか表示されなかった。つまり、異なる種類の表示装置毎に適切な画面を表示しようとすると、異なる種類の表示装置毎に異なる表示データを用意しなくてはならないという問題点があった。この場合、表示内容に変更があった場合、表示装置毎に用意したそれぞれの記述を一様に変更する必要があり、コストの増大を招いていた。
【０００８】
この問題の解決策として、携帯等には、プロキシサービス等を利用して通常のＰＣ用の表示データを縮小変換する事も行われている。
【０００９】
また、ＰＣ等の大きな画面を持つ表示装置用に作られた表示データを、小さな画面を持つ表示装置で見る場合に、表示装置で複数の画面に分割して表示することが考えられる。この際、装置で表示しようとしている表示データの改ページ位置が装置内で自動的に修正されるものがある（例えば、特許文献１参照。）。
【００１０】
また、分割する表示境界にまたがる内容で、分割されて欲しくない内容が、２画面に分割されてしまう場合がある。この問題の解決策として、装置で表示しようとしている表示内容が表示境界で分割されそうになった場合、表示出力を制限するものがある（例えば、特許文献２参照。）。
【００１１】
【特許文献１】特開２００１−６７３４５号公報
【特許文献２】特開２００３−１９６０６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、プロキシサービス等を用いて、ＨＴＭＬ言語を独自に変換してから利用する方法では、変換作業が必要であり、更に、変換作業は、オリジナルの表示データを改変して表示するものであり、必ずしも製作者の意図した表示となるとは言えなかった。
【００１３】
また、特許文献１は、表示データの改ページ位置を自動的に修正し、見易さを向上させる技術である。しかし、この技術を実装した全てのクライアントは同じように動作を行い、クライアントの処理能力やリソースによってその挙動が変わるものではなく、クライアントの処理能力やリソースが異なっても同じ画面構成になってしまう問題があった。
【００１４】
また、特許文献２では、絵図等１つの表示対象要素が分割されてしまう場合について触れられているが、複数の要素が同一画面上で表示されず、複数の画面に分割してしまう場合があった。つまり、複数の要素を一度に閲覧、操作したいと言う場合に、表示データ作成者が意図した操作の容易性を著しく損なうという問題点があった。
【００１５】
本発明は上記の問題点に鑑みなされたもので、単一の表示データに基づき、画面サイズが異なる情報処理装置に対しても、表示データの提供者の意図に忠実な表示画面の構成を得ることを目的とする。
【課題を解決するための手段】
【００１６】
そこで、上記問題を解決するため、本発明は、格納手段を有し、表示データに応じて画面を構成する情報処理装置であって、前記表示データは、表示内容を示すコンテンツ要素と、コンテンツ要素間の分割を示す分割要素と、を含み、前記格納手段に格納されている、実際の分割に対応付けられる具体的な分割記述から、前記分割記述の抽象度を高めた複数段階の抽象的な分割記述まで、抽象度の違いで段階的に階層化された分割ルールと、前記分割要素に含まれる、前記分割ルールの階層要素を指定する分割指定情報と、に基づいて、前記画面に係る分割を決定する分割決定手段を有し、前記分割決定手段は、前記分割指定情報が指定する前記分割ルールの階層要素に直接対応する、前記画面に係る分割を決定できない場合、前記分割ルールの階層構造を利用して、次善の前記画面に係る分割を決定する次善分割決定手段を有することを特徴とする。
【００１７】
本発明によれば、格納手段を有し、表示データに応じて画面を構成する情報処理装置であって、前記表示データは、表示内容を示すコンテンツ要素と、コンテンツ要素間の分割を示す分割要素と、を含み、前記格納手段に格納されている、実際の分割に対応付けられる具体的な分割記述から、前記分割記述の抽象度を高めた複数段階の抽象的な分割記述まで、抽象度の違いで段階的に階層化された分割ルールと、前記分割要素に含まれる、前記分割ルールの階層要素を指定する分割指定情報と、に基づいて、前記画面に係る分割を決定する分割決定手段を有し、前記分割決定手段は、前記分割指定情報が指定する前記分割ルールの階層要素に直接対応する、前記画面に係る分割を決定できない場合、前記分割ルールの階層構造を利用して、次善の前記画面に係る分割を決定する次善分割決定手段を有することにより、単一の表示データに基づき、画面サイズが異なる情報処理装置に対しても、表示データの提供者の意図に忠実な表示画面の構成を得ることができる。
【００１８】
なお、情報処理装置とは、後述する情報処理装置等に対応する。また、格納手段とは、例えば、後述するプログラムメモリ４又はデータメモリ５等に対応する。また、表示データは、例えば、後述するような画面を構成（又は作成）するのに用いられるデータ（文書データ、線データ、表データ、図形データ）等に対応する。また、分割とは、例えば、改行、改ページ等に対応する。また、分割を決定するとは、例えば、改行又は改ページを行うか否か、また、改行又は改ページを行う場合は、どこで（どの位置で）改行又は改ページを行うか等を決定することに対応する。
【００１９】
また、上記問題を解決するため、本発明は、分割決定方法、プログラム、及び記憶媒体としてもよい。
【発明の効果】
【００２０】
本発明によれば、単一の表示データに基づき、画面サイズが異なる情報処理装置に対しても、表示データの提供者の意図に忠実な表示画面の構成を得ることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施例について図面に基づいて説明する。
【実施例１】
【００２２】
（第１の実施形態）
図１は情報処理装置のハードウェア構成を示すブロック図である。
図１において、１０１は情報（データ）を入力するための入力部である。１０２はＣＰＵであり、各種処理のための演算、論理判断等を行い、バス１０６に接続された各構成要素を制御する。１０３は情報（データ）を出力する出力部である。出力部１０３としては、ＬＣＤやＣＲＴ等のディスプレイや、プリンタ等の記録装置がある。
【００２３】
１０４はプログラムメモリであり、後述するフローチャート（アクティビティ図）の処理手順を含むＣＰＵ１０２による制御のためのプログラムを格納するメモリである。プログラムメモリ１０４は、ＲＯＭであってもよいし、外部記憶装置等からプログラムがロードされるＲＡＭであってもよい。
【００２４】
１０５はデータメモリであり、各種処理に係るデータ（例えば、表示データ、分割ルール等）を格納する。データメモリ１０５は、例えば、ＲＡＭとするが、不揮発な外部記憶媒体から、処理に先立ってロードしておく、或いは必要があるごとに参照するものとする。
【００２５】
１０６はＣＰＵ１０２の制御の対象とする各構成要素を指示するアドレス信号、各構成要素を制御するためのコントロール信号、各構成要素間で相互にやりとりされるデータの転送を行うためのバスである。
【００２６】
情報処理装置は、表示データを受け取ると、コンテンツ要素を画面に配置し、画面を構成する。コンテンツ要素は、ＵＩ部品（ユーザインタフェース部品）、テキスト、イメージ等である。後述する図１１及び図１２等に示されるように、表示データは、配置されるコンテンツ要素と、画面を分割してコンテンツ要素の配置を決定する分割要素との２つを含む。コンテンツ要素と、分割要素とは共にＸＭＬ要素として記述される。ＸＭＬ要素として記述された分割要素の例を、後述する図３に示す。
【００２７】
情報処理装置は、分割ルールを例えば、データメモリ１０５等に有している。表示データに含まれる分割要素には分割指定情報が含まれており、分割指定情報は、情報処理装置が持っている分割ルールの分割ルール要素の１つを指し示す。情報処理装置は、表示データを受け取ると、表示データ中の分割指定情報と、自身が有する分割ルールと、から、具体的な分割を決定し、画面を構成する。
【００２８】
なお、後述するクライアント及びサーバのハードウェア構成も、図１に示される情報処理装置のハードウェア構成と同様である。
【００２９】
まず、分割要素について説明を行う。
図２は、分割要素の構造の例を示すクラス図である。情報処理装置が分割を構成するための分割要素２０１は、それぞれが１つの分割を記述する１つ以上の分割指定情報２０２から構成されている。
【００３０】
各分割指定情報２０２は１つの分割指定情報要素２０３を有し、更に分割指定情報要素２０３は１つの分割指定情報要素２０３を持つか或いは持たないことによるリスト構造を成している。各分割指定情報要素２０３は階層化された抽象度の１段階を表しており、抽象度を表す１つの分割指定情報要素名２０４を有する。
【００３１】
図３は、分割指定情報の例である。図３の分割要素は、図２のクラス図に基づいて構成されている。
【００３２】
図２によると、分割要素２０１は１つ以上の分割指定情報２０２から構成される。一方、図３では、３０１の＜ｂｒ  ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"＞が分割要素２０１である。そして、その中の"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"が分割指定情報２０２である。よって、図３の例では、分割要素２０１が１つの分割指定情報２０２から構成されている。
【００３３】
図２によると分割指定情報２０２は、１つの分割指定情報要素２０３からなる。図３では、３０２のｂｒ要素が分割指定情報要素２０３である。更に、図２によると分割指定情報要素２０３は、０又は１つの分割指定情報要素２０３からなる。つまり、図３では３０２のｂｒ要素は、３０３のｌｉｎｅ要素を持っている。同様に、３０３のｌｉｎｅ要素は３０４のｓｍａｒｔ要素を持っている。３０４のｓｍａｒｔ要素は、分割指定情報要素２０３は持たない。図２によると分割指定情報要素２０３はそれぞれ１つの分割指定情報要素名２０４を持っている。図６の３０２のｂｒ要素、３０３のｌｉｎｅ要素、３０４のｓｍａｒｔ要素は、それぞれ、ｂｒ、ｌｉｎｅ、ｓｍａｒｔという分割指定情報要素名を持っている。このようにして、図３の分割要素は、図２のクラス図に基づいて構成されている。
【００３４】
次に、分割ルールについて説明を行う。
図４は、分割ルールの構造の一例を示すクラス図である。分割ルール４０１は、１つ以上の分割ルール要素４０２から構成されている。分割ルール要素４０２は非末端分割ルール要素４０３或いは末端分割ルール要素４０４の何れかである。非末端分割ルール要素４０３は１つ以上の分割ルール要素４０２を更に持つ。末端分割ルール要素４０４は、分割ルールを更に持つことはないが、１つの具体的な分割４０５を持っている。非末端分割ルール４０３は具体的な分割４０５を持っておらず、抽象度の高い分割である。この構成により、分割ルール４０１はツリー状構造を成し、ツリー状構造の末端の分割ルール要素４０２は必ず末端分割ルール要素４０４であり、また、必ず１つの具体的な分割４０５を持っている。
【００３５】
図５は、分割ルールの例である。図５の分割ルールは、図４のクラス図に基づいて構成されている。
【００３６】
図４によると、分割ルール４０１は１つ以上の分割ルール要素から成り立っている。また、それぞれの分割ルール要素は１つの分割指定情報要素名２０４を伴っている。図５ではツリー状構造の頂点である５０１のｂｒ要素が図４の分割ルール要素４０２である。図４によると分割ルール要素４０２は、非末端分割ルール要素４０３と、末端分割ルール要素４０４との２つのクラス持つ。つまり、分割ルール要素４０２は非末端分割ルール要素４０３と、末端分割ルール要素４０４との２種類があるということである。
【００３７】
図５の５０１のｂｒ要素は、非末端分割ルール要素である。図４によると、非末端分割ルール要素４０３は、１つ以上の分割ルール要素４０２を持つ。図５の５０１のｂｒ要素は、５１１のｐａｇｅ要素と、５１２のｌｉｎｅ要素との２つの分割ルール要素を持っている。同様に５１１のｐａｇｅ要素は分割ルール要素であり、且つ、非末端分割ルール要素であるので、１つ以上の分割ルール要素を持つことができ、５２１のｓｍａｒｔ要素及び５２２のａｂｓｏｌｕｔｅ要素を持っている。
【００３８】
同様に５１２のｌｉｎｅ要素は、分割ルール要素であり、且つ、非末端分割ルール要素であるので、１つ以上の分割ルール要素を持つことができ、５２３のｓｍａｒｔ要素及び５２４のａｂｓｏｌｕｔｅ要素を持っている。図５において５２１のｓｍａｒｔ要素及び５２２のａｂｓｏｌｕｔｅ要素、また、５２３のｓｍａｒｔ要素及び５２４のａｂｓｏｌｕｔｅ要素は、分割ルール要素ではある。しかしながら、末端分割ルール要素であるので、分割ルール要素を持つことができず、ツリー状構造の末端を形成する。
【００３９】
末端分割ルール要素は、具体的な分割を持ち、それぞれ具体的な分割として、５２１のｓｍａｒｔ要素は５３１の「スマート改ページ」、５２２のａｂｓｏｂｕｌｅ要素は５３２の「絶対改ページ」を持っている。また、５２３のｓｍａｒｔ要素は５３３の「スマート改行」、５２４のｓｍａｒｔ要素は５３４の「絶対改行」を持っている。このように、図４のクラス図に基づいて、図５の分割ルールが構成されている。
【００４０】
図４において、分割ルール要素４０２はそれぞれ１つの分割指定情報要素名２０４を持っている。つまり、図２の構造による分割要素は、必ず、図４の構造による分割ルールの分割ルール要素の１つを指し示すことができる。例えば、図３の分割要素の例の分割指定情報は、"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"であり、図５の分割ルールの５０１のｂｒの下の５１２のｌｉｎｅの下の５２４のｓｍａｒｔの分割ルール要素を指し示している。
【００４１】
図５の分割ルールのツリー状構造の末端には、具体的な分割が当てられており、階層を上がるごとに抽象度が高くなる。ツリー状構造の末端に、具体的な分割として５２１や５２３のｓｍａｒｔ、５２２や５２４のａｂｓｏｌｕｔｅ等がある。それらの１つ上の階層では、末端の具体的な分割をそれぞれ抽象化し、概念としてまとめている、５１１のｐａｇｅ、５１２のｌｉｎｅ等がある。
【００４２】
図５において、５３１の「スマート改ページ」はページ内にコンテンツ要素を置く余白がある場合はコンテンツ要素をページ内に配置し、余白がない場合はページ分割が行われて新たなページにコンテンツ要素を配置する具体的な分割である。５３２の「絶対改ページ」は、ページ内の余白の有無に拘らず、常にページ分割が行われて新たなページにコンテンツ要素を配置する具体的な分割である。５３３の「スマート改行」は行内にコンテンツ要素を置く余白がある場合はコンテンツ要素を行内に配置し、余白がない場合は行分割が行われて新たな行にコンテンツ要素を配置する具体的な分割である。５３４の「絶対改行」は、行内の余白の有無に拘らず、常に行分割が行われて新たな行にコンテンツ要素を配置する具体的な分割である。
【００４３】
次に、情報処理装置が、表示データを読み込んで画面配置を行う過程を図６のアクティビティ図を用いて説明する。なお、Ｓ６０１からＳ６０７は、各ステップを示す。
【００４４】
まず、情報処理装置は、表示データに要素が存在するか否かを判断し（Ｓ６０１）、要素が存在しなければ、処理を終了する。Ｓ６０１の判断の結果、要素がまだ存在するならば、情報処理装置は、表示データから要素の１つを読み込む（Ｓ６０２）。次に、情報処理装置は、要素が分割要素であるか否かを判断し（Ｓ６０３）、分割要素でなければ、取り出した要素を現在の位置に置く（Ｓ６０４）。次に、情報処理装置は、置いた要素のサイズにあわせ、現在位置を移動する（Ｓ６０５）。そして、情報処理装置は、Ｓ６０１の処理に戻る。Ｓ６０３の判断の結果、分割要素であれば、情報処理装置は、分割ルールから分割指定情報に対応する具体的な分割を得る（Ｓ６０７）。そして、情報処理装置は、現在位置を変更し（Ｓ６０７）、Ｓ６０１の処理に戻る。
【００４５】
図６におけるＳ６０７の、分割ルールから分割指定情報に対応する具体的な分割を得る過程について、図７のアクティビティ図を用いて説明する。なお、Ｓ７０１からＳ７０８は、各ステップを示す。
【００４６】
まず、情報処理装置は、分割指定情報の最初の分割指定情報要素を得て（Ｓ７０１）、前記分割指定情報要素に対応する分割ルール要素を得て、現在の分割ルール要素とする（Ｓ７０２）。次に、情報処理装置は、前記分割指定情報中に次の分割指定情報要素があるか否かを判断する（Ｓ７０３）。次の分割指定情報要素が存在する場合には、情報処理装置は、次の分割指定情報要素を前記分割指定情報から得て（Ｓ７０４）、前記分割指定情報要素に対応する分割ルール要素が存在するか否かを判断する（Ｓ７０５）。
【００４７】
前記判断の結果、前記分割指定情報要素に対応する前記分割ルール要素が存在する場合には、情報処理装置は、Ｓ７０２の処理に戻る。一方、対応する前記分割ルール要素が存在しない場合には、情報処理装置は、現在の分割ルール要素が末端分割ルール要素であるか否かを判断する（Ｓ７０６）。末端分割ルール要素であれば、情報処理装置は、前記要素に結び付けられている具体的な分割を得て（Ｓ７０７）、処理を終了する。Ｓ７０３の判断の結果、前記分割指定情報中に次の分割指定情報要素が存在しなければ、情報処理装置は、Ｓ７０６の判断に移る。Ｓ７０６の判断の結果、現在の分割ルール要素が末端分割ルール要素でなければ、情報処理装置は、現在の分割ルール要素の最初の子供要素を現在の分割ルール要素とし（Ｓ７０８）、Ｓ７０６の判断に戻る。
【００４８】
より具体的に、図３の分割指定情報を、図５の分割ルールに適応して具体的な分割を得る過程を図７のアクティビティ図を用いて説明する。Ｓ７０１において、情報処理装置は、図３に示されるような"ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"を得え、先頭の３０２のｂｒを得る。
【００４９】
図５のツリーのルートに、Ｓ７０１において取得したｂｒと一致する５０１のｂｒがあるので、情報処理装置は、Ｓ７０２において、５０１のｂｒを指定された分割ルール要素とする。
【００５０】
Ｓ７０３において３０２のｂｒの次には３０３のｌｉｎｅという分割指定情報要素があるので、情報処理装置は、Ｓ７０４に進む。Ｓ７０４において、情報処理装置は、次の分割指定情報要素の３０３のｌｉｎｅを得る。
【００５１】
Ｓ７０５において５０１のｂｒの下に５１２のｌｉｎｅに相当する要素があるので、情報処理装置は、Ｓ７０２に進む。Ｓ７０２において、情報処理装置は、５１２のｌｉｎｅを指定の分割ルール要素とする。Ｓ７０３において、情報処理装置は、３０３のｌｉｎｅの次には３０４のｓｍａｒｔという分割指定情報要素があるので、Ｓ７０４に進む。
【００５２】
Ｓ７０４において、情報処理装置は、次の分割指定情報要素の３０４のｓｍａｒｔを得る。Ｓ７０５において、情報処理装置は、５１２のｌｉｎｅの下に５２３のｓｍａｒｔに相当する要素があるので、Ｓ７０２に進む。
【００５３】
Ｓ７０２において、情報処理装置は、５２３のｓｍａｒｔを指定の分割ルール要素とする。Ｓ７０３において、情報処理装置は、３０４のｓｍａｒｔの次には分割指定情報要素がないので、Ｓ７０６に進む。
【００５４】
５２３のｓｍａｒｔは図５の上で末端要素であるので、情報処理装置は、Ｓ７０７に進む。Ｓ７０７において、情報処理装置は、図５の５０１のｂｒの下の５１２のｌｉｎｅの下の５２３のｓｍａｒｔと関連付けられた具体的な分割である、５３３の「スマート改行」を得る。
【００５５】
これまで、一般的な情報処理装置の場合を説明してきたが、本発明は、携帯電話や、ＰＤＡ、ＰＣ等異なる画面サイズを持つ情報処理装置に対応することができる。この過程をより具体的に説明する。
【００５６】
図８は、携帯電話等比較的小さな画面を持つ情報処理装置が持つ分割ルールの例である。携帯電話等小さな画面を持つ情報処理装置の場合、画面が小さい為に、多くの行分割、画面分割が要求される。また、搭載されるＣＰＵは非力であり、メモリも少ない為、複雑な分割、画面配置する余力がない。
【００５７】
そのため、図８の分割ルールの例に見られるように、多くのツリーの枝が省略された形にならざるを得ない。図７のアクティビティ図に基づくと、図３で指定された分割指定情報／ｂｒ／ｌｉｎｅ／ｓｍａｒｔを図８の分割ルールに照らした結果、情報処理装置は、具体的な分割／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。
【００５８】
図９は、ＰＤＡ等、比較的中程度の画面を持つ情報処理装置が持つ分割ルールの例である。ＰＤＡ等は、携帯電話と比べると、ある程度の大きさの画面を持つ。また、携帯電話と比べるとＣＰＵやメモリも多少増えるが、ＰＣに比べて非力である。よって、図９に示されるような分割ルールが搭載されることになる。
【００５９】
図７のアクティビティ図に基づくと、図３で指定された分割指定情報／ｂｒ／ｌｉｎｅ／ｓｍａｒｔを図９の分割ルールに照らした結果、情報処理装置は、具体的な分割／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。
【００６０】
図１０は、ＰＣ等、比較的大きな画面を持つ情報処理装置が持つ分割ルールの例である。ＰＣ等は、十分な大きさの画面を持ち、強力なＣＰＵや十分なメモリを搭載していることが考えられる為、様々な分割パターンが実現可能である。よって、図１０に見られるように複雑な分割ルールを搭載することが可能となる。
【００６１】
図７のアクティビティ図に基づくと、図６で指定された分割指定情報／ｂｒ／ｌｉｎｅ／ｓｍａｒｔを図１０の分割ルールに照らした結果、情報処理装置は、具体的な分割／ｂｒ／ｌｉｎｅ／ｓｍａｒｔを得る。
【００６２】
上述したように、携帯電話やＰＤＡ、ＰＣ等では、分割ルールが異なると、図３のように同じ分割指定情報を含む表示データを情報処理装置に読み込ませても、異なる具体的な分割を得ることになり、画面分割の方法やコンテンツの配置が異なる結果になる。
【００６３】
図１１及び図１２は、表示データをＸＭＬの一種であるＨＴＭＬとして記述した例である。以下、更に、より具体的に、図１１及び図１２の表示データについて詳しく説明し、図１１及び図１２の表示データを、図８及び図９、図１０の分割ルールを持つ携帯電話、ＰＤＡ、ＰＣの情報処理装置に読み込ませて画面を構成した例について説明する。
【００６４】
図１１の行番号１及び図１２の行番号６２は、ＨＴＭＬ要素であることを示すタグである。行番号２から５までは、ＨＴＭＬのｈｅａｄの記述である。図１１の行番号６から図１２の行番６１まではｂｏｄｙ要素であることを示しており、本実施形態における画面を構成するデータが記述されている。
【００６５】
図１１の行番号７の記述は、トップレベルの見出しを示すｈ１要素であり、要素をトップレベルの見出しとして画面を構成表示する。
【００６６】
図１１の行番号８の記述は、テキスト要素であり、テキストが画面上に配置される。図１１の１１、１２、１３、２２、２３、２４、３３、３４、３５及び図１２の行番号４５、４６、４７、４８、５０、５１、５２、５４、５６も同様である。
【００６７】
図１１の行番号１０の記述は、ｆｏｒｍ要素であり、図１２の６０行目までフォームが記述されていることを示している。図１２の行番号５９のｉｎｐｕｔタグで示される注文ボタン要素が押された場合、サーバのｏｒｄｅｒ．ｃｇｉが起動して、フォーム要素内のＵＩ部品の値がＰＯＳＴで送られることが記述されている。
【００６８】
図１１の行番号９、１１、１２、２１、２２、２３、３２、３３、３４及び図１２の行番号４４、４５、４６、４９、５０、５１、５２、５３、５５、５６、５８に本実施形態に基づく、分割要素ｂｒが記述されている。ｂｒタグに続いて、本実施形態による拡張であるｔｙｐｅ属性が指定してあり、属性値として分割指定情報が記述してある。
【００６９】
図１１の行番号７のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"となっている。図１１の行番号１１、１２、２２、２３、３３、３４も同様である。
【００７０】
図１１の行番号９のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｐａｇｅ／ｓｍａｒｔ"となっている。図１２の行番号４４、４９、５３、５５、５８も同様である。
【００７１】
図１１の行番２１のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅ"となっている。図１１の行番号３２、図１２の行番号４５、４７、４８、５０、５１、５２、５６、５７も同様である。
【００７２】
図８の分割ルールを持つクライアント（情報処理装置）が、図１１及び図１２の表示データから図１３、図１４、図１５、図１６、図１７の画面を構成する処理について説明する。
【００７３】
図１１の行番号７のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ｓｍａｒｔであるが、図８の分割ルールでは具体的な分割は存在せず、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。これにより、常に改行が行われる。画面が小さく作成者が意図しない場所で改行が行われるのではなく、作成者が意図した場所で改行が行われることにより小さな画面でも読み易くなる。行番号１１、１２、２２、２３、３３、３４も同様である。
【００７４】
図１１の行番号９のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｐａｇｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｐａｇｅ／ｓｍａｒｔであるが、図８の分割ルールでは具体的な分割は存在せず、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｐａｇｅ／ａｂｓｏｌｕｔｅを得る。これにより、常に改ページが行われ、画面が分割される。画面が小さく作成者が意図しない場所で改ページが行われるのではなく、作成者が意図した場所で改ページが行われることにより小さな画面でも読み易くなる。図１２の行番号４４、４９、５３、５５、５８も同様である。
【００７５】
図１１の行番２１のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅであり、図８の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。これにより、常に改行が行われる。作成者が意図した場所で改行が行われ、作成者に忠実な画面構成となる。図１１の行番号３２、図１２の行番号４５、４７、４８、５０、５１、５２、５６、５７も同様である。
【００７６】
以上により、図８の分割ルールを持つクライアントでは、図１１及び図１２の表示データから図１３、図１４、図１５、図１６、図１７の画面を構成される。
【００７７】
図９の分割ルールを持つクライアントが、図１１及び図１２の表示データから図１８、図１９の画面を構成する処理について説明する。
【００７８】
図１１の行番号７のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ｓｍａｒｔであるが、図９の分割ルールでは具体的な分割は存在せず、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。これにより、常に改行が行われる。行番号１１、１２、２２、２３、３３、３４も同様である。
【００７９】
図１１の行番号９のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｐａｇｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｐａｇｅ／ｓｍａｒｔであり、図９の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｐａｇｅ／ｓｍａｒｔを得る。
【００８０】
これにより、余白がある場合は改ページが行われず、余白がない場合には改ページが行われるスマート改ページが行われる。スマート改ページができる処理能力がある装置では、１つの画面内に多くの表示データが構成される。また、複数の画面に分割される場合でも作成者が意図しない場所で改ページが行われるのではなく、作成者が意図した場所で改ページが行われることにより読み易くなる。
【００８１】
図１２の行番号４９の分割要素では、改ページが起こり、画面が分割され２画面となる。図１１の行番号９及び図１２の行番号４４、５３、５５、５８では、要素を配置する余白があり、改ページは行われず続けて表示データの要素が配置される。
【００８２】
図１１の行番２１のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅであり、図９の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。これにより、常に改行が行われる。作成者が意図した場所で改行が行われ、作成者に忠実な画面構成となる。図１１の行番号３２、図１２の行番号４５、４７、４８、５０、５１、５２、５６、５７も同様である。
以上により、図９の分割ルールを持つクライアントでは、図１１及び図１２の表示データから図１８、図１９の画面を構成される。
【００８３】
図１０の分割ルールを持つクライアントが、図１１及び図１２の表示データから図２０の画面を構成する処理について説明する。
【００８４】
図１１の行番号７のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ｓｍａｒｔであり、図１０の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ｓｍａｒｔを得る。
【００８５】
これにより、行内に余白がある場合は改行が行われず、余白がない場合には改行が行われるスマート改行が行われる。スマート改行ができる処理に能力がある装置では、１つの行内に多くの表示データが構成され、見易さが向上する。行番号１１、１２、２２、２３、３３、３４も同様である。
【００８６】
図１１の行番号９のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｐａｇｅ／ｓｍａｒｔ"となっている。分割指定情報は、／ｂｒ／ｐａｇｅ／ｓｍａｒｔであり、図１０の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｐａｇｅ／ｓｍａｒｔを得る。
【００８７】
これにより、余白がある場合は改ページが行われず、余白がない場合には改ページが行われるスマート改ページが行われる。大きな画面を持ち、スマート改ページができる処理に能力がある装置では、１つの画面内に多くの表示データが構成され、見易さが飛躍的に向上する。図１２の行番号４４、４９、５３、５５、５８も同様である。
【００８８】
図１１の行番２１のｂｒタグの記述は、ｔｙｐｅ属性は、ｔｙｐｅ＝"／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅ"となっている。分割指定情報は、／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅであり、図１０の分割ルールでは具体的な分割が存在し、図７のアクティビティ図により、具体的な分割として／ｂｒ／ｌｉｎｅ／ａｂｓｏｌｕｔｅを得る。
【００８９】
これにより、常に改行が行われる。作成者が意図した場所で改行が行われ、作成者に忠実な画面構成となる。図１１の行番号３２、図１２の行番号４５、４７、４８、５０、５１、５２、５６、５７も同様である。
【００９０】
以上により、図１０の分割ルールを持つクライアントでは、図１１及び図１２の表示データから図２０の画面を構成する。
【００９１】
（第２の実施形態）
本実施形態では、前記表示データをＸＭＬに基づくＸＦｏｒｍｓで記述した場合について説明する。本実施形態の情報処理装置のハードウェア構成は、実施形態１と同様である。
【００９２】
図２１、図２２、図２３は、拡張を行ったＸＭＬの記述に基づき、ＨＴＭＬをホスト言語とした、拡張されたＸＦｏｒｍｓ言語として記述された表示データの例である。
【００９３】
図２１における、行番号９から２７行目においては、ＨＴＭＬのｈｅａｄの記述であり、この中で、ＸＦｏｒｍｓに基づくｍｏｄｅｌの記述を行っている。行番号１１から２３までのｉｎｓｔａｎｃｅでは、ｏｒｄｅｒ以下で、ｐｒｏｄｕｃｔ１、ｐｒｏｄｕｃｔ２、ｐｒｏｄｕｃｔ３、ｐａｙｍｅｎｔ、ｎａｍｅ、ｅｍａｉｌａｄｄｒｅｓｓ、ａｄｄｒｅｓｓ、ｃａｔａｌｏｇ、ｏｐｉｎｉｏｎの値が記述されている。
【００９４】
また、行番号２４、２５では"ｏｒｄｅｒ"というｉｄを持ったｓｕｂｍｉｓｓｉｏｎ
が定義されている。つまり、ｓｕｂｍｉｓｓｉｏｎが発生した場合、ｒｅｆ属性の値であるｏｒｄｅｒ以下がＸＭＬの書式でｍｅｔｈｏｄ属性に記述された"ｐｏｓｔ"形式によ
り、ａｃｔｉｏｎ属性の値である"ｈｔｔｐ：／／ｓｅｒｖｅｒ／ｏｒｄｅｒ．ｃｇｉ"
に対して、送られることが記述されている。
【００９５】
図２１の行番号２８から図２３の行番号６１までは、ＨＴＭＬのｂｏｄｙの記述であり、本実施形態における表示データの要素の記述を行っている。図２１の行番号３４、図２２の行番号５０、６７、８３、図２３の行番号９５、９８、１０１、１０５、１１１は、ＸＦｒｏｍｓが規定したＵＩ部品である。ユーザが操作することにより、ｒｅｆで記述された対応するｍｏｄｅｌのｉｎｓｔａｎｃｅの値が変更される。
【００９６】
図２３の行番号１１５は、注文ボタンであり、ユーザがクリックすることにより、図２１の行番号２４、２５に記述されたｓｕｂｍｉｓｓｉｏｎが実行される。図２３の行番号１１９は、キヤンセルボタンであり、ユーザがクリックすることにより、フォーム内のデータが初期化される。
【００９７】
本実施形態による拡張であるｂｒのタグを持つ分割要素及び前記分割要素の処理は、ＸＭＬの記述に基づき、ＨＴＭＬをホスト言語とした、本実施形態により拡張されたＸＦｏｒｍｓ言語として記述された表示データにおいても実施形態１と同様である。
【００９８】
（第３の実施形態）
割要素を包含する例について説明する。本実施形態の情報処理装置のハードウェア構成は、実施形態１と同様である。また、本実施形態の表示データの例は、実施形態１と同様である。
【００９９】
図２４及び図２５は、本実施形態によるＨＴＭＬ言語として記述された表示データの例である。
【０１００】
図２４の行番号１及び図２５の行番号７４は、ＨＴＭＬ要素であることを示すタグである。図２４の行番号２から５までは、ＨＴＭＬのｈｅａｄの記述である。図２４の行番号７から図２５の行番号７３まではｂｏｄｙ要素であることを示しており、本実施形態における画面を構成するデータが記述されている。
【０１０１】
図２４の行番号８の記述は、トップレベルの見出しを示すｈ１要素であり、要素をトップレベルの見出しとして画面を構成表示する。
【０１０２】
図２４の行番号９の記述は、テキスト要素であり、テキストが画面上に配置される。図２４の１３、１４、１５、２５、２６、２７、３８、３９、４０及び図２５の行番号５２、５８、５９、６０、６６も同様である。
【０１０３】
図２４の行番号１２の記述は、ｆｏｒｍ要素であり、図２５の７２行目までフォームが記述されていることを示している。つまり、図２５の行番号７０のｉｎｐｕｔタグで示される注文ボタン要素が押された場合、サーバのｏｒｄｅｒ．ｃｇｉが起動して、フォーム要素内のＵＩ部品の値がＰＯＳＴで送られることが記述されている。
【０１０４】
図２４の行番号１０及び図２５の行番号、５０、５８、６３、６６に本実施形態に基づく拡張であるｇｒｏｕｐタグが記述されており、また、図２５の行番号４９、５７、６２、６５、７１に本実施形態に基づく拡張である／ｇｒｏｕｐ終了タグが記述されている。
【０１０５】
ｇｒｏｕｐタグと／ｇｒｏｕｐ終了タグで囲まれたｇｒｏｕｐ要素は、１塊の要素であることを示しており、画面に構成できるか否か判定をｇｒｏｕｐ要素単位に行う。別画面に配置構成してもらっては困る部品は１つのｇｒｏｕｐ要素にしておけば、別々の画面になることはなく、画面作成者の意図が反映された画面構成になる。
【０１０６】
図２６は、情報処理装置における表示データからＵＩ部品を配置する一例を示すアクティビティ図である。なお、Ｓ２６０１からＳ２６１１は、各ステップを示す。
【０１０７】
まず、情報処理装置は、表示データにタグがあるかないかを判断し（Ｓ２６０１）、タグがない場合、終了する。表示データにタグがある場合は、情報処理装置は、タグを１つ読み込む（Ｓ２６０２）。
【０１０８】
情報処理装置は、読み込んだタグがｇｒｏｕｐタグかそうでないかを判断し（Ｓ２６０３）、ｇｒｏｕｐでない場合、画面に配置する（Ｓ２６０４）。Ｓ２６０３の判断の結果、ｇｒｏｕｐタグである場合、情報処理装置は、ｇｒｏｕｐ内のＵＩ部品を配置した場合のサイズを計算する（Ｓ２６０５）。
【０１０９】
情報処理装置は、ｇｒｏｕｐ内のＵＩ部品が画面に配置できるかどうかを判断し（Ｓ２６０６）、画面に入る場合、画面内に配置する（Ｓ２６０７）。Ｓ２６０６の判断の結果、画面に入らない場合、情報処理装置は、新規画面を作成し（Ｓ２６０８）、既存の画面に新規画面を開く為のボタンを追加する（Ｓ２６０９）。
【０１１０】
そして、情報処理装置は、新規画面に既存の画面に戻る為のボタンを追加する（Ｓ２６１０）。情報処理装置は、新規画面にＵＩ部品を配置する（Ｓ２６１１）。
【０１１１】
図２６に示されるような処理により、図２４及び図２５の表示データから、ＰＣのように比較的大きなサイズの画面を持つ表示装置では、図２７の画面が構成される。
【０１１２】
また、図２６に示されるような処理により、図２４及び図２５の表示データから、携帯電話のように比較的小さなサイズの画面を持つ表示装置では、図２８、図２９、図３０、図３１、図３２の画面が構成される。ｇｒｏｕｐ単位でグループが分割され別々の画面への配置となる。
【０１１３】
（第４の実施形態）
本実施形態では、実施形態１とは異なるＵＩ部品の画面への配置について説明する。本実施形態の情報処理装置のハードウェア構成は、実施形態１と同様である。また、本実施形態の表示データの例は、実施形態３と同様である。
【０１１４】
図３３は、情報処理装置における表示データからＵＩ部品を配置する一例を示すアクティビティ図である。なお、Ｓ３３０１からＳ３３０９は、各ステップを示す。
【０１１５】
まず、情報処理装置は、表示データに要素があるかどうかを判断する（Ｓ３３０１）。要素がある場合、情報処理装置は、ＵＩ部品指定要素を含むグループ要素１つを読み込む（Ｓ３３０２）。情報処理装置は、グループ内のＵＩ部品指定要素による部品を配置した全体のサイズを計算する（Ｓ３３０３）。そして、情報処理装置は、再びＳ３３０１へ戻り、全てのグループ要素を読み込むまで続ける。
【０１１６】
Ｓ３３０１の判断で要素がないとなった場合、情報処理装置は、全てのグループが画面内に配置できるかどうかを判断し（Ｓ３３０４）、画面に配置し（Ｓ３３０５）、終了する。Ｓ３３０４の判断の結果、画面内に配置できない場合、情報処理装置は、グループの数だけ新規画面を作成し（Ｓ３３０６）、既存の画面に新規画面を開く為のボタンを新規画面の数だけ追加する（Ｓ３３０７）。
【０１１７】
次に、情報処理装置は、新規画面に既存の画面に戻る為のボタンを追加する（Ｓ３３０８）。そして、情報処理装置は、それぞれの新規画面にグループ内のＵＩ部品を配置する（Ｓ３３０９）。
【０１１８】
図３３に示される処理により、図２４及び図２５で示される表示データから図３４、図３５、図３６、図３７、図３８の画面が構成される。
【０１１９】
（第５の実施形態）
本実施形態では、グループがグループを含む表示データについて説明する。本実施形態の情報処理装置のハードウェア構成は、実施形態１と同様である。また、図３９及び図４０は、本実施形態によるＨＴＭＬ言語として記述された表示データの例である。
【０１２０】
図３９の行番号１０、１１、２３、２４、３６、３７及び図４０の行番号４９、５０では、本実施形態のｇｒｏｕｐタグ及び／ｇｒｏｕｐ終了タグが記述され、グループの中にグループを含む構成をなしている。
【０１２１】
図４１、図４２、図４３は、図３９の行番号１０から図４０の行番号５０の表示データを実施形態１より更に小さな画面を持つ装置でＵＩ部品を配置した例である。画面が小さい為、図３９の行番号１０から図４０の行番号５０のＵＩ部品は配置できない。そのため、グループの中のグループ単位で画面が分割されて、配置される。
【０１２２】
（第６の実施形態）
本実施形態では、実施形態３に加えて、分割の指定と、分割ルールとを適応した例について説明する。本実施形態の情報処理装置のハードウェア構成は、実施形態１と同様である。本実施形態の分割要素は、実施形態５と同様、グループの形態をとっており、分割要素は、コンテンツ要素及び分割要素を含むことができる。分割要素は、分割要素が包含するコンテンツ要素及び分割要素の個々の分割方法と、配置方法とを決定する。
【０１２３】
本実施形態の分割要素は、実施形態１と同様、分割指定情報を持つことができる。また、本実施形態のクライアントは、実施形態１と同様、分割ルールを持つことができる。
【０１２４】
図４４、図４５、図４６は、本実施形態のクライアントが持つ分割ルールの一部をツリー状構造で示したものである。図４４はＰＣ等画面が十分大きく、十分な計算能力を持つＣＰＵが搭載されているクライアントが持つ分割ルールである。画面が十分に大きく、ＣＰＵの計算能力も余裕があるため、搭載する分割ルールも十分な規模を持つ。図４５は、ＰＤＡ等ある程度の中程度の画面を持ち、ＣＰＵの計算能力も携帯電話よりはあるが、ＰＣよりは劣るものを搭載している。携帯電話が持つ分割ルールに比べ、搭載する分割ルールが幾分大きい。図４６は携帯電話等画面が小さく、搭載されているＣＰＵの計算能力もかなり小さなものであり、分割ルールが非常に簡単なものしか搭載できない。
【０１２５】
このように、クライアントが持つ分割ルールは、クライアントの能力や規模に応じて異なっている。これによって、同一の表示データであっても、クライアントに応じた分割が実現されるようになる。
【０１２６】
図４７は、分割要素が持つ分割指定情報である。セパレータ／で区切られ、順に分割ルールの抽象度が最も高いルートから抽象度が低く具体的な分割を指示する順に並んでおり、クライアントが持つ分割ルールの要素の１つを指し示している。
【０１２７】
５００１は分割要素がグループであることを示している。５００２はｈｏｒｉｚｏｎｔａｌとｖｅｒｔｉｃａｌの２つがあり、分割ルールが包含する要素が水平、垂直の何れかに配置することを示している。５００３は要素が指定の方向に配置できなかった場合の具体的な分割方法を示している。ｐａｃｋと、ｓｅｐａｒａｔｅとの２つがあり、ｐａｃｋは配置できるだけ配置し、配置できなかった場合は分割を行うことを示している。一方、ｓｅｐａｒａｔｅは要素のうち１つでも同一区域に配置できなかった場合は全て分割して配置することを示している。
【０１２８】
図４８、図４９、図５０は、本実施形態によるＨＴＭＬ言語として記述された表示データの例である。
【０１２９】
図４８の行番号２及び図５０の行番号９８は、ＨＴＭＬ要素であることを示すタグである。図４８の行番号２から７までは、ＨＴＭＬのｈｅａｄの記述である。図４８の行番号９から図５０の行番９７まではｂｏｄｙ要素であることを示しており、本実施形態における画面を構成する表示データが記述されている。
【０１３０】
図４９の行番号３６は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｖｅｒｔｉｃａｌ／ｐａｃｋ"であることより、図５０の行番号９６までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素垂直方向に配置する指定であり、１画面内に順に要素を配置し、配置しきれない要素は別画面に配置することを指定している。
【０１３１】
図４９の行番号３７は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｖｅｒｔｉｃａｌ／ｐａｃｋ"であることより、図５０の行番号７３までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を垂直方向に配置する指定であり、１画面内に順に要素を配置し、配置しきれない要素は別画面に配置することを指定している。
【０１３２】
図４９の行番号４１は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図４９の行番号５３までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１３３】
図４９の行番号４２は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図４９の行番号５２までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１３４】
図４９の行番号４７は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図４９の行番号５１までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１３５】
図４９の行番号５４は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋ"であることより、図４９の行番号５９までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は別行に配置することを指定している。
【０１３６】
図４９の行番号６０は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋ"であることより、図５０の行番号７２までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は別行に配置することを指定している。
【０１３７】
図４９の行番号６２は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図４９の行番号６６までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１３８】
図５０の行番号６７は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図５０の行番号７１までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１３９】
図５０の行番号７４は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｖｅｒｔｉｃａｌ／ｐａｃｋ"であることより、図５０の行番号９５までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を垂直方向に配置する指定であり、１画面内に順に要素を配置し、配置しきれない要素は別画面に配置することを指定している。
【０１４０】
図５０の行番号７６は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図５０の行番号９０までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１４１】
図５０の行番号７７は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図５０の行番号８１までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１４２】
図５０の行番号８２は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図５０の行番号８９までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１４３】
図５０の行番号８３は、分割要素である。分割指定情報が"／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅ"であることより、図５０の行番号８７までの要素を含むグループ要素であることを示している。また、包含するコンテンツ要素及び分割要素を水平方向に配置する指定であり、１行内に順に要素を配置し、配置しきれない要素は全ての要素を別行に配置することを指定している。
【０１４４】
図５１は、図４４の分割ルールを持つクライアントが図４８、図４９、図５０の表示データを読み込んだときに画面構成の例である。図４４の分割ルールを持つクライアントは、ＰＣ等十分大きなサイズの画面を有しており、ＣＰＵの計算能力も十分高いクライアントを想定している。したがって、ＰＣ等は、表示データ作成者が想定した分割を全て表現できる能力を持ち合わせている。よって、図４４の分割ルールは、全ての分割を持つことができるツリー状構造になっている。そのため、図５１に見られるように、表示データ作成者が意図した分割方法に従って構成することができる。
【０１４５】
図５２及び図５３は、図４５の分割ルールを持つクライアントが図４８、図４９、図５０の表示データを読み込んだときに画面構成の例である。図４５の分割ルールを持つクライアントは、ＰＤＡ等比較的中程度のサイズの画面を有しており、ＣＰＵの計算能力も中程度のクライアントを想定している。したがって、ＰＤＡ等は、表示データ作成者が想定した分割を全て表現できる能力はない。よって、図４５の分割ルールでは、図４４の分割ルールに比べ、／ｇｒｏｕｐ／ｖｅｒｔｉｃａｌ／ｓｅｐａｒａｔｅを搭載していない。
【０１４６】
ＰＤＡ等の画面は、ＰＣ等の画面に比べて小さいので、ＴｉｍｅのＵＩが１行で入りきらず、２行に分かれている。この場合、ｈｏｕｒｓと、ｍｉｎｕｔｅｓとは同じ分割グループ内になっているので、共に改行している。ＮｉｇｈｔＭｏｄｅは、／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋの指定になっているので、ＮｉｇｈｔＭｏｄｅのみ改行になっている。Ｓｉｚｅでは、／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋになっている。／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｓｅｐａｒａｔｅになっているＷｉｄｔｈと、Ｈｅｉｇｈｔとでは、改行を行い、それで枠内に収まるので、Ｓｉｚｅと、Ｗｉｄｔｈとは同じ行になっている。また、２画面に分かれたため、ユーザが画面切り換えをできるように、ＰＤＡ等の情報処理装置によって、次の画面に行く為のＮｅｘｔボタン、前の画面に戻る為のＰｒｅｖボタンが付加されている。
【０１４７】
図５４、図５５、及び図５６は、図４６の分割ルールを持つクライアントが図４８、図４９、図５０の表示データを読み込んだときに画面構成の例である。図４６の分割ルールを持つクライアントは携帯電話等小さなサイズの画面を有しており、ＣＰＵの計算能力も非常に小さなクライアントを想定している。したがって、携帯電話等は、表示データ作成者が想定した分割を十分に表現できる能力を持たない。よって、図４６の分割ルールでは、図４４の分割ルールに比べ、計算に時間がかかると思われる、／ｇｒｏｕｐ／ｖｅｒｔｉｃａｌ／ｓｅｐａｒａｔｅ、及び／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋを搭載していない。
【０１４８】
携帯電話等の画面は、ＰＣ等の画面に比べて非常に小さいので、ＴｉｍｅのＵＩが１行で入りきらず、２行に分かれている。この場合、ｈｏｕｒｓと、ｍｉｎｕｔｅｓとは同じ分割グループ内になっているので、共に改行している。ＮｉｇｈｔＭｏｄｅは、／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋの指定になっているが、このクライアントの分割ルールには、／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋが搭載されていない。よって、ＮｉｇｈｔＭｏｄｅを含む、Ｂｒｉｇｈｔ、スライダー、ＮｉｇｈｔＭｏｄｅの全てが別の行に分割されて構成されている。同様に、Ｓｉｚｅ、Ｗｉｄｔｈ、Ｈｅｉｇｈｔでも、／ｇｒｏｕｐ／ｈｏｒｉｚｏｎｔａｌ／ｐａｃｋになっており、３行に分割されて構成されている。また、３画面に分かれたため、携帯電話等の情報処理装置によって、ユーザが画面切り換えをできるように、次の画面に行く為のＮｅｘｔボタン、前の画面に戻る為のＰｒｅｖボタンが付加されている。
【０１４９】
以上、上述した各実施形態によれば、単一の表示データに基づき、画面サイズが異なる情報処理装置に対しても、表示データの提供者の意図に忠実な表示画面の構成を得ることができる。
【０１５０】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１５１】
【図１】情報処理装置のハードウェア構成を示すブロック図である。
【図２】表示データの構造の一例を示すクラス図である。
【図３】分割指定情報の例を示す図（その１）である。
【図４】分割ルールの構造の一例を示すクラス図である。
【図５】分割ルールをツリー状構造で示した例の図である。
【図６】表示データの構成処理の一例を示すアクティビティ図（その１）である。
【図７】分割指定情報から具体的な分割を得る処理の一例を示すアクティビティ図である。
【図８】携帯電話が持つ分割ルールをツリー状構造で示した例の図（その１）である。
【図９】ＰＤＡが持つ分割ルールをツリー状構造で示した例の図（その１）である。
【図１０】ＰＣが持つ分割ルールをツリー状構造で示した例の図（その１）である。
【図１１】表示データの例を示す図（その１）である。
【図１２】表示データの例を示す図（その２）である。
【図１３】携帯電話の画面構成の例を示す図（その１）である。
【図１４】携帯電話の画面構成の例を示す図（その２）である。
【図１５】携帯電話の画面構成の例を示す図（その３）である。
【図１６】携帯電話の画面構成の例を示す図（その４）である。
【図１７】携帯電話の画面構成の例を示す図（その５）である。
【図１８】ＰＤＡの画面構成の例を示す図（その１）である。
【図１９】ＰＤＡの画面構成の例を示す図（その２）である。
【図２０】ＰＣの画面構成の例を示す図（その１）である。
【図２１】ＸＦｏｒｍｓで記述された表示データの例を示す図（その１）である。
【図２２】ＸＦｏｒｍｓで記述された表示データの例を示す図（その２）である。
【図２３】ＸＦｏｒｍｓで記述された表示データの例を示す図（その３）である。
【図２４】ＸＦｏｒｍｓで記述された表示データの例を示す図（その４）である。
【図２５】ＸＦｏｒｍｓで記述された表示データの例を示す図（その５）である。
【図２６】表示データの構成処理の一例を示すアクティビティ図（その２）である。
【図２７】ＰＣの画面構成の例を示す図（その２）である。
【図２８】携帯電話の画面構成の例を示す図（その６）である。
【図２９】携帯電話の画面構成の例を示す図（その７）である。
【図３０】携帯電話の画面構成の例を示す図（その８）である。
【図３１】携帯電話の画面構成の例を示す図（その９）である。
【図３２】携帯電話の画面構成の例を示す図（その１０）である。
【図３３】表示データの構成処理の一例を示すアクティビティ図（その３）である。
【図３４】画面構成の例を示す図（その１）である。
【図３５】画面構成の例を示す図（その２）である。
【図３６】画面構成の例を示す図（その３）である。
【図３７】画面構成の例を示す図（その４）である。
【図３８】画面構成の例を示す図（その５）である。
【図３９】ＸＦｏｒｍｓで記述された表示データの例を示す図（その６）である。
【図４０】ＸＦｏｒｍｓで記述された表示データの例を示す図（その７）である。
【図４１】画面構成の例を示す図（その６）である。
【図４２】画面構成の例を示す図（その７）である。
【図４３】画面構成の例を示す図（その８）である。
【図４４】分割ルールをツリー状構造で示した例の図（その１）である。
【図４５】分割ルールをツリー状構造で示した例の図（その２）である。
【図４６】分割ルールをツリー状構造で示した例の図（その３）である。
【図４７】分割指定情報の例を示す図（その２）である。
【図４８】ＸＦｏｒｍｓで記述された表示データの例を示す図（その８）である。
【図４９】ＸＦｏｒｍｓで記述された表示データの例を示す図（その９）である。
【図５０】ＸＦｏｒｍｓで記述された表示データの例を示す図（その１０）である。
【図５１】画面構成の例を示す図（その９）である。
【図５２】画面構成の例を示す図（その１０）である。
【図５３】画面構成の例を示す図（その１１）である。
【図５４】画面構成の例を示す図（その１２）である。
【図５５】画面構成の例を示す図（その１３）である。
【図５６】画面構成の例を示す図（その１４）である。
【符号の説明】
【０１５２】
１０１  入力部
１０２  ＣＰＵ
１０３  出力部
１０４  プログラムメモリ
１０５  データメモリ
１０６  バス
【図１】
2007133508.tif 000003
【図２】
2007133508.tif 000004
【図３】
2007133508.tif 000005
【図４】
2007133508.tif 000006
【図５】
2007133508.tif 000007
【図６】
2007133508.tif 000008
【図７】
2007133508.tif 000009
【図８】
2007133508.tif 000010
【図９】
2007133508.tif 000011
【図１０】
2007133508.tif 000012
【図１１】
2007133508.tif 000013
【図１２】
2007133508.tif 000014
【図１３】
2007133508.tif 000015
【図１４】
2007133508.tif 000016
【図１５】
2007133508.tif 000017
【図１６】
2007133508.tif 000018
【図１７】
2007133508.tif 000019
【図１８】
2007133508.tif 000020
【図１９】
2007133508.tif 000021
【図２０】
2007133508.tif 000022
【図２１】
2007133508.tif 000023
【図２２】
2007133508.tif 000024
【図２３】
2007133508.tif 000025
【図２４】
2007133508.tif 000026
【図２５】
2007133508.tif 000027
【図２６】
2007133508.tif 000028
【図２７】
2007133508.tif 000029
【図２８】
2007133508.tif 000030
【図２９】
2007133508.tif 000031
【図３０】
2007133508.tif 000032
【図３１】
2007133508.tif 000033
【図３２】
2007133508.tif 000034
【図３３】
2007133508.tif 000035
【図３４】
2007133508.tif 000036
【図３５】
2007133508.tif 000037
【図３６】
2007133508.tif 000038
【図３７】
2007133508.tif 000039
【図３８】
2007133508.tif 000040
【図３９】
2007133508.tif 000041
【図４０】
2007133508.tif 000042
【図４１】
2007133508.tif 000043
【図４２】
2007133508.tif 000044
【図４３】
2007133508.tif 000045
【図４４】
2007133508.tif 000046
【図４５】
2007133508.tif 000047
【図４６】
2007133508.tif 000048
【図４７】
2007133508.tif 000049
【図４８】
2007133508.tif 000050
【図４９】
2007133508.tif 000051
【図５０】
2007133508.tif 000052
【図５１】
2007133508.tif 000053
【図５２】
2007133508.tif 000054
【図５３】
2007133508.tif 000055
【図５４】
2007133508.tif 000056
【図５５】
2007133508.tif 000057
【図５６】
2007133508.tif 000058