JP2005228317A - サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 - Google Patents
サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 Download PDFInfo
- Publication number
- JP2005228317A JP2005228317A JP2005030679A JP2005030679A JP2005228317A JP 2005228317 A JP2005228317 A JP 2005228317A JP 2005030679 A JP2005030679 A JP 2005030679A JP 2005030679 A JP2005030679 A JP 2005030679A JP 2005228317 A JP2005228317 A JP 2005228317A
- Authority
- JP
- Japan
- Prior art keywords
- service
- screen
- instruction
- customization
- server
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000006870 function Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 22
- 229920001690 polydopamine Polymers 0.000 description 20
- 238000012545 processing Methods 0.000 description 17
- 230000004044 response Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 101000674731 Homo sapiens TGF-beta-activated kinase 1 and MAP3K7-binding protein 1 Proteins 0.000 description 9
- 102100021228 TGF-beta-activated kinase 1 and MAP3K7-binding protein 1 Human genes 0.000 description 9
- 101000674728 Homo sapiens TGF-beta-activated kinase 1 and MAP3K7-binding protein 2 Proteins 0.000 description 4
- 102100021227 TGF-beta-activated kinase 1 and MAP3K7-binding protein 2 Human genes 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 2
- 101100379633 Xenopus laevis arg2-a gene Proteins 0.000 description 2
- 101150088826 arg1 gene Proteins 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 102100021723 Arginase-1 Human genes 0.000 description 1
- 101000752037 Homo sapiens Arginase-1 Proteins 0.000 description 1
- 101000800287 Homo sapiens Tubulointerstitial nephritis antigen-like Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】クライアントのユーザインタフェイス(UI)をカスタマイズするとき、毎回サーバにログインしてプログラムを更新するのは煩雑である。
【解決手段】サーバ4はクライアントのPDA2にサービスを提供するとき、サービス画面も送る。PDA2は送られたHTMLを解釈してUIを表示する。サーバはサービス間の連携等のカスタマイズが可能なようにHTMLに拡張スクリプトを埋め込む。例えば、プリントサービスの画面で「連携:リンク」ボタンを押せば、プリントサービスとFAXサービスのリンクを指定するための画面が表示される。これらの画面を介してサービス間のリンク設定が行われる。
【選択図】図1
【解決手段】サーバ4はクライアントのPDA2にサービスを提供するとき、サービス画面も送る。PDA2は送られたHTMLを解釈してUIを表示する。サーバはサービス間の連携等のカスタマイズが可能なようにHTMLに拡張スクリプトを埋め込む。例えば、プリントサービスの画面で「連携:リンク」ボタンを押せば、プリントサービスとFAXサービスのリンクを指定するための画面が表示される。これらの画面を介してサービス間のリンク設定が行われる。
【選択図】図1
Description
この発明は、サービス提供形態をカスタマイズする方法およびその方法の実施に使用可能なサーバ装置に関する。この発明は特に、サーバ装置からサービスを受けるクライアント装置から、そのサービスの提供形態をカスタマイズする方法と、クライアント装置からの指示に従ってサービス提供形態をカスタマイズするサーバ装置に関する。
近年、グラフィカル・ユーザ・インタフェイス(GUI)の採用により、コンピュータなどの情報機器に対するユーザの操作を簡単化する場合が多い。例えば、ユーザが自己の装置(クライアント装置)に対してサーバ装置からなんらかのサービスを受ける場合にも、そのサービスに関するサービス画面(選択できるサービス対象項目の一覧や、サービスの提供状況などを示す画面)に図形シンボル等を用いたGUIを採用すればサービスの選択や実行が容易になる。ユーザは例えば、キーボードから長い文字列を入力するかわりに、画面上のボタンをマウス等によってクリックすることでサービスの選択、実行を指示する。GUIは視認性、識別性を考慮して設計され、一般にユーザの作業効率を大きく改善することができる。
しかしその一方で、ユーザがこのGUIをカスタマイズしたいという要請もある。ユーザごとに作業内容や作業ごとの頻度などが異なるため、GUIを自分の作業状況に合わせて手直しすべき場合があるためである。
特開平6−4280号公報はユーザ自身の操作によって所望のGUIを構築する方法を開示する。同方法は、従来GUIをプログラミングする作業が煩雑かつ困難であった点に鑑み、パネル・タイプ(例えばウインドウやメッセージ・ボックス)ごとにタイプを定義し、修正することを可能にするものである。同方法を実現するGUIエディタは、ユーザが変更可能なGUIソースコード制御ファイルを収容し、そのファイルはGUIを定義するタグ・ファイルを収容している。タグ・ファイルはGUIパネルのオブジェクト(例えばアイコンやコントロール・ボックス)を記述する。これらのファイルを用い、この方法は大別して、前記制御ファイルをオープンするステップと、制御ファイル中のタグ・ファイルに編集を加えるステップを含んでいる。同方法により、ユーザは自ら複雑なプログラミングをすることなく、所期のGUIパネルを作成、再利用するというものである。
一方、特開平6−110670号公報にも、ユーザによるUIのカスタマイズ方法が開示されている。同方法もユーザをプログラミング技術、特にGUIを構成する拡張言語の修得の煩から解放することを目的とするものである。同方法では、拡張言語の「イベント取得」という命令によって拡張言語インタプリタの動作を中断して所期のイベントを取得するという構成をとるため、ユーザは新たに拡張言語自体を覚える必要がなくなる。
以上の2つの従来技術はともに、プログラミング経験の乏しいユーザによるカスタマイズ作業を支援する点で有用であるが、ネットワークを通して各種サービスが提供される場合、例えばインターネットによってサービスが提供される場合、以下の理由により、別の観点からサービス画面のGUIのカスタマイズを考える必要がある。
インターネットを介するサービスでは、クライアント(ここではユーザ装置またはそれに内蔵されたクライアントプログラムを指す)のUI自体がサーバからHTML(Hyper Text Markup Language)という画面構成記述言語で記述されたテキストの形態で送られてくる。HTMLは文書構造記述言語SGML(Standard Generalized Markup Language)の一種として画定された言語であり、文字列の表示を中心に、イメージデータ等の取り込み等を可能にする。すなわち、サーバ側ではHTMLの文法に則ってテキストを生成してこれをクライアントに送り、クライアントではこのテキストをHTMLの文法に則って解釈し、指定された配置、大きさ、フォント等に従って文字列を表示するとともに、文字列以外のイメージ等を表示する。これによってサービス画面のGUIが構成されるため、このサービス画面に関するカスタマイズは単にユーザ装置単体で解決される問題ではない。
クライアント装置におけるサービス画面のGUIを含むサービスの提供形態をカスタマイズする場合、おおもとのHTMLテキスト(以下単に「HTML」)がサーバから提供されるため、サーバ側の操作が必要となる。GUIのカスタマイズは以下の手順を踏む。
1.ユーザが自己の要望をサーバの管理者等(管理者または開発者)に連絡する
2.サーバの管理者等がサーバにログインし、ユーザの要望に従ってHTMLやHTMLを生成するCGIプログラムを書き換える。
2.サーバの管理者等がサーバにログインし、ユーザの要望に従ってHTMLやHTMLを生成するCGIプログラムを書き換える。
この結果、以下の点で改善の余地が生じる。
(1)手間がかかり、対応時間も長い
一旦管理者等を介して作業するためである
(2)カスタマイズが不完全になる
仲介者が入るため、意向が完全に反映されるとは限らない
(3)カスタマイズ作業に熟練を要する
管理者等はHTMLやCGIプログラムを直接書き換えるため、これらに関する熟練を要する。
一旦管理者等を介して作業するためである
(2)カスタマイズが不完全になる
仲介者が入るため、意向が完全に反映されるとは限らない
(3)カスタマイズ作業に熟練を要する
管理者等はHTMLやCGIプログラムを直接書き換えるため、これらに関する熟練を要する。
[目的]
本発明はこれらの課題に鑑みてなされたものであり、その目的は、サーバからサービスが供給されるとき、ユーザが自分で簡単にサービス提供形態(すなわち、前記サービスに関するサービス画面の構成や、そのサービスと別のサービスとの連携など)についてカスタマイズを行う方法と、この方法の実施を可能とするサーバ装置を提供することにある。
本発明はこれらの課題に鑑みてなされたものであり、その目的は、サーバからサービスが供給されるとき、ユーザが自分で簡単にサービス提供形態(すなわち、前記サービスに関するサービス画面の構成や、そのサービスと別のサービスとの連携など)についてカスタマイズを行う方法と、この方法の実施を可能とするサーバ装置を提供することにある。
(1)本発明はサービスの提供形態をカスタマイズする方法であり、サーバ装置からサービスを受けるクライアント装置から、前記サービスの提供形態をカスタマイズする方法である。「サービスの提供形態」は、サービスの内容自体に関するものであってもよいし、サービスの提供に付随するものであってもよい。前者の場合、例えば複数の異なるサービスがある順序で提供されるとき、それらのサービスの種類と順序が提供形態を決める。後者の場合、あるサービスが提供されるとき、例えばそのサービスに関するサービス画面の構成が提供形態を決める。
この状況において、前記サーバ装置は、サービスが前記クライアント装置によって実際に利用されているとき、前記提供形態を変更するための前記クライアント装置からの指示を受け付ける状態でそのサービスを提供し、前記変更の指示を受け付けたとき、その指示に従って前記提供形態を変更したうえでサービスの提供を続行する。「サービスが前記クライアント装置によって実際に利用されている」とは、「サーバ装置が前記クライアント装置に対してサービスを実際に提供している」と同義である。「指示を受け付ける状態」の例として、「指示入力ボタンを画面に表示する状態」を考えることができる。
本発明では、サービスが実際に提供されている状態のまま、そのサービスに関するカスタマイズが可能となり、カスタマイズのためにいったんサービスから抜ける必要がない。
(2)一方、本発明のサーバ装置は、クライアント装置に対して、サービスと、そのサービスに関して該クライアント装置の画面に表示すべきサービス画面の画面構成情報(例えば、HTML等のマークアップ言語で記述される情報)とを提供する装置である。この前提でこのサーバ装置は、前記クライアント装置からサービスに関する指示が送信されたとき、この指示を受信する受信手段と、受信した指示の内容を解釈する指示解釈手段と、解釈された指示の内容がサービスの実行(例えばサービスの提供)を示すとき、該当するサービスを実行するサービス実行手段と、解釈された指示の内容がサービスの提供形態のカスタマイズを示すとき、その指示に従ってカスタマイズを実行するカスタマイズ手段と、前記カスタマイズ指示の入力が前記サービス画面上で受け付けられるよう前記画面構成情報を生成する画面構成情報生成手段と、この画面構成情報を前記クライアント装置に送信する送信手段とを含む。
この態様において、まずクライアント装置からなんらかの指示(要求)がサーバ装置に送信される。サーバ装置は受信手段でこれを受信し、指示の内容を指示解釈手段で解釈する。指示の内容が文書の印刷のようなサービスの実行であれば、該当するサービス(ここでは実際に印刷すること)がサービス実行手段で実行される。
一方、指示の内容がサービスの提供形態のカスタマイズを示すとき、その指示に従って、カスタマイズ手段によりカスタマイズが実行される。このカスタマイズ指示の入力はサービス画面上で受け付けられるため、あるサービスの実行中に、そのサービス自体をカスタマイズの対象とすることができる。ここでは、カスタマイズ指示の入力が可能なように前記画面構成情報が画面構成情報生成手段で生成され、これが送信手段によって前記クライアント装置に送信される。
(3)本発明のサーバ装置のある態様では、(2)のカスタマイズ手段が、解釈された指示の内容が現在提供中のサービスに関する前記サービス画面の構成の変更を示すとき、画面構成情報生成手段は、その指示に従ってそのサービスの提供中に画面構成の変更を実行する。
(4)(3)のとき本発明のある態様では、前記画面構成情報生成手段は、前記サービス画面に表示されるサービス対象項目のうち、その構成を変更することのできるものを選択可能な状態で表示するよう前記画面構成情報を生成する。
「サービス対象項目」とは、各サービス画面においてサービスとして指定できる要素または項目をいう。従って、サービス内容の指定が進み、サービス画面が変化していくと、サービス対象項目も変化していく。例えば、サービスの初期画面では通常「プリントサービス、ファックスサービス、ファイルサービス…」のように、大まかなサービスの種別が表示されるため、プリントサービス等がサービス対象項目となる。ここでユーザが「プリントサービス」を選択すると、「文書名、プリンタ名、枚数、用紙サイズ…」などの項目が現れる。ここでは、これらサービスの具体的内容がサービス対象項目である。なおサービス対象項目は、これらのように直接サービスの内容に関与するもの以外に、サービスの概要説明文のように関与しないものも含む意義で用いる。概要説明文も画面構成変更の対象になりうるためである。
この態様において、ユーザは実際に構成を変更すべき項目をチェックまたはクリック等すればよく、ユーザ自身がプログラミングをしたり文字列を入力する必要がない。
(5)本発明のサーバ装置の別の態様では、(2)のカスタマイズ手段が、解釈された指示の内容が異なる複数のサービス間の連携に関する指示であるとき、その指示に従い、カスタマイズ手段がサービスのリンク設定を行う。「サービス間の連携」とは、あるサービスと別のサービスを関連づけて保持することをいい、例えば、あるサービスを実行したとき、つづけて実行したいサービスが関連づけの候補となる。なお、「リンク設定」は、すでになされた設定の解消を含む意義で用いる。
(6)(5)のとき本発明のある態様では、前記画面構成情報生成手段は、前記サービス画面に表示されるサービス対象項目のうち、他のサービス対象項目とリンク付けすることのできるものを選択可能な状態で表示するよう前記画面構成情報を生成する。この後、前記サービス実行手段は、前記解釈された指示の内容がリンク付けされた一方のサービス対象項目の実行を示すとき、リンク付けされた他方のサービス対象項目も実行する。
本発明のサービスの提供形態をカスタマイズする方法によれば、サーバ装置がサービスの提供形態に対する変更指示を受け付ける状態で当該サービスを提供するため、クライアント装置がサーバ装置からサービスを受けている間に、そのサービスに対するカスタマイズを行うことができる。このとき、ユーザが自らプログラミングをしたり、サーバの管理者に依頼してサーバにログインするなどの煩雑な手続も不要となる。当然、サーバの管理者が自ら例えばHTMLやCGIプログラムを書き換えるという作業も不要になる。また、サービス画面を見ながらカスタマイズをすることができるため、カスタマイズの結果の確認も容易である。
一方、本発明のサーバ装置は、クライアント装置におけるカスタマイズ指示の入力がサービス画面上で受け付けられるよう画面構成情報を生成するため、ユーザはサービス画面においてそのサービスに関するカスタマイズを指示することができる。
このとき、本発明のサーバ装置は画面構成情報生成手段を有するため、指示の内容が現在提供中のサービスに関するサービス画面の構成の変更を示せば、その指示に従ってその画面構成が変更される。さらに該手段は、サービス画面に表示されるサービス対象項目のうち、その構成を変更することのできるものを選択可能な状態で表示すため、カスタマイズ作業が非常に容易になる。
一方、本発明のサーバ装置は、サービスの連携に関するカスタマイズ指示を実行するカスタマイズ手段を設けたため、指示の内容が異なる複数のサービス間の連携に関する指示であるとき、その指示に従ってサービスのリンク設定が行われる。この結果、複数のサービスを連続して行うようなカスタマイズが可能となる。このときさらに、本発明のサーバ装置の画面構成情報生成手段がサービス対象項目のうち、他のサービス対象項目とリンク付けすることのできるものを選択可能な状態で表示するため、カスタマイズ作業が容易になる。
本発明の好適な実施形態を適宜図面を参照しながら説明する。ここでは、インターネットを介してサービスおよびそのサービス画面がHTMLの形態で提供されるものとする。HTMLをクライアントに提供する装置(またはそのプログラム)を「HTMLサーバ」または単に「サーバ」と呼ぶ。WWW(World Wide Web)サーバはその例である。一方、クライアント装置(またはそのプログラム)はHTMLを解釈して表示するため、「HTMLビュア」または単に「ビュア」と呼ぶ。WWWブラウザはその例である。
本実施形態では、原則としてカスタマイズの実現に関するスクリプト(以下「拡張スクリプト」という)をHTMLのコメント部分に記述することでカスタマイズを実現する。ビュアはこの拡張スクリプトを解釈できるように機能を拡張する。従来のビュアはコメント部分を無視するため、追加された記述によって画面の異常表示等の不具合を起こすおそれはない。これにより、下位互換性が維持される。拡張スクリプトを埋め込んだHTML(以下「拡張HTML」という)の記述方法は実施形態の最後に説明する。
[1]カスタマイズの種類
サービス画面の構成に関するものと、サービス間の連携に関するものに大別される。前者にはタブ、固定表示領域設置、UIオブジェクトの削除、詳細/簡略表示、ページ分岐等、後者には別サービスリンク機能等がある。
サービス画面の構成に関するものと、サービス間の連携に関するものに大別される。前者にはタブ、固定表示領域設置、UIオブジェクトの削除、詳細/簡略表示、ページ分岐等、後者には別サービスリンク機能等がある。
(1)サービス画面の構成に関するもの
1.タブ
「タブ」とは、表示の各単位(例えば文字列やラジオボタンなど)の先頭を配置すべき指定位置、またはその位置に実際に配置することの両様の意味を持つ。タブ機能は、タブにラジオボタンやチェックボックス等のUIオブジェクトを前記指定位置に整列させる機能である。従来のHTMLにはタブコマンドがなかったため、UIオブジェクトを整列させるためには、サーバ側でUIオブジェクトの直前に必要数のスペースを挿入して位置を調節する必要があった。タブにより、オブジェクトの視認性改善に大きな効果が得られる。
1.タブ
「タブ」とは、表示の各単位(例えば文字列やラジオボタンなど)の先頭を配置すべき指定位置、またはその位置に実際に配置することの両様の意味を持つ。タブ機能は、タブにラジオボタンやチェックボックス等のUIオブジェクトを前記指定位置に整列させる機能である。従来のHTMLにはタブコマンドがなかったため、UIオブジェクトを整列させるためには、サーバ側でUIオブジェクトの直前に必要数のスペースを挿入して位置を調節する必要があった。タブにより、オブジェクトの視認性改善に大きな効果が得られる。
2.固定表示領域設置
画面の一部にスクロールしない固定表示領域を設ける。「登録ボタン」など、任意のタイミングでユーザが操作しうるUIは、表示中のHTML文書がスクロールしても画面内にとどまると便利である。特に、PDAのように画面の小さな装置で長い文書を表示しているとき、登録ボタンが文書の末尾に設けられていれば、ユーザはいちいち画面をスクロールさせて末尾に行き、これを押さなければならない。そこで固定表示領域を設け、この領域に表示すべきUIオブジェクトの指定を可能とする。
画面の一部にスクロールしない固定表示領域を設ける。「登録ボタン」など、任意のタイミングでユーザが操作しうるUIは、表示中のHTML文書がスクロールしても画面内にとどまると便利である。特に、PDAのように画面の小さな装置で長い文書を表示しているとき、登録ボタンが文書の末尾に設けられていれば、ユーザはいちいち画面をスクロールさせて末尾に行き、これを押さなければならない。そこで固定表示領域を設け、この領域に表示すべきUIオブジェクトの指定を可能とする。
3.削除
画面に表示する必要のないUIオブジェクトを指定して削除する。そのオブジェクトに対する操作が稀な場合等に有用である。特に、画面の小さな装置に複雑なUIを表示するとき、ユーザの視認性を高める機能である。指定されたオブジェクトは画面から消えるが、サービスの属性(項目)としてはサーバ側に保持つづける。このカスタマイズは、例外的に拡張HTMLによらず、単にHTMLテキストの該当個所の削除によって行う。
画面に表示する必要のないUIオブジェクトを指定して削除する。そのオブジェクトに対する操作が稀な場合等に有用である。特に、画面の小さな装置に複雑なUIを表示するとき、ユーザの視認性を高める機能である。指定されたオブジェクトは画面から消えるが、サービスの属性(項目)としてはサーバ側に保持つづける。このカスタマイズは、例外的に拡張HTMLによらず、単にHTMLテキストの該当個所の削除によって行う。
4.詳細/簡略表示
カスタマイズの対象項目の表示レベルを変更する。簡略表示では、本来選択または文字列の入力が可能なUIオブジェクトを選択等の不可能な状態に機能縮減した上で、これらをまとめて表示する。詳細表示はこの逆である。このカスタマイズも画面の小さな装置などに有用である。
カスタマイズの対象項目の表示レベルを変更する。簡略表示では、本来選択または文字列の入力が可能なUIオブジェクトを選択等の不可能な状態に機能縮減した上で、これらをまとめて表示する。詳細表示はこの逆である。このカスタマイズも画面の小さな装置などに有用である。
5.ページ分岐
画面に多くのオブジェクトが存在する場合、あまり使用しないオブジェクト等を項目別に別のページに集めて表示する。
画面に多くのオブジェクトが存在する場合、あまり使用しないオブジェクト等を項目別に別のページに集めて表示する。
(2)サービスの連携に関するもの
現在利用中のサービスに関する画面から別のサービスをリンクして使用するか、またはすでにリンクされているサービスをリンクされた状態からリンク前の状態に戻すカスタマイズである。リンク付けの例に、印刷サービスとファックスサービスのリンクがある。この機能より、印刷後に印刷したページのみをファックス送信するというような自動実行も可能である。
現在利用中のサービスに関する画面から別のサービスをリンクして使用するか、またはすでにリンクされているサービスをリンクされた状態からリンク前の状態に戻すカスタマイズである。リンク付けの例に、印刷サービスとファックスサービスのリンクがある。この機能より、印刷後に印刷したページのみをファックス送信するというような自動実行も可能である。
[2]構成
(1)システムの全体構成
図1は本実施形態を実現するシステム構成例を示す図である。同図に示すように、このシステムは大別してユーザ装置であるPDA2と、これにサービスおよび拡張HTMLを提供するサーバ4を含み、これらがネットワーク6を介して接続されている。PDA2上には拡張HTMLを解釈することできるビュアが搭載され、サーバ4にはPDA2に対するサービスの提供を含む各種処理を行う各種処理部22と、HTTPD(Hyper Text Transfer Protocal Daemon )24が搭載される。
(1)システムの全体構成
図1は本実施形態を実現するシステム構成例を示す図である。同図に示すように、このシステムは大別してユーザ装置であるPDA2と、これにサービスおよび拡張HTMLを提供するサーバ4を含み、これらがネットワーク6を介して接続されている。PDA2上には拡張HTMLを解釈することできるビュアが搭載され、サーバ4にはPDA2に対するサービスの提供を含む各種処理を行う各種処理部22と、HTTPD(Hyper Text Transfer Protocal Daemon )24が搭載される。
PDA2はモデム8とPHS等の携帯電話10、公衆回線12を介して一旦PDA用のプロキシーサーバ(代理サーバ)14に接続され、これを経由してイーサネット等のネットワーク6に接続される。PDA2は場合により、赤外線16によって直接プロキシーサーバ14にアクセスすることもある。プロキシーサーバ14はネットワーク6の先に接続されるサーバとPDA2とのゲートウエイとして機能する。すなわち、サーバ4からはPDA2で表示させたい拡張HTMLをPDA2へ、一方、PDA2からはビュアで選択した値などをサーバ4へそれぞれ渡す仲介を行う。これらの通信は、サーバ4およびPDA2内に設けられた送受信部(図示せず)によって行われる。
ネットワーク6には、WWWサーバ18やその他各種サービス装置20も接続されている。各種サービス装置20によるサービスの例にプリント、ファックスがある。各種処理部22は、これらサービスから与えられる結果を拡張HTMLに変換し、またはその結果に従って拡張HTMLを生成し、PDA2上の拡張HTMLビュアに渡す。こうして、要求されたサービスがPDA2に提供される。HTTPD24は、ビュアからの要求や値をイベントという形で各種処理部22へ渡し、各種処理部22から関数のリターン値という形態で拡張HTMLを受け取る。なお、サーバ4はファイルシステム26を管理している。
(2)サーバの構成
図2はサーバ4の各種処理部22の内部構成図である。これらのソフトウエア機能モジュール群は、各種処理部22内のCGIプログラムの一部を構成する。同図に示すように各種処理部22は、HTTPD24とのやりとりを行う入出力部30、入出力部30を介して入力されたビュアからの指示を解釈する指示解釈部40、解釈された指示がサービスの実行に関するとき、そのサービスを実際に行うサービス実行部50、解釈された指示がサービスに関するカスタマイズに関するとき、そのカスタマイズを実際に行うカスタマイズ部60、サービスやカスタマイズの実行結果を反映してビュアの画面構成を決め、この構成に関する情報を生成する画面構成情報生成部70を含む。生成された画面構成情報は前記入出力部30に与えられ、HTTPD24とネットワーク6を経てPDA2のビュアに与えられ、サービス画面が表示される。
図2はサーバ4の各種処理部22の内部構成図である。これらのソフトウエア機能モジュール群は、各種処理部22内のCGIプログラムの一部を構成する。同図に示すように各種処理部22は、HTTPD24とのやりとりを行う入出力部30、入出力部30を介して入力されたビュアからの指示を解釈する指示解釈部40、解釈された指示がサービスの実行に関するとき、そのサービスを実際に行うサービス実行部50、解釈された指示がサービスに関するカスタマイズに関するとき、そのカスタマイズを実際に行うカスタマイズ部60、サービスやカスタマイズの実行結果を反映してビュアの画面構成を決め、この構成に関する情報を生成する画面構成情報生成部70を含む。生成された画面構成情報は前記入出力部30に与えられ、HTTPD24とネットワーク6を経てPDA2のビュアに与えられ、サービス画面が表示される。
サービス実行部50は、サービスを実行する際、サービス機能シーケンステンプレート80を参照する。サービス機能シーケンステンプレート80は、サービスを実行するために必要となる処理または機能を実行すべき順序とともに保持するテンプレート(すなわち、ひな型)である。一方、画面構成情報生成部70は、応答シーケンステンプレート90を参照する。応答シーケンステンプレート90は、サービスに関するユーザの指示に対する応答として表示すべき画面をその順序とともに保持するテンプレートである。
この構成において、カスタマイズは最終的に、これら2つのテンプレートを修正することで実現する。
図3は図2の指示解釈部40の内部構成図である。同図のごとく、指示解釈部40は、ユーザからのカスタマイズ指示を識別するカスタマイズ指示識別部402を持ち、このカスタマイズ指示識別部402はさらに、ユーザからの指示に含まれる引数を抽出する引数抽出部404を持つ。この構成において、ユーザから指示が送信されたとき、この指示が通常のサービスの実行を求めるものであるか、または現在実行中のサービスに関するカスタマイズを求めるものであるかが判断され、その指示の内容の詳細を知るために、指示に含まれる引数が抽出される。抽出された引数は、指示がサービスの実行であればサービス実行部50へ、カスタマイズであればカスタマイズ部60へそれぞれ与えられ、所期の処理がなされる。
図4は図2のサービス実行部50の内部構成図である。同図のごとく、サービス実行部50はまず、サービスプリミティブシーケンス生成部502とサービスプリミティブディスパッチ部504を持つ。サービスプリミティブシーケンス生成部502は、前記引数がサービスに関する操作要求を示していれば、その要求に見合うサービスの手順をサービス機能シーケンステンプレート80から導出し、最も単純な(プリミティブな)サービス操作単位に分解する。例えば、操作要求が「ファイルのコピー」であれば、サービス操作単位は、コピーの対象となるファイルの属性に関する部分をコピーすること、ファイルのデータ本体部分をコピーすることなどである。一方、サービスプリミティブディスパッチ部504は、サービスプリミティブシーケンス生成部502から各サービス操作単位を受け取り、各サービスにディスパッチ処理、すなわち多方向分岐処理を行う。
各種サービスハンドラ506は、サービスプリミティブディスパッチ部504から呼び出されるハンドラ群で、プリントサービスハンドラ512、ファイルサービスハンドラ514等のAPI(アプリケーション・プログラム・インタフェイス)からなる。サービス対象項目は、サービスハンドラの各種属性と考えることもできる。各種アクセスツール508は、各種サービスハンドラ506によって利用されるツール群で、プリントサービスアクセスツール516、ファイルサービスアクセスツール518等からなる。各種サービス部510は、各種アクセスツール508の指示に従い、実際にサービスの実行を受け持つプログラム群で、プリントサービス部520、ファイルサービス部522等からなる。
図5は図2のカスタマイズ部60の内部構成図である。同図のごとく、前記引数から指示されたカスタマイズの種別を判定するカスタマイズ種別判定部602、その判定結果に従って実際にカスタマイズを行うカスタマイズ実行部604、カスタマイズが行われると、なんらかの形でPDA2の画面構成が変化するため、この変化を考慮して表示すべき画面を決定するカスタマイズ画面生成部606を含む。ここで決まった画面構成上の変更内容に従い、後述の画面構成情報生成部70において、HTMLまたは拡張HTMLの形で画面構成情報が作成される。
カスタマイズ実行部604は、大別してカスタマイズの種別がサービス画面の構成に関する場合にカスタマイズを担当する画面構成カスタマイズ部608と、サービスの連携、すなわちリンク付けに関する場合にカスタマイズを担当するサービス連携カスタマイズ部610を含む。画面構成に関するカスタマイズが行われると、ユーザによるカスタマイズ結果の確認を経て、新たなテンプレートが前記応答シーケンステンプレート90へ登録される。同様にサービスが連携されると、新たなテンプレートが前記サービス機能シーケンステンプレート80へ登録される。
図6は図2の画面構成情報生成部70の内部構成図である。同図のごとく、画面構成情報生成部70は、画面構成記述生成部702を持つ。この画面構成記述生成部702は、従来同等のサービス画面表示に関するHTMLを生成するHTML生成部704と、このHTMLに対して本実施形態に特徴的なカスタマイズを可能とするための拡張スクリプトを埋め込んで拡張HTMLを生成する拡張HTML合成部706を含む。
画面構成情報生成部70はさらに、サービス応答解析部708と、UIプリミティブ生成配置部710を持つ。前者は、サービスの正常/異常終了の判定を行う。正常終了の場合、画面構成記述生成部702は応答シーケンステンプレート90から正常終了に見合う画面を読み出し、これを表示するようHTML生成部704でHTMLを生成する。異常終了の場合は画面の一部にダイアログボックスを上書き表示するなどの指示を画面構成記述生成部702に与える。
UIプリミティブ生成配置部710は、UIを最も単純なパーツ(例えばボタン)の状態で生成し、これを画面のいずれの個所に配置するかを決める。例えば、タブ機能を実行したとき、各ボタンの位置が変化するため、UIプリミティブ生成配置部710はこの変化を計算し、この計算結果を画面構成記述生成部702に与えるとともに、その結果を以降の画面表示のために内部情報として保持する。こうして生成された拡張HTMLは、入出力部30とHTTPD24を経てビュアに送られる。
[3]構成の動作
図7はサーバ4におけるサービス実行動作およびカスタマイズ動作の流れを示すフローチャート図である。なお、カスタマイズの具体的な手順については後述する。
図7はサーバ4におけるサービス実行動作およびカスタマイズ動作の流れを示すフローチャート図である。なお、カスタマイズの具体的な手順については後述する。
まずここで、PDA2のユーザがボタンのクリックなどにより、サーバ4に対して「文書Aのページ1を印刷する」旨を指示したとする。サーバ4はこの指示を受信したとき、指示解釈部40によってまず指示の解釈が行われる(S100)。この指示はカスタマイズに関するものでないため、通常のサービスの実行(サービスの提供)を求める指示であると判断され(S102のN)、サービスプリミティブシーケンス生成部502とサービスプリミティブディスパッチ部504により、サービスが準備される(S104)。つづいてサービス実行部50では、サービスハンドラ(ここではプリントサービスハンドラ512)、サービスアクセスツール(同プリントサービスアクセスツール516)、サービス部(同プリントサービス部520)が順に起動され、実際に印刷が行われる。印刷以外のサービスについても同様である。
つぎに、例えばユーザがあるサービス画面において、「この画面に固定表示領域を設ける」というカスタマイズの指示を出したとする。この場合は指示がカスタマイズに関するものであるため(S102のY)、つぎにカスタマイズの種別がサービス画面の構成に関するものであるかどうかが判断される(S112)。固定表示領域の設置は画面構成に関するためS114に進み、図示しないユーザの指示に従って画面構成を変更し、応答シーケンステンプレート90を修正する(S114)。この後、いわゆるピレビュー(下見)用の画面をPDA2に送信し、ユーザが新たな画面構成を確認した後(S116)、新たなテンプレートを応答シーケンステンプレート90に登録する(S118)。
一方、現在提供中のサービスが例えばプリントサービスであるとき、ユーザが「サービスのリンク」という指示を送ったきた場合、S112でNに進む。ここで、サービス対象項目のリンク付けが可能なように、現在表示中のサービス画面に、現在実行中のサービスに関するサービス対象項目とリンク可能な別のサービスに関するサービス対象項目をならべて表示する。この場合、例えば「ファックスサービス、ファイルサービス…」が表示される。ここで、ユーザがファックスサービスを選択すれば、カスタマイズ部60のサービス連携カスタマイズ部610がこの選択に従って両者のリンク付けを行い(S120)、サービス機能シーケンステンプレート80の修正を行う(S122)。この結果、新たなテンプレートが登録される(S124)。サービス間のリンク付けにより、例えば、印刷した文書をそのまま指定個所にファックスする、といったカスタマイズが可能となる。
以上の手順の後、一連の処理を終える。処理終了前に、カスタマイズ終了メッセージを送出してもよい。
ここで実際のカスタマイズの様子を図面によって説明する。ここではプリントサービスを例に、サービス画面の構成またはサービス間の連携に関するカスタマイズを行う。サーバはサービスの初期画面で、ユーザにカスタマイズをする意志があるかどうかを確認する。ユーザが「なし」と答えれば、通常のサービス画面が現れる。図8はその通常画面を示している。同図では、画面上部にサービス名、その下にサービス概要説明が表示され、さらにその下にプリントの対象文書名、サービスを担当するプリンタ名、印刷枚数、用紙サイズ、拡大/縮小率(%)、割り付けが表示されている。用紙サイズ以下はラジオボタンになっている。画面の最下欄には「キャンセル」「プリント」ボタンが表示されている。
一方、ユーザがカスタマイズの意志ありと答えれば、図8の画面において、可能なカスタマイズが追加表示される。図9は6種類のカスタマイズが選択可能に表示された画面を示している。同図のように、画面最下部に新たにサービス画面構成(画面上では単に「構成」と表記)に関する5個のボタンと、サービス間の連携に関する1個のボタンが現れる。以下、これらの各ボタンを押した場合の画面遷移とカスタマイズを説明する。
(1)構成:タブ
図10は「構成:タブ」を押したときに現れる画面である。ここではタブを設定することの可能なすべての項目の前にチェックボックスが1個づつ現れ、実際にユーザがチェックしたものには×が入っている。同図では、文書名を実際に書き込む空欄、用紙などのラジオボタンがチェックされている。
図10は「構成:タブ」を押したときに現れる画面である。ここではタブを設定することの可能なすべての項目の前にチェックボックスが1個づつ現れ、実際にユーザがチェックしたものには×が入っている。同図では、文書名を実際に書き込む空欄、用紙などのラジオボタンがチェックされている。
一方、画面最下部には横一列のチェックボックス群と「タブ設定OK」「プレビュー」ボタンが現れる。チェックボックス群はタブの位置を設定するためのもので、ここではすでに3個のチェックボックスがチェックされている。前記ラジオボタンなどが、これら3個所を先頭として配置されることになる。図11はこの状態で「プレビュー」を押したときに表示される画面を示す。同図に示すように、選択された項目の位置揃えが行われる。1行に4個以上の項目が選択された場合は、4個目から次行に移動し、前行同様のタブを繰り返す。画面最下部にはプレビューから抜けるための「プレビュー戻り」ボタンが表示されている。ユーザはカスタマイズされた画面を確認した後、このボタンを押して図10の状態に戻り、修正がなければ「タブ設定OK」を押して処理を終える。このボタンを押すと、以降画面は図11の状態になる。修正があれば、チェックのしなおしとプレビューを繰り返し、所期のカスタマイズ画面を得ることができる。
以上がタブによるカスタマイズである。ここで注意すべきは、カスタマイズ中もサービスを継続的に受けることができることである。例えばユーザは、図10の状態でも用紙サイズ等を変更したり、実際にプリントしたりすることが可能である。本実施形態によれば、カスタマイズの対象となる画面自体を表示しながらカスタマイズすることができるため、カスタマイズ作業の効率改善効果も大きい。
なお、仮に図10、11の作業を従来のビュアで行うと、プレビューボタンを押すことまでは可能であるが、タブ機能を実現するための拡張スクリプトがコメントに挿入されていて、これが無視されるため、画面が図10の状態のままとなる。
(2)構成:領域
図12は図9において「構成:領域」を押したときに現れる画面で、新たに「領域設定OK」「プレビュー」ボタンが現れる。「領域」は固定表示領域の略であり、チェックボックスの付された項目が固定表示領域に移動する。図12では「枚数」がこれに当たる。図13はこの状態で「プレビュー」を押したときに表示される画面で、画面最下欄が固定表示領域になり、ここに「枚数」が表示されている。ここでは「枚数」に代わって「キャンセル」「プリント」を通常のスクロール領域に移動させているが、これはもとの位置に残してもよい。
図12は図9において「構成:領域」を押したときに現れる画面で、新たに「領域設定OK」「プレビュー」ボタンが現れる。「領域」は固定表示領域の略であり、チェックボックスの付された項目が固定表示領域に移動する。図12では「枚数」がこれに当たる。図13はこの状態で「プレビュー」を押したときに表示される画面で、画面最下欄が固定表示領域になり、ここに「枚数」が表示されている。ここでは「枚数」に代わって「キャンセル」「プリント」を通常のスクロール領域に移動させているが、これはもとの位置に残してもよい。
ユーザはカスタマイズされた画面を確認した後、この「プレビュー戻り」を押し、以降(1)同様の手順でカスタマイズを終える。
(3)構成:削除
このボタンを押せば、ほぼ図10同等の画面が現れる。ただし、横一列のチェックボックス群はなく、「タブ設定OK」が「削除OK」になる。チェックされた項目は「削除OK」によって画面から消え、画面全体が簡素化される。
このボタンを押せば、ほぼ図10同等の画面が現れる。ただし、横一列のチェックボックス群はなく、「タブ設定OK」が「削除OK」になる。チェックされた項目は「削除OK」によって画面から消え、画面全体が簡素化される。
(4)構成:詳細/簡略
図14は図9において「構成:詳細/簡略」を押したときに現れる画面で、「文書名」以下の項目が行ごとにチェックボックスによって挟まれている。ここでは「用紙」以下がチェックされている。図15はこの状態で「機能:簡略化」を押したときに表示される画面で、チェックされた3行がひとまとめに表示されている。この表示は現在の選択状況を表示するだけで、新たな選択はできない。図15ではさらに、1行にまとめられた部分のチェックボックスが再度チェックされている。この状態で「構成:簡略化」を押せば、この行は例えば、
{A4,100%,標準}
などと、さらに簡略表示される。この状態からもとの表示に戻るためには、項目をチェックした後、「構成:詳細化」を2回押せばよい。
図14は図9において「構成:詳細/簡略」を押したときに現れる画面で、「文書名」以下の項目が行ごとにチェックボックスによって挟まれている。ここでは「用紙」以下がチェックされている。図15はこの状態で「機能:簡略化」を押したときに表示される画面で、チェックされた3行がひとまとめに表示されている。この表示は現在の選択状況を表示するだけで、新たな選択はできない。図15ではさらに、1行にまとめられた部分のチェックボックスが再度チェックされている。この状態で「構成:簡略化」を押せば、この行は例えば、
{A4,100%,標準}
などと、さらに簡略表示される。この状態からもとの表示に戻るためには、項目をチェックした後、「構成:詳細化」を2回押せばよい。
(5)構成:ページ分岐
図16は図9において「構成:ページ分岐」を押したときに現れる画面で、「用紙」以下がチェックされている。これらが別ページにまわされことになる。
図16は図9において「構成:ページ分岐」を押したときに現れる画面で、「用紙」以下がチェックされている。これらが別ページにまわされことになる。
同図では「構成:分岐実行」が新たなボタンであり、この横に「分岐ボタン名」「タイトル」の入力個所が出る。これらに対してそれぞれ「オプション設定」「プリントサービス(オプション設定)」と入力して「構成:分岐実行」「分岐ページへ」をこの順に押すと、図17の画面が現れる。この画面は分岐際の元ページであり、チェックされていた3行がなくなっている。その代わり、これらが分岐していった先のページに飛ぶためのボタンが前記「オプション設定」の名で表示される。このボタンと「分岐ページへ」をこの順に押すと、分岐先ページに飛ぶ。
図18は分岐先ページの画面を示している。ここでは前述の3行が新たなタイトルのもとにそのまま移動している。「分岐OK」を押せば分岐元ページに戻る。なお、同図の矩形領域は任意の文字列等を自由記入するための領域である。
(6)連携:リンク
図19は図9において「連携:リンク」を押したときに現れる画面で、現在利用中のプリントサービスと別のサービスのリンクを指定するための画面である。「ファイル」以下4つのサービスがリンクの候補として表示されている。図20は図19において「ファックス」を押し、「連携:リンク先決定」を押したときに現れる画面である。同図に示すように、リンク先であるファックスサービスとリンク元であるプリントサービスそれぞれのサービス属性(項目)が表示されている。ここで、例えばプリント中の文書をそのままファックスした場合は、両サービスの「文書名」ボタンを押し、その後「連携:項目リンク実行」ボタンを押す。これで両者のリンク付けがなされ、つづけて同様の手順で両サービスの「用紙」をリンク付けする。最後に「リンク後実行ボタン」の「送信」を押せば、同一文書が同一の紙サイズで自動送信される。
図19は図9において「連携:リンク」を押したときに現れる画面で、現在利用中のプリントサービスと別のサービスのリンクを指定するための画面である。「ファイル」以下4つのサービスがリンクの候補として表示されている。図20は図19において「ファックス」を押し、「連携:リンク先決定」を押したときに現れる画面である。同図に示すように、リンク先であるファックスサービスとリンク元であるプリントサービスそれぞれのサービス属性(項目)が表示されている。ここで、例えばプリント中の文書をそのままファックスした場合は、両サービスの「文書名」ボタンを押し、その後「連携:項目リンク実行」ボタンを押す。これで両者のリンク付けがなされ、つづけて同様の手順で両サービスの「用紙」をリンク付けする。最後に「リンク後実行ボタン」の「送信」を押せば、同一文書が同一の紙サイズで自動送信される。
ここで注意すべきは、リンク可能な属性とそうでないものがあることである。例えば「FAX番号」などはリンクできないため、その場合はファックスサービス側で入力する等の処理を行う。なお、リンク付けがなされるたびに、画面の余白部分にリンク付けされた両属性を関連付けて表示していけばさらに利用しやすくなる。
[4]拡張HTMLの記述方法
最後に、タブ機能等のカスタマイズを実現する拡張HTMLの記述方法を説明する。
最後に、タブ機能等のカスタマイズを実現する拡張HTMLの記述方法を説明する。
(1)従来のHTMLとビュアの動作
図21は3つのボタンを表示するための従来一般的なHTMLの記述例を示す図、図22は、図21のHTMLを従来のビュアまたは本実施形態に係る拡張HTMLビュアで表示したときの画面を示す図である。図21のHTMLについては、従来のビュアでも、拡張HTMLビュアでも、同じ表示がなされる。
図21は3つのボタンを表示するための従来一般的なHTMLの記述例を示す図、図22は、図21のHTMLを従来のビュアまたは本実施形態に係る拡張HTMLビュアで表示したときの画面を示す図である。図21のHTMLについては、従来のビュアでも、拡張HTMLビュアでも、同じ表示がなされる。
図21には、いわゆるヘッダ部800と本文(ボディ部)801よりなる8行のHTMLが記述されている。同図左端の数字は便宜的に付した行番号であり、HTMLの記述の一部ではない。
図21の第1、2行はヘッダ部800を構成する。HTMLにおける記述の単位はタグと呼ばれ、< >の中に記述される。<aaa>は開始タグ、</aaa>は終了タグとよばれ、この間にaaaを名称とする処理の内容が記述される。例えば、同図第1行の<HEAD>はヘッダ部800の開始、第2行の</HEAD>が同終了を示す。ここではヘッダ部800で、このHTMLのタイトルを「Example0」と定義している。
つぎに、第3〜8行までが本文801である。第4〜6行の「INPUT」はユーザ入力に係るすべてのものを示す予約語、「TYPE」は型(テキスト、チェックボックス、ラジオボタンなどの種別)を示す予約語である。" radio" はラジオボタンを示し、" radioset" はそのラジオボタンに付けられた名称である。この名称が同一である複数のボタンについては、いずれか1個のみを押すことができる。
第7行には、「サンプル0の終了」というコメントがおかれている。HTMLでは、<!−−aaa−−>と書いたとき、aaaの記述がコメントとして扱われる。図21の場合、このコメントはタブ機能の埋め込まれていない、通常のコメントである(以下単に「通常コメント」といい、拡張機能の埋め込まれたコメントを「拡張機能コメント」という)。
図22は図21を実際に表示したときの画面表示を示している。図21では3つのボタンが別の行に記述されていたが、これらは実際には、単に横向きに3つのボタンがならんでいく。通常のHTMLは改行を明示的に行うための指示を持たず、たとえ図21のように3行に分けて記述しても、改行を行うことができないためである。なお図22において、ユーザが「first」に当たるボタンを押せば、サーバに値「a1」が返され、そのボタンに見合った処理がなされる。
(2)拡張HTMLとビュアの動作
上述のように、<!−−xxx−−>と書いたとき、xxxがコメントとして扱われるため、本実施形態ではこのxxxの部分に拡張機能、すなわち指定タブ位置の宣言およびタブ実行に関するスクリプトを埋め込む。
上述のように、<!−−xxx−−>と書いたとき、xxxがコメントとして扱われるため、本実施形態ではこのxxxの部分に拡張機能、すなわち指定タブ位置の宣言およびタブ実行に関するスクリプトを埋め込む。
本実施形態では、xxxが%から始まる文字列であるとき、このコメントが拡張機能コメントであると決める。すなわち、コメント文の中で「%…」が現れれば、タブ機能が埋め込まれていると判断し、タブ処理を行う。
図23はタブ機能を実現するための拡張HTMLの記述例(タイトルはExample1)を示す図、図24は図23の拡張HTMLを本実施形態に係る拡張HTMLビュアで表示したときの画面を示す図である。
図23でも図21同様、拡張HTMLはヘッド部802と本文803から構成されるが、ここで注意すべきは、図23においてコメント部分<!−− −−>をすべて外すと、図21と全く同じHTMLに戻ることである(図21中、意味のない第7行は除く)。図23で導入されるタブ機能に関するスクリプトは以下の通りである。
1.SETTABAREA
図23第2行(ヘッド部802)に追加されたスクリプトで、指定タブ位置の宣言を行っている。
図23第2行(ヘッド部802)に追加されたスクリプトで、指定タブ位置の宣言を行っている。
「SETTABAREA」は、次項の「TABAREA」において実際にタブ機能を実行する際、タブの位置をSET(設定)するという意味である。ここでは指定タブ位置TAB1が20%という引数で設定されている。引数の記述態様は以下の通りである。
・”10C”…10キャラクタ幅(ただし固定フォントを仮定)
・”80P”…80ピクセル幅
・”50%”…画面左端から画面幅に対して50%(すなわち中央)の位置
ここでは、「20%」と表記することで、画面左端から画面幅の20%進んだ個所が指定タブ位置となる。すなわち、表示すべきボタン等の各オブジェクトは、後述のごとく、すべて同じ指定タブ位置に表示の先頭を揃えた状態で整列することになる。なお、複数の指定タブ位置、TAB1、TAB2…の設定については後述する。
・”80P”…80ピクセル幅
・”50%”…画面左端から画面幅に対して50%(すなわち中央)の位置
ここでは、「20%」と表記することで、画面左端から画面幅の20%進んだ個所が指定タブ位置となる。すなわち、表示すべきボタン等の各オブジェクトは、後述のごとく、すべて同じ指定タブ位置に表示の先頭を揃えた状態で整列することになる。なお、複数の指定タブ位置、TAB1、TAB2…の設定については後述する。
2.TABAREA
図23第5行に追加されたスクリプトで、上述のSETTABAREAによる設定に従って実際にタブ機能を作用させるべき対象の範囲を示している。すなわち、第5行の開始タグ〜第9行の終了タグがSETTABAREAの有効作用範囲であり、ここでは第6〜8行の記述がその作用を受ける。
図23第5行に追加されたスクリプトで、上述のSETTABAREAによる設定に従って実際にタブ機能を作用させるべき対象の範囲を示している。すなわち、第5行の開始タグ〜第9行の終了タグがSETTABAREAの有効作用範囲であり、ここでは第6〜8行の記述がその作用を受ける。
3.TAB
図23第6〜8行に追加されたスクリプトで、次に表示すべき内容の表示開始位置を上述のSETTABAREAによる指定タブ位置まで装置内部で進めるよう指示するスクリプトである。
図23第6〜8行に追加されたスクリプトで、次に表示すべき内容の表示開始位置を上述のSETTABAREAによる指定タブ位置まで装置内部で進めるよう指示するスクリプトである。
ここでビュアの動作を考える。本実施形態に係る拡張HTMLビュアの動作については、(1)と異なる部分のみを説明する。
まず従来のビュアで図23の拡張HTMLを表示する場合、図21のHTMLに対する表示、すなわち図22と同じ表示になる。これは、従来のビュアがコメントの部分を完全に無視するためであり、この結果、下位互換性が確保される。
一方、本実施形態に係る拡張HTMLビュアでは、第2行の「SETTABAREA」を読み込んだとき、これがコメントであり、指定タブ位置の宣言であることを認識する。このとき、「TAB1」をインデックスとしてその引数「20%」が抽出される。
つづいて、第5行の「TABAREA」が読み込まれると、これ以降、TABAREAの終了タグが現れるまで(すなわち第9行まで)、指定タブ位置が表示開始位置の更新のために利用されることを認識する。第6行の前半で実際に「TAB」スクリプトが読み込まれると、ビュアは指定タブ位置TAB1をインデックスとして引数20%を読み出し、画面幅に対する20%の位置計算を行った上で、表示開始位置をその指定タブ位置に進める。従って、この表示開始位置から第6行の後半に記述される「first」ボタンが表示される。
第7行に移ると、やはり「TAB」スクリプトがあるため、ビュアはつぎの指定タブ位置TAB2を読み出そうとする。しかし、この例ではTAB1のみが保持されているため、ビュアは再度TAB1に関する引数を読み出す。この場合、表示開始位置が前回と同じ位置になるため、改行を行った後、表示開始位置を指定タブ位置に進める処理(以下「ラップ処理」という)を行う。この結果、「second」ボタンが「first」ボタンの下に表示される。「third」ボタンも同様である。
このように、表示すべき対象(ここではボタン)よりも指定タブ位置の数が少ないとき改行動作が発生し、図24の表示が得られる。図24の場合、画面枠810内において、画面左端から画面幅20%の位置に3つのボタンが上下に整列する。このようなタブ機能を利用すれば、容易に所望の表示状態を得るこができる。
ここでは指定タブ位置をTAB1のみによって設定したが、例えばTAB1〜4を設定すれば、従来のビュアで、
[表1]
○1st ●2nd ○3rd ○4th ○AA ●AB ○ABBCC ○ABC ○10000 ○1000 ○100 ●10
のように、詰めて表示されるUIオブジェクトボタン群を、
[表2]
○1st ●2nd ○3rd ○4th
○AA ●AB ○ABBCC ○ABC
○10000 ○1000 ○100 ●10
のように整然と配置することが可能である。下の表の1行目については、最初に「TAB」スクリプトが現れたとき、ビュアが表示開始位置をTAB1まで進め、ここで「○1st 」が表示される。つづいて、ビュアは、内部的にインデックスを進め、つぎに「TAB」が現れたとき、TAB2を参照するよう準備する。この結果、「●2nd 」がTAB2による指定タブ位置を表示開始位置として表示される。以下同様に、TAB3、4による指定タブ位置にそれぞれ「○3rd 」「○4th 」が表示される。この後、TAB5という指定タブ位置がないため、ラップ処理が行われ、第2行が表示される。第3、4行も同様である。
[表1]
○1st ●2nd ○3rd ○4th ○AA ●AB ○ABBCC ○ABC ○10000 ○1000 ○100 ●10
のように、詰めて表示されるUIオブジェクトボタン群を、
[表2]
○1st ●2nd ○3rd ○4th
○AA ●AB ○ABBCC ○ABC
○10000 ○1000 ○100 ●10
のように整然と配置することが可能である。下の表の1行目については、最初に「TAB」スクリプトが現れたとき、ビュアが表示開始位置をTAB1まで進め、ここで「○1st 」が表示される。つづいて、ビュアは、内部的にインデックスを進め、つぎに「TAB」が現れたとき、TAB2を参照するよう準備する。この結果、「●2nd 」がTAB2による指定タブ位置を表示開始位置として表示される。以下同様に、TAB3、4による指定タブ位置にそれぞれ「○3rd 」「○4th 」が表示される。この後、TAB5という指定タブ位置がないため、ラップ処理が行われ、第2行が表示される。第3、4行も同様である。
(3)一般化
本実施形態ではタブ機能を例に拡張機能を実現するビュアを説明したが、ここでタブ以外の拡張機能に関する一般化を考える。上記タブの例から明らかなように、コメントに記述すべき拡張スクリプトは以下の形態になる。
本実施形態ではタブ機能を例に拡張機能を実現するビュアを説明したが、ここでタブ以外の拡張機能に関する一般化を考える。上記タブの例から明らかなように、コメントに記述すべき拡張スクリプトは以下の形態になる。
<!−−%XYZ ARG1=" arg1" … −−>
ここではXYZが拡張機能を示すスクリプトで、このXYZに関する引数がarg1等となる。このXYZと引数により、拡張HTMLビュアは所定の処理を行う。例えば固定表示領域を設ける場合、XYZに当たるスクリプトとして、(a)その領域の高さと画面上の位置(上下左右)を指定するもの、(b)その領域に実際に表示するオブジェクト等を指定するもの、の2種類を用意すればよい。(a)のスクリプトでは、引数によって高さと位置を指定し、(b)のスクリプトでは、有効作用範囲という概念を利用する。すなわち、(b)のスクリプトの開始タグと終了タグの間に、その領域に表示すべきオブジェクト等を書いておけばよい。以下、いずれのカスタマイズについても、これら2タイプのタグによって実現することができる。
ここではXYZが拡張機能を示すスクリプトで、このXYZに関する引数がarg1等となる。このXYZと引数により、拡張HTMLビュアは所定の処理を行う。例えば固定表示領域を設ける場合、XYZに当たるスクリプトとして、(a)その領域の高さと画面上の位置(上下左右)を指定するもの、(b)その領域に実際に表示するオブジェクト等を指定するもの、の2種類を用意すればよい。(a)のスクリプトでは、引数によって高さと位置を指定し、(b)のスクリプトでは、有効作用範囲という概念を利用する。すなわち、(b)のスクリプトの開始タグと終了タグの間に、その領域に表示すべきオブジェクト等を書いておけばよい。以下、いずれのカスタマイズについても、これら2タイプのタグによって実現することができる。
2 PDA、4 サーバ、6 ネットワーク、8 モデム、10 携帯電話、12 公衆回線、14 プロキシーサーバ、16 赤外線、18 WWWサーバ、20 各種サービス装置、22 各種処理部、24 HTTPD、26 ファイルシステム、30 入出力部、40 指示解釈部、50 サービス実行部、60 カスタマイズ部、70 画面構成情報生成部、80 サービス機能シーケンステンプレート、90 応答シーケンステンプレート、402 カスタマイズ指示識別部、404 引数抽出部、502 サービスプリミティブシーケンス生成部、504 サービスプリミティブディスパッチ部、506 各種サービスハンドラ、508 各種アクセスツール、510 各種サービス部、512 プリントサービスハンドラ、514 ファイルサービスハンドラ、516 プリントサービスアクセスツール、518 ファイルサービスアクセスツール、520 プリントサービス部、522 ファイルサービス部、602 カスタマイズ種別判定部、604 カスタマイズ実行部、606 カスタマイズ画面生成部、608 画面構成カスタマイズ部、610 サービス連携カスタマイズ部、702 画面構成記述生成部、704 HTML生成部、706 拡張HTML合成部、708 サービス応答解析部、710 UIプリミティブ生成配置部。
Claims (4)
- クライアント装置に対して、サービスと、そのサービスに関して該クライアント装置の画面に表示すべきサービス画面の画面構成情報とを提供するサーバ装置であって、
前記クライアント装置からサービスに関する指示が送信されたとき、この指示を受信する受信手段と、
受信した指示の内容を解釈する指示解釈手段と、
解釈された指示の内容がサービスの実行を示すとき、該当するサービスを実行するサービス実行手段と、
解釈された指示の内容が、異なる複数のサービス間の連携に関する指示であるとき、その指示に従ってサービスのリンク設定を行うカスタマイズ手段と、
前記カスタマイズ指示の入力が前記サービス画面上で受け付けられるよう前記画面構成情報を生成する画面構成情報生成手段と、
この画面構成情報を前記クライアント装置に送信する送信手段と、
を含むことを特徴とするサーバ装置。 - 請求項1に記載のサーバ装置において、
前記画面構成情報生成手段は、前記サービス画面に表示されるサービス対象項目のうち、他のサービス対象項目とリンク付けすることのできるものを選択可能な状態で表示するよう前記画面構成情報を生成し、
前記サービス実行手段は、前記解釈された指示の内容がリンク付けされた一方のサービス対象項目の実行を示すとき、リンク付けされた他方のサービス対象項目も実行することを特徴とするサーバ装置。 - 請求項1または2に記載のサーバ装置において、
前記カスタマイズ手段は、前記リンク設定として、現在利用中のサービスに関する画面から別のサービスをリンクして使用するカスタマイズ、または、すでにリンクされているサービスをリンクされた状態からリンク前の状態に戻すカスタマイズを行う、
ことを特徴とするサーバ装置。 - サーバ装置からサービスを受けるクライアント装置から、前記サービスの提供形態をカスタマイズする方法であって、
前記サーバ装置は、
サービスが前記クライアント装置によって実際に利用されているとき、異なる複数のサービス間の連携に関する前記クライアント装置からの指示を受け付ける状態でそのサービスを提供し、
前記連携に関する指示を受け付けたとき、その指示に従ってサービスのリンク設定を行ったうえでサービスの提供を続行する、
ことを特徴とするサービス提供形態のカスタマイズ方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005030679A JP2005228317A (ja) | 2005-02-07 | 2005-02-07 | サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2005030679A JP2005228317A (ja) | 2005-02-07 | 2005-02-07 | サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8029306A Division JPH09223062A (ja) | 1996-02-16 | 1996-02-16 | サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2005228317A true JP2005228317A (ja) | 2005-08-25 |
Family
ID=35002931
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005030679A Pending JP2005228317A (ja) | 2005-02-07 | 2005-02-07 | サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2005228317A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007133751A (ja) * | 2005-11-11 | 2007-05-31 | Casio Comput Co Ltd | 分割ページ情報提供装置、分割ページ表示システム及びプログラム |
| JP2007206874A (ja) * | 2006-01-31 | 2007-08-16 | Exa Corp | クライアントサーバ型システム及びクライアントアプリケーションプログラム |
| JP2016059048A (ja) * | 2015-10-07 | 2016-04-21 | 富士ゼロックス株式会社 | 情報処理装置、プログラム及び端末装置 |
-
2005
- 2005-02-07 JP JP2005030679A patent/JP2005228317A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007133751A (ja) * | 2005-11-11 | 2007-05-31 | Casio Comput Co Ltd | 分割ページ情報提供装置、分割ページ表示システム及びプログラム |
| JP2007206874A (ja) * | 2006-01-31 | 2007-08-16 | Exa Corp | クライアントサーバ型システム及びクライアントアプリケーションプログラム |
| JP2016059048A (ja) * | 2015-10-07 | 2016-04-21 | 富士ゼロックス株式会社 | 情報処理装置、プログラム及び端末装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH09223062A (ja) | サービス提供形態のカスタマイズ方法およびその方法の実施に使用可能なサーバ装置 | |
| US7292246B2 (en) | Incremental plotting of network topologies and other graphs through use of markup language | |
| JP4270992B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 | |
| KR100744728B1 (ko) | 서비스 처리 장치, 시스템 및 서비스 처리 방법 | |
| CN112068824B (zh) | 一种网页开发预览方法、装置及电子设备 | |
| US20020035579A1 (en) | Transform rule generator for web-based markup languages | |
| US20030011801A1 (en) | Print option configurations specific to a service or device for printing in a distributed environment | |
| JP2004318842A (ja) | Webページ生成装置、組み込み装置、Webページ生成の制御方法、Webページ生成プログラム及び記録媒体 | |
| JP2001519935A (ja) | インターネットハイパーリンクドラッグ及びドロップ | |
| JP2004185464A (ja) | 情報処理装置、プログラムおよび記録媒体 | |
| US9049316B2 (en) | Printer having web server function | |
| CN102123218B (zh) | 信息处理系统及其控制方法和外部控制装置 | |
| US20040143795A1 (en) | Display data creating technique for automatically Providing efficient representation of portal pages with improved visual recognition | |
| US6820067B1 (en) | System and method for producing web-based process advisor applications | |
| JPH09222974A (ja) | 言語解釈表示方法とその方法を用いた装置およびシステム | |
| EP1457899B1 (en) | System for creating and transmitting a Web page to be displayed by a client computer | |
| US6704775B1 (en) | Facsimile image information managing system and method | |
| JP2008186160A (ja) | 文書表示装置およびプログラム | |
| JP2005063412A (ja) | 表示データ生成装置、表示装置、表示データ生成システム、表示データ生成装置の制御方法、表示データ生成プログラム、記録媒体、電子装置及び電子装置の制御方法 | |
| JPH11353146A (ja) | 印刷処理システム | |
| JP6701476B1 (ja) | コンピュータプログラム、記録装置、記録システム、解析装置及び記録方法 | |
| US20040051901A1 (en) | Information processsing apparatus, a function extension program, computer readable storage medium storing the program, and information processing method | |
| US7196803B1 (en) | System and method for printing to a printer without the use of a print driver | |
| US20050198568A1 (en) | Table display switching method, text data conversion program, and tag program | |
| JPH1188592A (ja) | 画像送受信装置および画像データの加工・編集プログラムを記録した記録媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060214 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060704 |