Method and apparatus for communicating information between a...

Electrical computers and digital processing systems: multicomput – Distributed data processing – Client/server

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C719S311000

Reexamination Certificate

active

06766351

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to data processing. The invention relates more specifically to methods and apparatus for communicating information and carrying out other interactions between a browser and an application program.
BACKGROUND OF THE INVENTION
Specialized computer programs called browsers are now widely used in networked computer systems for the purpose of retrieving and interacting with information stored in servers. A browser is a computer program specifically designed to help users view and navigate hypertext, on-line documentation, or a database. The term “browser” most often refers to a computer program designed to permit a user to view and interact with hypertext information, such as pages and programs written in the Hypertext Markup Language (HTML) that is communicated using the Hypertext Transfer Protocol (HTTP).
FIG. 1
is a block diagram showing a client-server system, in which client
100
communicates over a network
104
with server
106
. Client
100
executes a browser
102
. Server
106
executes application
108
, which has access to one or more stored electronic documents
110
.
In this configuration, browser
102
may establish a connection through network
104
to application
108
. For example, browser
102
opens an HTTP connection through network
104
to an HTTP server running on server
106
, or an HTTP daemon of application
108
. Under control of client
100
, browser
102
issues a request that specifies one or more of the documents
110
using a document identifier, such as a Universal Resource Locator (URL). Server
106
receives the request, parses it, retrieves the specified document from among documents
110
, and sends a copy of the document in a response to browser
102
. Browser
102
receives the document, parses coded instructions within the document, e.g., HTML source code, and displays the contents of the document at client
100
according to the coded instructions contained in the document.
Browsers can be configured as stand-alone computer programs or as processes that can be called from within another application program. Examples of stand-alone browsers are NCSA Mosaic, Netscape Communicator®, and Microsoft Internet Explorer®. Netscape Communicator and Microsoft Internet Explorer also are available in the form of executables that can be called from within an application program.
Browsers also have numerous graphical user interface display capabilities, communications functions, and security functions. For example, the HTML 3.0 standard defines various graphical user interface elements (“widgets”) that a browser can automatically create and display when an HTML source document contains a particular type of command. However, there is presently no way for a separate application program, at the client or at a separate server, to selectively invoke such capabilities and functions without sending an HTML document to the browser for standard processing. There is a need for a mechanism whereby an application can invoke a particular function of the browser, and the browser can obtain data values from the application that are needed for proper or successful execution of the function that is invoked.
In conventional approaches, a browser is invoked from within an application program in order to load a page based on a standard protocol such as HTTP, file transfer protocol (FTP), etc. In the current approach, the application can pass output to the browser only by creating and passing a URL to the browser that defines a particular static page on a particular server, or a script and parameters for use by the script. An HTTP server or an application that is addressed by the browser then generates an output page and instructs the browser to load it. However, this approach has many disadvantages and drawbacks.
For example, HTTP and FTP are cumbersome to use for certain kinds of interactions between an application and a browser. CGI scripts or other mechanisms have to be used in order to request application functions and pass variable values or references using HTTP. The lists of parameters and values that appear in the scripts are complicated and must be carefully constructed and concatenated to assure proper operation.
The HTTP approaches require, to at least some extent, the HTTP protocol to carry out functions for which it was not designed. The scripts and other parameter passing mechanisms are grafted onto HTTP and are functional, but they are not elegant and have definite limitations. There is a need for a new protocol or an improved protocol that is intended for and designed from the ground up to handle communications between a browser and an application or server.
Moreover, using the traditional protocols, the browser cannot easily obtain information that it may need from the application while the application is running. There is no convenient way to obtain, for example, the value of a single variable that is maintained by a Web application.
Based on the foregoing, there is a clear need in this field for a mechanism that enables a browser to directly access functions and data that are maintained by an application executed remotely or separately from the browser.
Other needs and objects will become apparent from the following description.
SUMMARY OF THE INVENTION
The foregoing needs and objects, and other needs and objects that will become apparent from the following description, are achieved by the present invention, which comprises, in one aspect, a method for communicating information and carrying out other interactions between a browser and an application program. A hyperaction protocol is defined that enables a browser to directly call functions of an application program executed by a separate server over a public network. In one embodiment, in the course of parsing and displaying an HTML document or other HTML source text, a browser encounters or receives a hyperaction request of the form “hyperaction://<ApplicationAction>#<Payload>.” In response, the browser identifies a function or other action of a separate application. The browser calls that function of the application over the network and provides the payload. When a response is received, the browser extracts data values or function results provided by the application. As a result, a browser can directly interact with an application without using scripts or other awkward mechanisms of existing protocols.
In a specific embodiment, the invention encompasses a method of causing an application program to carry out function thereof upon request by a separate client, comprising the computer-implemented steps of receiving , at the client, a request to invoke a program action that is identified in the request; determining the function of the application program to invoke based on the program action identified in the request; communicating a message to the application program that requests the application program to carry out the function; receiving result information from the application program as a result of the application program carrying out the requested function; using the result information at the client.
One feature of this aspect is that the step of determining comprises the steps of mapping an identifier of the action in the request to a name of the action that is used by the application program. Another feature is that the step of receiving a request involves identifying, at the browser, a request to carry out the function of the application program, wherein the request substantially conforms to the format “hyperaction://<Application Action>#<Payload>, wherein “hyperaction” identifies a hyperaction protocol, “Application Action” identifies the function of the application program, and “Payload” comprises one or more data identifiers that specify data for use by the application program in carrying out the function.
According to another feature, receiving a request involves identifying, in a portion of HTML source code that is received at the browser for interpretation and display, a request to carry out the function

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and apparatus for communicating information between a... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for communicating information between a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for communicating information between a... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3229452

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.