1. Field of the Invention
The present invention relates to a message transmission scheme and a page processing scheme to be used in a system for processing a hypermedia document formed by electronic text and links pointing to that text, and a client device, a server device, and a relay server device for realizing these message transmission scheme and page processing scheme.
2. Description of the Background Art
The hypermedia is a technique which provides means for flexibly accessing multifarious information by relating multimedia data, including such data as text, video, static image, figure, and speech data, through links. A hypermedia document is a multimedia document provided by using this hypermedia technique.
A device which stores and provides a hypermedia document is called server, while a device for acquiring and displaying a hypermedia document is called client.
Now, with reference to FIG. 1, a principle of the hypermedia technique will be described.
FIG. 1 shows three "pages" (page-1 19-1, page-2 19-2 and page-3 19-3) where a "page" is a unit of information provided by the hypermedia technique. Within each page, various information such as text and images are described, and in addition, an "anchor" (such as anchor-1 19-4 and anchor-2 19-5) for pointing to a related information page is embedded. For this reason, by using the anchor-1, for example, it is possible to acquire the page-2 from the page-1.
In order to comprehend a relation, it is often regarded as having a "link" (such as link-A 19-6 and link-B 19-7) which is virtually set up from the anchor-1 to the page-2. A user can acquire the relation information of the page-2 by tracing the link-A from the anchor-1 in the page-1. In addition, a user can also acquire the page-3 by tracing the link-B from the anchor-2 in the page-2. Here, a uniquely defined identifier is used for each page, so that a page can be specified from an anchor without a failure. A processing to search information by tracing links in this manner is called navigation.
As a page identifier for identifying a page and a server identifier for identifying a server which stores that page, the following two schemes are possible.
(1) A page identifier is defined as an information which can identify that page within a network. In this case, a page identifier can be given by a host name which can identify a server which stores that page, and a file, name or (directory name+file name) of that page, for example. PA1 (2) A page identifier is defined as an information which can identify that page within a server which stores that page. Also, a server identifier is defined as an information which can identify that server within a network. Consequently, each page can be identified within a network by a pair of a server identifier and a page identifier. PA1 transmitting from said one client device a request message requesting a second page of the hypermedia documents to be referred from the first page to a request target server which stores the second page, the request message including a request page information which contains a request page identifier for identifying the second page in the system and a request target server identifier for identifying the request target server in the system; transferring at the relay server device a page message for the first page from said one server device to said one client device, the page message including a source page information which contains a source server identifier for identifying said one server device in the system and a source page identifier for identifying the first page in the system; transferring at the relay server device the request message from said one client device to said one server device; generating at the relay server device a source information message including a source information which contains the source server identifier and the source page identifier obtained from the page message, and the request page identifier and the request target server identifier obtained from the request message; transmitting the source information message from the relay server device to said one server device; receiving the source information message from the relay server device at said one server device; and carrying out a prescribed processing according to the source information in the source information message at said one server device.
In the following description, a page identifier and a server identifier as defined in the above scheme (2) will be used, but (server identifier+page identifier) appearing in the following description can be considered as an equivalent of a page identifier in the above scheme (1).
Note that it is also possible to consider a case in which a server identifier alone is set up as a link pointed by an anchor while a default page identifier is set up at the server side, but in such a case, a page identifier corresponding to an anchor is set to be null.
Now, some terminologies which will be used throughout the present specification will be defined.
A "source page" is defined as a page which contains an anchor for generating a page request.
A "source server" is defined as a server which stores the source page.
A "source information" is defined as an information which contains at least an identifier of the source page and an identifier of the source server.
A "request page" is defined as a page which is requested to be acquired and displayed next.
A "request page information" is defined as an information which contains an identifier of the server which stores the request page, and an identifier of the request page.
Now, with reference to FIG. 2, examples of a conventional server and a conventional client will be described.
A server 1-1 has a reception unit 1-2 for receiving a page request (request message), a page memory unit 1-3 for storing hypermedia documents, a request processing unit 1-4 for reading out a necessary page from the page memory unit 1-3 according to a received page request, and a transmission unit 1-5 for transmitting a read out page to a request source.
A client 1-11 has a reception unit 1-12 for receiving a page, a page interpretation unit 1-13 for interpreting a received page in order to display it while outputting an information on a link target page which is requested by an anchor selection command in a currently displayed page, a display unit 1-14 for displaying an interpreted page, an input unit 1-15 for receiving a page request from a user given by an anchor selection command, a request generation unit 1-16 for generating a page acquisition request containing an identifier of a server which stores a request page and an identifier of a request page according to a command from the input unit 1-15 and an information from the page interpretation unit 1-13, a transmission unit 1-17 for transmitting a request message produced from a page acquisition request and a source information, and a source information generation unit 1-18 for producing a source information containing an identifier of a source server which acquired a currently displayed page and an identifier of a current displayed page at a time of requesting a new page.
Note that, in general, as shown in FIG. 2, the server 1-1 and the client 1-11 are connected through a network 1-19, but there may be a case in which functions of both the server 1-1 and the client 1-11 are realized on an identical computer, as in a case of handling hypermedia documents provided on CD-ROM.
Next, with reference to FIG. 3, the operation for requesting a page and generating a source information in a system formed by the conventional server 1-1 and client 1-11 will be described.
At the client 1-11, while a page-A acquired from some server is currently displayed (2-1), when a command (2-2) for tracing an anchor-C on the page-A is entered from the input unit 1-15, the request generation unit 1-16 receives an information (2-3) on a page-B corresponding to the anchor-C from the page interpretation unit 1-13, and produces a page request (2-4).
On the other hand, the source information generation unit 1-18 receives an information (2-5) on a currently displayed page from the page interpretation unit 1-13, and produces a source information (2-6).
Then, the transmission unit 1-17 produces a request message (2-7) from the page request (2-4) and the source information (2-6), and transmits it through the network 1-19 to the server 1-1 which stores a request page.
At the server 1-1 which received this request message, a page request information (2-8) is sent to the request processing unit 1-4, and the page-B (2-9) is read out from the page memory unit 1-3 and transferred to the client 1-11.
When the page-B is successfully acquired from the server 1-1, after a prescribed processing such as interpreting and displaying of the acquired page is carried out, the client 1-11 is set in a state capable of receiving a next page request.
Now, in this server-client system, the source information contained in the received message (2-7) is an information concerning a page which is stored on the other server in general, and this source information has not been utilized effectively in the conventional system.
The prior art regarding the source information includes a reference field defined in Hypertext Transfer Protocol-HTTP/1.0 for specifying link relations in the World Wide Web, which is the worldwide distributed hypermedia.
Note however that this information is useful for a server but useless for a client, and defined as an option which may or may not be sent by a client side. Hypertext Transfer Protocol-HTTP/1.0 mentioned above is disclosed as the Internet Draft as of July, 1995.
Conventionally, the source information can be sent from the client to the request target server by attaching it to the page request, but this source information has not been transmitted to the source server which stores the source page. For this reason, it has been impossible for the source server to learn about a utilization frequency of an anchor in a page.
In addition, in a case where a reference target page is deleted, when an anchor which is referring to that page is traced, it causes an error as it is impossible to reach to that page within a prescribed period of time, so that there is a need to correct this anchor to point to a correct information. However, in the conventional system, no means for enabling the source server side to learn an occurrence of an error at the client has been provided.
In addition, as defined in HTTP/1.0 mentioned above, there is no guarantee that the source information is always produced by every client.
Thus, conventionally, there is no means for enabling the source server to learn the fact of a utilization of an anchor in each page, its utilization frequency, and its utilization result.