5,887,133 System and method for modifying documents sent over a communications network
United States Patent 5,887,133
Brown , et al. March 23, 1999
System and method for modifying documents sent over a communications network
Abstract
A system and method applied to a communications network which transmits document portions in which an original document portion having an identifier portion and an information portion is replaced or swapped with a substitute document portion. The system has a controller, typically a proxy server, for reading the identifier portion of the original document portion, determining the information portion of the original document portion, and issuing a swap order when an undesired original document portion is found. A substitute document server receives the swap order and sends the substitute document portion to the controller. A swapping device or mechanism inserts the substitute document portion in place of the original document portion and the substitute document portion is passed on to the user set and displayed. The controller and swapping mechanism can be integrated with the user set or with the resources of the service provider and their functionality can reside in software.
Inventors: Brown; Stephen J. (Mountain View, CA), Othmer; Konstantin (Mountain View, CA)
Assignee: Health Hero Network (Mountain View, CA)
Appl. No.: 08/784,270
Filed: January 15, 1997
Current U.S. Class: 709/200 ; 709/206; 715/540; 715/911
Current International Class: G06Q 30/00 (20060101); G06F 013/38 (); G06F 015/17 ()
Field of Search: 395/200.33,200.36,200.47,200.48,200.3 707/203,500,511,501,515,911,540
References Cited [Referenced By]
U.S. Patent Documents
5710918 January 1998 Lagarde et al.
5749083 May 1998 Koda et al.
5787295 July 1998 Nakao
5794251 August 1998 Watanabe et al.
5799318 August 1998 Cardinal et al.
5802534 September 1998 Hatayama et al.
5806057 September 1998 Gormley et al.
Other References
Newsbytes, pNEW10040041, “AdOptimizer–Ad Management Software For Websites”, Oct. 4, 1996. .
The Seybold Report on Desktop Publishing, v10 n12 p. 24(1), “New horizons teams with Duke, Real Media”, Aug. 12, 1996. .
Hutheesing, Nikhil, Forbes, v157 n10 p. 288(1), “An on-line gamble”, May 20, 1996. .
Jones, Chris, InfoWorld, v18 n18 p. 48(1), “Microsoft readies DocObject; technology will allow document editing in Web browsers”, Apr. 29, 1996. .
Marx, Wendy, InformationWeek, n576 p. 61(2), “More than just the Scores: ESPNET SportsZone is a model for extaneding brand names online”, Apr. 22, 1996..
Primary Examiner: Rinehart; Mark H.
Assistant Examiner: Thompson; Marc D.
Attorney, Agent or Firm: Lumen Intellectual Property Services
Claims
We claim:
1. A system for modifying an original document to produce a modified document in a communications network for transmitting document portions, said original document comprising original document portions each having an identifier portion and an information portion, said system comprising:
a) a plurality of content providers for transmitting said document portions in said communications network;
b) a service provider for relaying said document portions to a network user;
c) a user set for displaying said document portions to said network user;
d) a controller for parsing said original document to locate said identifier portion of each of said original document portions, determining said information portion of each of said original document portions to identify an undesired original document portion and issuing a swap order when said undesired original document portion is found;
e) a substitute document server for receiving said swap order and for sending a substitute document portion to said controller; and
f) a swapping means for inserting said substitute document portion in place of said undesired original document portions to obtain said modified document.
2. The system of claim 1 wherein said undesired original document portion has an undesired content.
3. The system of claim 1 wherein said controller is located on the premises of said user.
4. The system of claim 3 wherein said controller is integrated with said user set.
5. The system of claim 3 wherein said swapping means is integrated with said controller.
6. The system of claim 1 wherein said controller is located on the premises of said service provider.
7. The system of claim 6 wherein said swapping means is integrated with said controller.
8. The system of claim 1 wherein said controller is a proxy server.
9. The system of claim 1 wherein said identifier portion comprises a network address and said information portion is determined based on said network address.
10. The system of claim 9 wherein said controller further comprises a list of addresses of said content providers and said network address is compared with said list of addresses to determine said information portion.
11. The system of claim 1 wherein said identifier portion comprises a description of said information portion.
12. The system of claim 1 wherein said controller further comprises means for matching the dimensions of said substitute document portion with the dimensions of said original document portion.
13. The system of claim 1 further comprising a user profile bank for delivering user profile information about said network user to said controller.
14. The system of claim 13 wherein said controller determines said swap order based on said user profile information.
15. The system of claim 1 wherein said communications network is the Internet.
16. The system of claim 1 wherein said user set is a computer.
17. The system of claim 1 wherein said user set is a television set.
18. A method for modifying an original document to produce a modified document in a communications network for transmitting document portions, said original document comprising original document portions each having an identifier portion and an information portion, said communications network having a plurality of content providers for transmitting said document portions in said communications network and a service provider for relaying said document portions to a network user equipped with a user set for displaying said document portions, said method comprising the following steps:
a) parsing said original document to locate said identifier portion of each of said original document portions;
b) determining said information portion of each of said original document portions to identify an undesired original document portion;
c) issuing a swap order when said undesired original document portion is found and sending said swap order to a substitute document portion server;
d) receiving said swap order in said substitute document server and sending said substitute document portion to a controller; and
e) inserting said substitute document portion in place of said undesired original document portion with a swapping means thereby producing said modified document.
19. The method of claim 18 wherein said undesired original document portion has an undesired content.
20. The method of claim 18 wherein said steps of determining said identifier portion, identifying said undesired original document portion and issuing said swap order are all performed by said controller.
21. The method of claim 20 wherein said controller is located on the premises of said user.
22. The method of claim 20 wherein said controller is located on the premises of said service provider.
23. The method of claim 20 wherein said controller is a proxy server.
24. The method of claim 18 wherein said identifier portion comprises a network address and said information portion is determined by comparing said network address with a list of network addresses of said content providers.
25. The method of claim 24 wherein said list of network addresses is stored in said controller.
26. The method of claim 18 further comprising the step of matching the dimensions of said substitute document portion with the dimensions of said original document portion.
27. The method of claim 18 further comprising the steps of delivering user profile information about said network user to said controller, and applying said user profile information in selecting said substitute document portion.
28. The method of claim 18 wherein said communications network is the Internet.
29. The method of claim 18 wherein said user set is a computer.
30. The method of claim 18 wherein said user set is a television set.
Description
BACKGROUND
1. Field of the Invention
The present invention relates generally to modifying documents sent over a communications network, and in particular to a system and method for determining the information contents of document portions and replacing undesired document portions with substitute document portions or inserting substitute document portions.
2. Description of Prior Art
To a large degree, the information age has been brought about by rapid advances in the field of communications and communications networks in particular. Increasingly, information which could formerly be presented in tangible, permanent media is reformatted and rendered for display on screens and monitors. Virtually any information presentable as text or text and graphics is being converted into suitable electronic messages or packets for shuttling across a communications network.
A communications network, e.g., the Internet, has an architecture in which information packets from resources or content providers is made available through service providers to users who subscribe to the service. The actual transmission takes place over the communication links of various bandwidths and types which make up the network. Content providers typically store this electronic data on server machines connected directly to the Internet in standard format. The data is broken down into packets and these are then transmitted over the communication link. Among the diverse types of information which may be placed on the Internet in this way are articles, news briefs and updates, weather maps, books, summaries, files, software, catalogues, documents, pictorials, video files, public records, commercial literature and so forth.
Clearly, the number of packets which can be transmitted via a communications network is vast and varied. To aid in sorting, routing and transmitting information on the Internet the content of any given packet is usually identified by its origin (address of the content provider), a brief summary located in a conspicuous portion of the packet (e.g., in the header) or some other identification information. For example, the Internetwork Packet Exchange (IPX) protocol followed by NetWare routers, distributed by Novell, Inc., execute a so-called Routing Information Protocol (RIP) and Service Advertising Protocol (SAP). The RIP protocol involves periodic RIP broadcast packets containing all routing information known to the router. These packets are used to keep the global network synchronized. In addition, the protocol provides for periodically sending SAP broadcast packets containing all server information known to the SAP agent. Thus, the network system keeps track of the contents of the various packets to facilitate transfer, mitigate traffic problems and perform other vital operations.
In U.S. Pat. No. 5,530,852 issued to Meske, Jr. et al. the inventors disclose a method and system for receiving information in a first file written in a first markup language and identifying the information contents. The method and system ensure that even complex packets of information are processed by generating a list of profiles and topics for each list of the profiles. Secondary and tertiary files are created with anchors referencing particular information in the first file. A parsing procedure is taught by Meske to ascertain whether any information in the first file (original packet) is relevant. If so, fourth and fifth files containing the desired information are created and sent to the user.
Meske’s system and method can be adapted to block or filter entire packets or portions thereof on a content-basis before performing the necessary steps to display the information–usually in the form of a page–on the user’s screen. The document is later parsed to extract the profile and build additional pages to catalog and access the information. This method for building a knowledge base with embedded content profiles and in a document is useful but limited to processing the received information only.
The above-mentioned IPX protocol and similar methods which determine the information contents of packets and use them in the routing process can be employed to control the transfer of packets. For example, U.S. Pat. No. 5,541,911 issued to Nilakantan et al. discloses a remote smart filtering communication management system which uses the information contents data to alleviate network traffic problems.
In particular, Nilakantan controls the traffic across a communication link between a remote network and a central device by applying forwarding rules. The resources monitor the characteristics of the forwarded data packets received across the communication link to learn characteristics of the users of the remote network. In response to the learned characteristics, the resources generate link management messages and forward these to the remote interface. The remote link management resources in the remote interface are responsive to the link management messages and tailor the forwarding rules to the user characteristics. The packets can now be filtered or blocked based on user characteristics.
The use of selective blocking and filtering of packets by Nilakantan et al. is applied to ultimately reduce network traffic. The invention is centered around sending management messages which are then used to optimize packet traffic across given links in the network. In other words, the problem addressed by this invention is the high volume caused by the proliferation of packets on the network.
Blocking and filtering of packets or their parts can be employed to speed up the page rendering process on the user’s screen. For example, blocking functions may restrict packets from a list of providers or an entire block of providers from ever being sent to the user. This feature allows one to prevent undesired packets (e.g., packets containing adult material) from being sent to the user and rendered on his or her screen. Filters can be preset to chose packets based on the time they require for rendering or in accordance with other user-specified standards (e.g., information contents). Proper application of these two functions results in an optimized and personalized page rendering procedure.
In the most common practical scenario, however, a network user sends a direct request for an entire document from a terminal located on his or her premises to the service provider. The provider verifies whether the document is already stored in local memory and, if not, obtains this document from the content provider. While the user’s request is processed the service provider usually passes on to the user a number of unsolicited document portions, e.g., document portions from other service providers such as advertisement servers. Thus, the subscriber receives, in addition to the requested document(s), numerous other document portions of varying degrees of interest or importance to him or her. When the page is rendered on the user’s screen these embedded document portions are displayed as a part of the document.
Under these circumstances, what is needed is a system and method for modifying or substituting undesired document portions rather than performing blocking and filtering functions on the packet level. For example, the service provider, the user or another party may wish to exchange or modify a document being sent to the user. This situation may occur when the service provider wishes to enclose vital information with the document requested by the user. The use of the bandwidth allocated to a less important document portion, hence a document portion swap, would be highly appropriate for this purpose. In another situation, the user may wish to block undesired document portions. For instance, when recording television programming on the VCR recorder the user can selectively block advertising material from being recorded. Analogously, when rendering a web page the user may wish to omit specific document portions from being rendered on the page.
At the present time the problems associated with this type of document modification have not been addressed, much less solved. Consequently, what is needed is a system and method which solves the problems associated with document modification based on the information contents in a communications network such as the Internet.
OBJECTS AND ADVANTAGES OF THE INVENTION
In view of the above, it is an object of the present invention to provide a system and a method for modifying documents, and specifically for replacing an original document portion with a substitute document portion or inserting a substitute document portion in a communications network, where the replacement decision is made based on the information content of the original document portion.
It is another object of the invention to perform this exchange operation in an efficient manner in a convenient part of the network and to allow the network user to decide which document portions should be exchanged.
Yet another object of the invention is to perform the document modification according to decisions derived from the service provider.
Still another object of the invention is the ensure that the system and method of invention can be integrated in any communications network in which content providers, service providers and users are connected via communication links (e.g., the Internet).
These and other objects and advantages will become more apparent after consideration of the ensuing description and the accompanying drawings.
SUMMARY OF THE INVENTION
The objects and advantages of the invention are ensured by a system and method applied to a communications network which transmits information in the form of documents or rather document portions, e.g., the Internet. An original document is modified to produce a modified document based on the original document portions and, specifically, based on an identifier portion and an information portion of each original document portion. A substitute document portion is inserted in the place of each undesired original document portion. The system according to the invention provides for a number of content providers whose servers transmit documents or document portions on the network. Service providers relay these document portions to a given network user, who displays them on a user set, e.g., a computer or a television set.
The system has a controller, typically a proxy server, for parsing the original document to locate the identifier portion of each of the original document portions, determining the information portion of each original document portion to identify the undesired original document portion, i.e., an original document portion which has an undesired content, and issuing a swap order the undesired original document portion is found. For instance, the undesired content may be an advertisement or a message not relevant to the information which the user desires to view on his or her user set.
A substitute document server receives the swap order and sends the substitute document portion to the controller. A swapping device or mechanism inserts the substitute document portion in place of the undesired original document portion. At this point the substitute document portion can be passed on to the user set and displayed. Depending on the communications network and user preferences, the actual display set can be a computer, a television set, or any other suitable end terminal with a display screen.
In one version of the system according to the invention the controller is located on the premises of the user, i.e., at the user’s residence or at his or her work place. Advantageously, in this embodiment the controller can be integrated with the user set. It is also possible to integrate the swapping mechanism with the controller. Of course, the controller can also be located on the premises of the service provider and be integrated with the swapping mechanism there. In this situation the role of the controller and swapping mechanism can be most efficiently performed by the proxy server.
The identifier portion of any original document portion can be as simple as a network address. In general, this will be the network address of the content provider who placed the document portion on the network. (Address-based identification is one of the most common ways of identifying document portions.) The content of the information portion can be easily determined as desired or undesired from the provider’s address. For this purpose, the controller should have in its memory or some other accessible storage resources a list of network addresses of content providers. In another embodiment the identifier portion will have a brief description or designation of what is contained in the information portion. Such identifier portion will generally consist of any number of signs and/or characters (usually abbreviations).
In a preferred embodiment the controller has a device or mechanism for matching the dimensions of the substitute document portion with the dimensions of the original document portion being replaced, i.e., the undesired original document portion. This provision ensures that the swapped information will be of appropriate size when rendered on the user’s screen, thus preserving the page layout which would have been obtained without swapping.
A further embodiment adds to the system a user profile bank. The bank has user profile information, e.g., statistical information, personal preferences or any other information either compiled or gathered directly from the user. The profile information is delivered to the controller such that the swap order can be issued based on the user’s preferences to tailor the substitute document portions to the user’s needs or other relevant profile information.
The system of the invention can be used in any communications network having the general architecture described. As mentioned above, the Internet is well-suited for the system of the invention. The method of swapping undesired original document portions with substitute document portions is practiced in communications network exhibiting the same architecture as required for the system.
A detailed description of the system and method of the invention are set forth below in reference to the drawing figures.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of one embodiment of the system of invention.
FIG. 2 is a diagram of a document portion.
FIG. 3 is a block diagram of another embodiment of the system of invention.
FIG. 4 is an example screen display on a user’s set.
FIG. 5 is a diagrammatic representation of an original document portion and a substitute document portion.
FIG. 6 is a flow diagram showing how a swap order is issued.
FIG. 7 is a flow diagram showing how a swap order is issued when profile bank information is available.
FIG. 8 is a diagram illustrating typical placement of undesired original document portions on a page.
FIG. 9 is a diagram illustrating the replacement of undesired original document portions with specified substitute document portions.
DETAILED DESCRIPTION
An advantageous embodiment of the invention is illustrated in the block diagram of FIG. 1. A document modification or swapping system 10 possessing the necessary architecture to practice the invention is built around a communications network 12. The individual links and resources of network 12 are not shown, but are generally known to include couplings, high and low bandwidth links, filters, power sources, repeaters, transformers, up- and down-converters, amplifiers and any number of other equipment required to efficiently transmit information across large physical distances. Network 12 may be a stand-alone network or one which takes advantage of existing connections and resources, e.g., telephone lines. In the preferred embodiment network 12 is simply the Internet.
Two content providers 14, 16 are connected to network 12 via communication links 18 and 20 respectively. Any suitable medium of sufficient bandwidth to transmit the required information to and from network 12 can be used as links 18, 20. Content providers 14, 16 are servers equipped with the necessary resources to transmit and receive information, specifically requests or queries for the contents of their data banks (not shown). Typically, content providers 14, 16 have information such as articles, news briefs and updates, weather maps, books, summaries, files, software, catalogues, documents, pictorials, video files, public records, commercial literature and so forth.
Provider 14 is an independent server, while provider 16 is a part of a larger resource 22 including an advertisement server 24 (hereafter “ad server”). Although it is understood that either provider 14 or 16 may place on network 12 various types of information, e.g., requested files, non-requested information, undesired information and advertising material, the distinction between ad server 24 and provider 16 is useful for better illustrating the operation of system 10. Thus, in the present embodiment it will be assumed that ad server 24 places, via provider 16, on network 12 unsolicited information, i.e., commercials and advertisements, while provider 16 delivers requested and/or desired information.
System 10 also has dedicated ad servers 26 and 28 which deliver to network 12 via communication links 30 and 32 commercials and advertisements in the broadest sense.
A substitute document server 34 is connected with network 12 by communication link 36. Server 34 contains information which is not requested or solicited but is desirable or useful. For example, server 34 may contain health-related information, warnings, general advisories and many other types of information.
The different types of information placed on network 12 by providers 14, 16, ad servers 24, 26, 28 and substitute document server 34 are formatted in documents or document portions such as document portion 40 shown in FIG. 2. It is understood that the fundamental building blocks of document portion 40 are information packets (not shown). Although the detailed structure of document portion 40 will be adapted to network 12 each document portion 40 has the same general make-up. A header or an identifier portion 42 generally precedes an information portion 44 with the actual information content. In some cases a footer 46 may be provided to designate the end of document portion 40. Frequently, identifier portion 42 is simply the network address of the server which placed document portion 40 on network 12. Alternatively, identifier portion 42 contains a designation or identification of the information contained in portion 44. Examples of different forms which identifier portion 42 can assume when network 12 is the Internet are discussed below.
A service provider 50 is in communication with network 12 via communication link 52. Typically, service provider 50 will have numerous lines 54 connecting directly to the subscribers or network users. In particular, line 54A establishes a link between service provider 50 and a user set 56 on user premises 58. When network 12 is the Internet user set 56 is a computer or a network unit. Other devices such as television sets or display devices capable of receiving and/or sending document portion 40 can be used as well. A person of average skill in the art will be able to ensure a suitable connection of user set 56 with service provider 50.
A controller 60 is switched between user set 56 and service provider 50. Controller 60 is capable of reading identifier portion 42 of a document portion 40 to determine the content of information portion 44. A swapping device 62, preferably integrated with controller 60 as shown, is also provided to receive a swap order which controller 60 issues when information portion 42 of a packet 40 has an undesirable content.
The operation of system 10 is now described for the case in which network 12 is the Internet. As an example, FIG. 4 shows a screen display or a page 70 on user set 56. Page 70 is actually constructed from a number of original document portions analogous in all respects to document portion 40. The below listing identifies how the page is rendered from original document portions A, B, C, D and E. The formats used conform to the widely accepted and well-known hyper-text mark-up language (HTML).
Example page
HTML for document portion A
Friday December 6 1:59 PM EST
______________________________________
Technology Summary
Headlines
- Free Market Approach For Internet Urged
- Inte rnet Industry Officials Skeptical of Copyright Rules
- U.S. To Push Telecommunications Aims At WTO
- NTT To Be Restructured But Plan Draws Fire
- Gl obal Competitors Have Little To Fear In NTT
- Countries And Companies Slow To Defuse Millennium Bomb
- U.S. Consumer PC Holiday Sales Off To Slow Start
- Internet Said Creating Confusing Tax Burden
- Creat ive Partners U.S. Technology Firms