IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0251275
(2008-10-14)
|
등록번호 |
US-8200745
(2012-06-12)
|
발명자
/ 주소 |
- Doerksen, Richard
- Besbris, David
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
0 인용 특허 :
88 |
초록
▼
A handheld client framework system provides a server proxy client that services client requests for network accessible information and determines the server that is most appropriate to supply the requested information and sends information request packets to that server across the Internet and/or in
A handheld client framework system provides a server proxy client that services client requests for network accessible information and determines the server that is most appropriate to supply the requested information and sends information request packets to that server across the Internet and/or intranet. Server responses to information requests are received by the server proxy client. The server proxy client separates the response information into the appropriate data components. Data components are sent to the appropriate client. Presentation and logic components are temporarily stored in a one-behind cache on the client. A client will continue to use the presentation and logic components already installed or in the one-behind cache to service the current user request. Any updates sent by the server proxy client and stored in the one-behind cache are retrieved by the client upon subsequent use by the user. The state of the client is saved by the server proxy client so that the client is not dropped when a user, for example, changes from a wired connection to a wireless connection. The invention includes a scripting language that supplies the logic component of the client and gives the client unlimited flexibility by allowing the host to modify the client's behavior or add new features at any time.
대표청구항
▼
1. A process for a framework architecture for client systems, comprising the steps of: providing a server proxy client;said server proxy client receiving a client information request from a client system;said server proxy client determining the proper server to service said client request;sending sa
1. A process for a framework architecture for client systems, comprising the steps of: providing a server proxy client;said server proxy client receiving a client information request from a client system;said server proxy client determining the proper server to service said client request;sending said client request to said proper server;receiving said proper server's response to said client request; andwherein said server proxy client acts as a proxy client for said client system, performing the bulk of data processing for said client system;wherein said server proxy client updates said client system with raw data, presentation, and logic components using a universal data format, the raw data component comprising data retrieved from a server by said server proxy client in response to a client request;wherein said server proxy client, upon receipt of a request for specific up to date presentation components from a client system, checks if the client system's original presentation components and/or executable bytecodes have expired;wherein said server proxy client separates raw data and presentation components of said response and places said data into said universal data format,wherein said raw data and said presentation components are sent independently by said server proxy client to said client system;wherein said server proxy client receives presentation and logic component updates for said client system; andwherein said presentation component updates are for a specific client device type;wherein said logic component updates comprise updates to a common code base that is shared between different client device types, and which enables said server proxy client to control a feature set of said client system independently of an implementation supplied by native client code and without modifying said native client code; andwherein said client system reuses at least a portion of said raw data component for other display purposes;said method further comprising the step of: said client system maintaining state information. 2. The process of claim 1, further comprising the step of: providing a one-behind cache on said client system; andwherein said client system checks said one-behind cache for any presentation or logic components relating to a user's request;wherein if any components relating to a user's request exist in said one-behind cache, said client system checks if said components existing in said one-behind cache have expired;wherein said client system uses said components existing in said one-behind cache to service the user's request. 3. The process of claim 2, wherein if said components existing in said one-behind cache have expired, said client system requests any current versions of the expired components from said server proxy client, wherein said server proxy client checks the current version of a requesting client's presentation and logic components, if any of the presentation and logic components require updating, then said server proxy client retrieves the latest version of any of the presentation and logic components and sends it to the requesting client, and wherein the requesting client stores the latest version of any of the presentation and logic components in said one-behind cache. 4. The process of claim 1, further comprising the step of: sending said presentation and logic component updates to a client system. 5. The process of claim 1, wherein said client system uses said raw data and presentation components to create displays to a user. 6. The process of claim 1, further comprising the step of: providing means on said server proxy client for saving a client system's state on storage device; andwherein the saved client system's state allows said server proxy client to continue a client system's session when the client system changes connection methods to or loses coverage with said server proxy client. 7. The process of claim 1, further comprising the step of: providing a scripting language;wherein said logic component updates are written in said scripting language;wherein said server proxy client compiles scripts written in said scripting language into executable bytecodes;wherein said server proxy client updates said client system's features by sending said client system said executable bytecodes; andwherein said client system executes said executable bytecodes in response to a user's input. 8. The process of claim 7, wherein a client system's presentation aspects are controlled using said scripting language. 9. The process of claim 1, wherein communication between said server proxy client and said client system is via a binary encoding of an XML data stream. 10. The process of claim 1 further comprising the step of: caching data presentation components independently. 11. The process of claim 1, wherein said updates from said server proxy client to said client system are communicated using a single protocol. 12. The process of claim 1, wherein said server proxy client comprises a sole point of communication for said client system. 13. The process of claim 1, wherein said client system registers all presentation objects used by said client system. 14. The process of claim 1, wherein said raw data and presentation components are compartmentalized, wherein only said raw data or said presentation components needed by said client system are sent by said server proxy client to said client system. 15. The process of claim 14, wherein said client system uses raw data components for updated display purposes without receipt from said server proxy client of said presentation aspects. 16. The process of claim 15, wherein only raw data components are sent by said server proxy client to said client system. 17. A process for dynamically configuring client systems, comprising the steps of: providing a host server;providing a scripting language;wherein said host server compiles scripts written in said scripting language into executable bytecodes;wherein said host server, upon receipt of a request for specific up to date presentation components and/or executable bytecodes from a client system, checks if the client system's original presentation components and/or executable bytecodes have expired, wherein said host server separates response data into raw data, logic, and presentation components, the raw data component comprising data retrieved by said host server in response to a client request, and places said raw data component into said universal data format;wherein only required elements of said client system in terms of:said raw data component; said logic component; andsaid presentation component aspects are sent independently by said server proxy client to said client system if the original presentation component and/or executable bytecodes on the client system have expired;wherein logic component updates comprise updates to a common code base that is shared between different client device types and which enables said server proxy client to control a feature set of said client system independently of an implementation supplied by native client code and without modifying said native client code;wherein said client system reuses at least a portion of said raw data component for other display purposes; andwherein said client system saves state information. 18. The process of claim 17, wherein said scripts define program logic. 19. The process of claim 17, wherein said scripts create and control user interface displays. 20. The process of claim 17, wherein said client system receives requested network information from said host server separated into data and presentation components. 21. The process of claim 17, wherein said client system registers all presentation objects used by said client system with said host server. 22. An apparatus for a framework architecture for client systems, comprising: a server proxy client;said server proxy client for receiving a client information request from a client system;said server proxy client determining the proper server to service said client request;sending said client request to said proper server;receiving said proper server's response to said client request; andsending presentation and logic component updates to said client system;wherein said server proxy client acts as a proxy client for said client system, performing the bulk of data processing for said client system;wherein said server proxy client, upon receipt of a request for specific up to date presentation components from a client system, checks if the client system's original presentation components and/or executable bytecodes have expired;wherein said server proxy client updates said client system with raw data, said presentation, and said logic components using a universal data format;wherein said server proxy client separates raw data and presentation components of said response and places said raw data component into said universal data format, wherein said raw data and said presentation components are sent independently by said server proxy client to said client system;sending said raw data component to said client system;wherein said server proxy client receives presentation and logic component updates for said client system;wherein said presentation component updates are for a specific client device type;wherein said logic component updates comprise updates to a common code base that is shared between different client device types and which enables said server proxy client to control a feature set of said client system independently of an implementation supplied by native client code and without modifying said native client code;wherein said client system reuses at least a portion of said raw data component for other display purposes; andsaving state information on said client. 23. The apparatus of claim 22, further comprising: a one-behind cache on said client system;wherein said client system checks said one-behind cache for any presentation or logic components relating to a user's request;wherein if any components relating to a user's request exist in said one-behind cache, said client system checks if said components existing in said one-behind cache have expired;wherein said client system uses said components existing in said one-behind cache to service the user's request. 24. The apparatus of claim 23, wherein if said components existing in said one-behind cache have expired, said client system requests any current versions of the expired components from said server proxy client, wherein said server proxy client checks the current version of a requesting client's presentation and logic components; if any of the presentation and logic components require updating, then said server proxy client retrieves the latest version of any of the presentation and logic components and sends it to the requesting client, and wherein the requesting client stores the latest version of any of the presentation and logic components in said one-behind cache. 25. The apparatus of claim 22, further comprising: sending said presentation and logic component updates to a client system. 26. The apparatus of claim 22, wherein said client system uses said raw data and presentation components to create displays to a user. 27. The apparatus of claim 22, further comprising: said server proxy client for saving a client system's state; andwherein the saved client system's state allows said server proxy client to continue a client system's session when the client system changes connection methods to or loses coverage with said server proxy client. 28. The apparatus of claim 22, further comprising: a scripting language;wherein said logic component updates are written in said scripting language;wherein said server proxy client compiles scripts written in said scripting language into executable bytecodes;wherein said server proxy client updates said client system's features by sending said client system said executable bytecodes; andwherein said client system executes said executable bytecodes in response to a user's input. 29. The apparatus of claim 28, wherein a client system's presentation component is controlled using said scripting language. 30. The apparatus of claim 22, wherein communication between said server proxy client and said client system is via a binary encoding of an XML data stream. 31. An apparatus for dynamically configuring client systems, comprising: a host server;a scripting language;wherein said ,host server compiles scripts written in said scripting language into executable bytecodes;wherein said host server, upon receipt of a request for specific up to date presentation components and/or executable bytecodes from a client system, checks if the client system's original presentation components and/or executable bytecodes have expired, wherein said host server separates response data into one or more raw data components, logic components, and presentation components and places said one or more raw data components into said universal data format;wherein only required elements of said client system in terms of: said one or more raw data components;said one or more logic components; andsaid one or more presentation components are sent independently by said server proxy client to said client system if the original presentation components and/or executable bytecodes on the client system have expired;wherein logic component updates comprise updates to a common code base that is shared between different client device types and which enables said server proxy client to control a feature set of said client system independently of an implementation supplied by native client code and without modifying said native client code;said apparatus further comprising a virtual machine on said client for interfacing at least said one or more logic components with said client system;wherein a client system executes presentation components and/or executable bytecodes in response to a user's input;wherein said client system maintains state information; andwherein said client system reuses at least a portion of said one or more raw data components for other display purposes. 32. The apparatus of claim 31, wherein said scripts define program logic. 33. The apparatus of claim 31, wherein said scripts create and control user interface displays. 34. The apparatus of claim 31, wherein said client system receives requested network information from said host server separated into raw data and presentation components. 35. A framework system for a handheld client device comprising: a client-side framework;a server/proxy client for controlling and modifying behavior of said client without having to update client code and for unifying communication with said client to a single protocol; anda programming language for creating a device-specific application by adapting abstract representations of presentation and system objects within said framework to interface with a native operating system of said handheld client device;wherein said server/proxy client, upon receipt of a request for specific up to date presentation components from a client system, checks if the client system's original presentation components and/or executable bytecodes have expired;wherein said server proxy client updates said client system with raw data, presentation, and logic components, the raw data component comprising data retrieved from a server by said server proxy client in response to a client request, using a universal data format;wherein said server proxy client separates raw data and presentation components of said response and places said raw data component into said universal data format,wherein said raw data and said presentation components are sent independently by said server proxy client to said client system;wherein said server proxy client receives presentation and logic component updates for said client system; andwherein said presentation component updates are for a specific client device type;wherein said logic component updates comprise updates to a common code base that is shared between different client device types and which enables said server proxy client to control a feature set of said client system independently of an implementation supplied by native client code and without modifying said native client code; andwherein said client system reuses at least a portion of said raw data for other display purposes. 36. The system of claim 35, wherein said server/proxy client comprises: a proxy system module;a protocol handler interpreting request messages from said client;a content storage device; andmaintaining current state of a session between said client and a host system. 37. The system of claim 36, wherein said client session is persistent so that it can freely transition from one connectivity medium to another without losing state. 38. The system of claim 35, wherein said client-side framework comprises: a presentation object layer;an object layer;an object runtime layer;an abstraction layer; anda bootstrap application layer. 39. The system of claim 38, wherein said bootstrap application layer comprises a native implementation of a kernel of said framework, said native implementation comprising a plurality of functions that bond said framework with a native operating system of said client device to handle device-specific issues and implement at least a portion of a user experience by deriving classes from said presentation layer. 40. The system of claim 38, where said abstraction layer comprises: a transport abstraction for exchanging data with at least one host; anda storage abstraction for managing caching and persistent storage. 41. The system of claim 38, wherein said object runtime layer comprises implementation of at least one abstract representation of a presentation object, wherein implementation of said at least one abstract representation of said presentation object comprises registering said at least one abstract representation with said object runtime layer. 42. The system of claim 38, wherein said object layer comprises: Nachos objects comprising user interface objects; andsystem objects comprising utility functions. 43. The system of claim 38, wherein said presentation object layer comprises a plurality of presentation objects, each presentation object in said presentation object layer comprising an abstract representation of said each presentation object. 44. The system of claim 35, further comprising a module for maintaining state information on said handheld client device. 45. The system of claim 35, wherein at least a portion of said framework is stored in re-writable storage.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.